案例:代码走查

某公司拟在公司推广代码走查技术,请外部咨询顾问进行一下实战指导,于是请项目组挑选了一个类,执行了代码走查的演练。2012年7月11日下午14:05分至15:15分,对110行有效代码(不含空行、注释、调试语句)进行了走查,该代码是Andriod平台下的JAVA代码,参与的评审专家包括:

作者:工作经验1年;

项目经理:工作经验6年,熟悉C语言的开发;

项目组成员:工作经验3年,熟悉JAVA语言开发;

外部咨询顾问:工作经验19年,曾经熟悉C、C++、PB、DELPHI、C#、JAVA等多种开发语言,但是最近几年缺少实际编码经验;

并有4名QA人员参与了整个过程的观摩。

在评审之前,项目经理与外部咨询顾问均没有阅读过此代码,项目组成员曾经阅读过代码。评审的开始,作者先介绍本段代码的功能,然后以处理功能的时序为顺序介绍了在该类中的每个方法,边讲解代码与会专家边查找代码中的缺陷。

本次代码评审累计发现13处改进项,包括程序错误3处,13处改进项汇总如下:

1无用的变量两个。定义了2个变量,赋了值,但是后续没有引用。

2有两处在if语句中只编写了一种yes或no的处理逻辑,遗漏了另外一个分支的处理逻辑,比如应该有提示信息等。

3有两处执行了new语句后,没有异常处理,如果new失败,没有判断和处理。

4有一处有无用的语句。

5有两处注释与代码不一致,注释有错误。

6在程序中多处出现常数值,没有使用宏替换或变量替换之。

7在计算图标在屏幕上的坐标值有多处数值错误。

8有一处程序逻辑不够灵活,不能适应未来的变化,而且很容易出错。

9有一处方法的命名不合理,不能准确表达方法的功能。

本次代码评审的度量数据分析如下:

评审速度:94.3行代码/小时

评审效率:2.8个缺陷/人时

缺陷密度:118.2个缺陷/KLOC

评审结束后请作者本身保留评审前的版本,根据评审意见进行重构代码后,整理为典型案例,在公司内进行宣讲。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值