软件代码审查报告.xlsVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

代码审查表

软件代码审查报告

检查人:

检查日期:年月日

审查内容:

审查总结果:

说明:

审查类型

序号

条款

审查详细结论

一:注释

一般情况下,源程序有效注释量必须在20%以上。

程序文件头部应进行注释(我们公司目前,主要指java、js、m与cs文件),务必按照公司统一格式,列出:版权说明、版本号、生成日期、作者、模块目的/功能、主要函数及其功能、修改日志等。

函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。

边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。

注释的内容要清楚、明了,含义准确,防止注释二义性

避免在注释中使用缩写,特别是非常用缩写。

注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。

对于所有有物理含义的变量、常量,如果其命名不是充分自注释的,在声明时都必须加以注释,说明其物理含义。变量、常量、宏的注释应放在其上方相邻位置或右方。

数据结构声明(包括数组、结构、类、枚举等),如果其命名不是充分自注释的,必须加以注释。对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释放在此域的右方。

全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。

注释与所描述内容进行同样的缩排

将注释与其上面的代码用空行隔开。

对变量的定义和分支语句(条件分支、循环语句等)必须编写注释。

对于switch语句下的case语句,如果因为特殊情况需要处理完一个case后进入下一个case处理,必须在该case语句处理完、下一个case语句前加上明确的注释。

二:标识符命名

标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。

命名中若使用特殊约定或缩写,则要有注释说明。

自己特有的命名风格,要自始至终保持一致,不可来回变化

对于变量命名,禁止取单个字符(如i、j、k...),建议除了要有具体含义外,还能表明其变量类型、数据类型等,但i、j、k作局部循环变量是允许的。

命名规范必须与所使用的系统风格保持一致,并在同一项目中统一,比如采用UNIX的全小写加下划线的风格或大小写混排的方式,不要使用大小写与下划线混排的方式。

三:可读性

注意运算符的优先级,并用括号明确表达式的操作顺序,避免使用默认优先级

避免使用不易理解的数字,用有意义的标识来替代。涉及物理状态或者含有物理意义的常量,不应直接使用数字,必须用有意义的枚举或宏来代替。

四:变量

去掉没必要的公共变量

仔细定义并明确公共变量的含义、作用、取值范围及公共变量间的关系。

明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等

当向公共变量传递数据时,要十分小心,防止赋与不合理的值或越界等现象发生

防止局部变量与公共变量同名。

严禁使用未经初始化的变量作为右值

五:函数、过程

对所调用函数的错误返回码要仔细、全面地处理。

明确函数功能,精确(而不是近似)地实现函数设计。

编写可重入函数时,应注意局部变量的使用(如编写C/C++语言的可重入函数时,应使用auto即缺省态局部变量或寄存器变量)5--3:

编写可重入函数时,若使用全局变量,则应通过关中断、信号量(即P、V操作)等手段对其加以保护。

六:可测性

在同一项目组或产品组内,要有一套统一的为集成测试与系统联调准备的调测开关及相应打印函数,并且要有详细的说明

在同一项目组或产品组内,调测打印出的信息串的格式要有统一的形式。信息串中至少要有所在模块名(或源文件名)及行号

编程的同时要为单元测试选择恰当的测试点,并仔细构造测试代码、测试用例,同时给出明确的注释说明。测试代码部分应作为(模块中的)一个子模块,以方便测试代码在模块中的安装与拆卸(通过调测开关)。

在进行集成测试/系统联调之前,要构造好测试环境、测试项目及测试用例,同时仔细分析并优化测试用例,以提高测试效率

使用断言来发现软件问题,提高代码可测性。

用断言来检查程序正常运行时不应发生但在调测时有可能发生的非法情况。

不能用断言来检查最终产品肯定会出现且必须处理的错误情况。

对较复杂的断言加上明确的注释。

用断言确认函数的参数。

用断言保证没有定义的特性或功能不被使用。

用断言对程序开发环境(OS/Compiler/Hardware)的假设进行检查。

正式软件产品中应把断言及其它调测代码去掉(即把有关的调测开关关掉)

在软件系统中设置与取消有关测试手段,不能对软件实现的功能等产生影响。

用调测开关来切换软件的DEBUG版和正式

文档评论(0)

mmhaijing + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档