我们使用在 Cisco 中的案例研究,来确定轻量级技术与规范过程比较的特点。结果显示轻量级代码评审所需要的时间只是规范评审的五分之一(甚至更少),而且前者能够发现更多的错误(bug)。

  尽管轻量级代码评审拥有很多的方法,例如实时评审和电子邮件评审,但是有效的评审方法还是使用协作性的软件工具来促进评审,这些软件工具例如 SmartBear 的 CodeCollaborator(见于图 4)。

图 4. Cisco 研究中所使用到的轻量级代码评审工具,CodeCollaborator

 

  CodeCollaborator 是与 IBM? Rational Team Concert 工作流程相集成的代码评审工具。它将源代码评审与聊天形式的协作集成起来,从而使开发员从联系注释与私人代码行的繁琐活动中解放了出来。当程序员向工作项添加更改项进行评审时,在 CodeCollaborator 中将会自动创建评审,并分配适当的批准者。团队成员可以直接注释代码,与代码开发者聊天,并每一个问题进行协作,追踪错误(bug)并修复缺陷。整个过程不需要会议,打印,或者安排日程。

  有了基于 Rational Team Concert 与 CodeCollaborator 的轻量级评审过程,团队可以进行更有效的评审,并实现代码评审的有利点。

  CodeCollaborator 获得了 “Ready for IBM Rational Software” 针对 Rational Team Concert V2 和 V3 的认证,以及针对 IBM?Rational?ClearCase?和 IBM?Rational?Synergy? 的认证。

  到现在为止,您已经被经实践证明有效的经验从头到尾武装起来了,以确保从过程和社会的角度来看,团队在代码评审过程之中能够节省大量的时间。当然,您必须确实 完成了 代码评审,以实现这些便利。对 的代码使用评审的规范方法(有人对这个百分比存在异议,简单来说是不现实的。集成到 Rational Team Concert 环境之中的工具支持轻量级代码评审,提供了强大的功能,因为它提供了一个有效的方法去搜索缺陷,而且不会涉及到开发员头痛的一些问题。有了正确的工具和这些实践方式,您的团队可以对所有的代码进行同行评审,并在软件达到 QA 阶段之前找到成本极高的错误(bug),这样您的客户每次都能够得到品质的产品了。

  为了方便您查看,下面总结了在一个简单列表中容易保持的 11 项实践方式:

  1、一次评审少于 200–400 行的代码。

  2、目标为每小时低于 300–500 LOC 的检查速率。

  3、花足够的时间进行正确缓慢的评审,但是不要超过 60–90 分钟。

  4、确定代码开发者在评审开始之前已经注释了源代码。

  5、为代码评审和获取制度建立可定量化的目标,这样您才能改进流程。

  6、使用检查列表,因为它可以极大地改进代码开发者和评审者的作品。

  7、确认缺陷确实得到修复了。

  8、培养良好的代码评审文化氛围,在这样的氛围中搜索缺陷被看做是积极的活动。

  9、警惕“老大”效应。

  10、少评审一部分代码,是您不能评审全部的代码,以从 Ego Effect 中受益。

  11、采用轻量级,能用工具支持的代码评审。