代码走读检查表模板
- 格式:xls
- 大小:27.00 KB
- 文档页数:234
程序规范执行情况检查表
以上是关于程序规范执行情况的检查表。
请根据具体情况填写
相应的执行情况。
注意:程序规范的执行情况检查是保证代码质量和可维护性的
重要步骤。
确保程序符合规范要求可以提高代码的可读性和重用性,减少错误和维护成本。
对于不符合规范要求的地方,需要及时进行
修正和改进。
请根据实际情况填写每个项目的执行情况,可以使用以下分类进行描述:
- 符合要求:表示该项目已经按照规范要求执行。
- 部分符合要求:表示该项目在某些地方符合要求,但还有一些需要改进的地方。
- 不符合要求:表示该项目未能按照规范要求执行。
需要修正和改进。
例如:。
代码走读检查列表Pre-review checklist 准备工作considerations 通常的考虑2.1Practical1.Have you been provided with a design document to understand the code ? Is the design documentup-to-date (latest version) ? 你是否得到一份解释代码的设计文档?设计文档是否最新的?2.Does the design document explain 设计文档是否做了如下解释:- program architecture ? 程序结构?- module breakup and functionality ? 模块是否已经完成和函数化?- task breakup ? 任务完成了吗?- each routine in pseudo-code form ? 每个函数都有伪代码?3.Has the code been compiled with strict warning and error checking enabled (-Wall and -Werroroptions); have all compilation warnings and errors been removed ? 代码是否已经被使用严格的告警和错误检查编译过?所有的编译告警和错误都已经修改?4.Has the code been compiled with a C++ compiler in addition to a C compiler ? 代码是否使用带C++特性的C编译器编译?2.2Program (product) architecture 程序结构1.Is the overall organization of the code clear, including a good architectural overview andjustification ? 所有代码的结构是否清晰,具有良好的结构外观和整齐?2.Are modules well defined, including their functionality and interfaces to other modules ? Is thetask/process breakup of the modules clear ? 所有的模块都定义得很好,包括函数和外部接口?任务/进程把模块分解清楚?3.Are all the functional requirements covered sensibly, by neither too few nor too many modules ?所有的功能需求都明显的覆盖,过多还是过少?4.Is the top-level design independent of the OS/environment which will be used ? 高层设计是否独立于OS/环境?5.Is the architecture designed to accommodate likely changes ? 结构设计是否能够满足变化?6.Does the architecture describe how reused code will be made to conform to other architecturalobjectives 体系结构是否描述了如何把代码重用到其他体系结构中?7.Does the whole architecture hang together conceptually ? 整个体系结构组合在一起,是否合理?8.Are all major data structures described and justified ? 所有主要的数据机构是否描述清楚和合理的9.Are data structures belonging to every module localised suitably so that they areaccessed/modified by well-defined access routines ? 模块中所有的数据结构是否都定义为局部的,并且通过定义好的函数进行访问?10.Is there a well-defined strategy to interface with external entities ? 是否为外部定义了良好的函数接口?11.Are all interfaces modularized so that changes will not affect the rest of the code ? 所有的接口是否模块化,因此他们的修改不影响其他代码?12.Are memory usage estimates and a strategy for memory management described and justified ? 内存使用方法和内存管理策略是否描述清楚和正确?13.Does the architecture set space and speed budgets for each module ? 体系构架是否对空间和速度都已经进行考虑?14.Is a strategy for handling data (strings) described and are storage estimates provided ? 是否提供了处理数据的策略?15.Is a coherent error handling strategy provided ? 是否具有同一的错误处理策略?16.Are error messages managed as a set to present a clean interface ? 是否把错误信息管理,作为一套清晰的函数接口提供?17.Are the motivations for the major decisions provided ?18.Are you (if you had to program/implement the system) comfortable with the architecture ? 你觉得这个体系结构舒服吗?3.Code Review Checklist for Standards 代码检查3.1 Directory organization 目录组织1.Are all file names less than or equal to 8.3 characters in length ? 所有的文件名是否小于或者等于8.3个字符?2.Are portable files identified as separate from core protocol files ? 可移植的文件是否和核心的协议文件分开?3.Is the file/module grouping clear ? 文件和模块是否分组清晰?organization 文件组织3.2File1.Does each file have a file header conforming to the standard convention ? 每个文件是否都有文件头和标准的习惯一致?(描述文件的用途,作者,对外提供的函数)2.Is each file organized in order - file header, type definitions, macros, prototypes, functions ? 每个文件都组织的有序-文件头,类型定义,宏,原型,函数?3.Are all lines within 80 characters in length ? 所有的代码行是否在80字符以内?4.Is each file less than or equal to 2000 lines in length ? 每个文件都小于2000行?5.Does each file hold code for one and only one module ? 每个文件是否只包含一个模块的代码?3.3Procedure organization / layout 函数组织1.Does each procedure have a header conforming to the standard convention ? 每个函数是否都有一个标准的函数头声明?2.Is the procedure organized - header, procedure name & parameters, procedure body ? 函数组织:头,函数名,参数,函数体3.Is the procedure defined in both ANSI format & otherwise using a __STDC__ compilation switch ?函数定义是否符合ANSI或者用标准C的编译开关?4.Does each procedure fit into a maximum of 2 printed pages (excluding the header) ? 每个函数都能够在最多2页纸可以打印。
测试检查表checklist输入、编辑功能的验证检查点:1. 必输项是否有红星标记,如果不输入提示是否跟相应的Label对应,提示的顺序是否跟Form输入域的排列次序一致;2. 输入的特殊字符是否能正确处理:`~!@#$%^&*()_+-={}[]|\:;”’ <>,./?;3. Form下拉菜单的值是否正确,下拉菜单的值通过维护后是否正确显示并可用;下拉菜单比如是机构编码,要到机构编码的维护界面查询一下是否Form列出的与其一致;4. 涉及到下拉菜单的编辑修改Form,要检查在编辑和修改From中,下拉菜单是否能正确显示当前值;5. Form提交后,要逐项检查输入的内容跟通过查询的结果一致;6. 有多层下拉菜单选择的情况要校验两层菜单的选择是否正确;7. 备注字段的超长检查;8. 提交保存后能否转到合适的页面;9. 编辑Form显示的数据是否跟该记录的实际数据一致;10. 编辑权限的检查,比如:user1的数据user2不能编辑等;11. 可编辑数据项的检查,比如:数据在正式提交之前所有的属性都可以编辑,在提交之后,编号、状态等不能编辑,要根据业务来检查是否符合需求;12. 对于保存有事务Transaction提交,比如一次提交对多表插入操作,要检查事务Transaction的处理,保证数据的完整和一致;13. 其他的合法性校验。
查询功能检查点:1. 查询输入Form是否正常工作,不输入数据是否查询到全部记录;2. 当查询的数据非常多的时候,性能有无问题;3. 查询的下拉菜单列出的数据是否正确;4. 查询结果是否正确;对于复杂的查询要通过SQL来检查结果;5. 如输入%*?等通配符是否会导致查询错误;6. 查询结果列表分页是否正确,在点击下一页上一页时,查询条件是否能带过去,不能点击翻页时又重新查询;7. 对于数据量比较大的表查询时,不容许无条件查询,避免性能问题的出现;8. 对于查询输入项的值是固定的要用下拉菜单,比如状态、类型等;9. 分页的统计数字是否正确,共X页,第N页,共X条记录等;10. 对于查询有统计的栏目,比如:总计、合计等要计算数据是否正确;11. 查询结果有超链接的情况要检查超链接是否正确;12. 查询权限的检查,比如:user1不能查询到user2的数据等;删除功能检查点:1. 必须有“确认删除”的提示;2. 根据需求检查是软删除还是硬删除,来检查数据库中是否还存在该条记录;3. 是否有相关的数据删除,如果有要确认该相关的数据也已经删除,并且在同一事务中完成;4. 是否有删除约束,如果有删除约束,要检查该记录是否被约束,如果被约束该记录不能被删除;5. 如果是软删除,用查询、统计界面检查该条记录能否被查询出来,数据是否被统计进去;6. 检查因为业务约束不能删除的数据能否被保护不能手工删除,比如:流程中已经审批的文件不能被删除;7. 跟删除相关的权限问题,比如:需求要求只有管理员和该记录的创建人能够删除该记录,那就以不同的用户和角色登录进去,执行删除操作,检查是否与需求匹配;上传附件检查点:1. 检查是否能正确上传附件文件;2. 检查上传的文件是否能正确下载并打开;3. 至少检查下列大小的文件能正确上传,0k,100k,1M,2M,4M,10M,20M等;4. 如果没有指定类型的限制,至少上传以下几种类型的文件能否正确上传并正确打开,类型有:.doc,.xls,.txt,.ppt,.htm,.gif,.jpg,.bmp,.tif,.avi等;5. 如果有文件类型的限制还要检查能上传的文件的类型;6. 上传同名的文件,在打开的时候是否出错;7. 有中文文件名的文件能否正确上传;影响操作性能的检查点:(不能代替系统的性能测试和压力测试,主要看系统在正常操作情况下的响应和处理能力)1. 对数据记录条数比较多的表的查询操作,避免全表查询,比如对银行用户账号的查询就不能缺省全部查出,必须让用户输入查询条件;2. 菜单树,测试大量数据时菜单树的响应情况;3. 有日志的查询或者统计,要注意查询的效率;4. 大报表的处理或者批处理的操作,要关注效率,比如:银行对帐、财务年终结算、财务年报表、系统初始化等;5. 大报表的排序sort、组函数的使用等;6. 大数据量的处理,如导入、导出、系统备份、文件传输等。
寄宿和走读情况调查表
学校名称:填表时间:
学校类型中心校本部()村完小()教学点()在校生数(人)
寄宿生情况
寄宿需求人
数
(人) 已寄宿人数
(人)
是否满足寄宿需
求(是/否)
乘坐周末
班车人数
(人)
寄宿年
级
4-6年级( )
3-6年级( )
1-6年级( )
寄宿条
件
一人一床( )
二人一床( )
大通铺( )
寄午生情况
学校是否提供寄午(是/否) 未提供
寄午原
因
没有寄午需求( )
无法提供寄午条件( )
需要寄午学生总
数
(人)
已寄午人数
(人)
走读生家校往返情况
走读生总数(人) 步行走读
人数
(人)
其中
步行单程
20分钟以内
(人)
步行单程
20-40分
钟
(人)
步行单程
40-60分钟
(人)
步行单程
60-90分钟
(人)
步行单程90
分钟以上
(人)
其他走读
方式人数
(人)
其中
家长接送
(人)
包车接送
(人)
骑车往返
(人)
自行搭车
(人)
备注栏
1。
代码走读实施流程
代码走读是一种对代码进行审查和评估的方法,旨在提高代码质量、减少错误和提高开发效率。
以下是代码走读的实施流程:
1. 确定走读目标:首先需要明确代码走读的目标,例如检查代码规范、代码质量、安全漏洞等。
这有助于制定具体的走读计划和检查表。
2. 选取走读人员:选择具有相关背景和经验的开发人员作为走读人员,他们应具备一定的技术能力和分析能力,能够发现问题并提供有价值的建议。
3. 制定走读计划:根据走读目标和范围,制定详细的走读计划,包括需要检查的代码范围、时间安排、检查方法和工具等。
4. 准备工具和环境:根据需要,准备相应的工具和环境,例如代码编辑器、版本控制系统、代码质量检查工具等。
5. 进行走读:按照计划进行代码走读,重点关注代码规范性、可读性、可维护性、性能和安全性等方面。
记录发现的问题和建议,并与相关人员进行沟通和确认。
6. 分析问题并提出建议:对发现的问题进行深入分析,找出根本原因,并提出相应的改进建议。
这些建议可以包括优化代码结构、改进算法、提高可读性等。
7. 汇总报告:将走读结果汇总成报告,包括发现的问题、建议和改进措施等。
报告应该清晰、简洁,便于相关人员理解和执行。
8. 跟踪和验证:对提出的改进措施进行跟踪和验证,确保问题得到解决并取得良好的效果。
同时,不断总结经验教训,为今后的代码走读提供参考。
需要注意的是,代码走读是一个持续的过程,需要定期进行以确保代码质量不断提高。
同时,走读人员应该保持客观、公正的态度,遵循良好的沟通技巧和方法,以确保走读效果的最大化。