code review 有助于尽早发现代码中的问题,协调并逐渐统一各个编程人员的代码规范和习惯,以常用的Jupiter为例.
Jupiter里,代码评审(code review)分为4个流程:
- Configuration(配置):review发起者设置“Review ID”,指定要评审的代码,参与代码评审的人员,要讨论的问题等
- Individual review(个人评审):每个人独自审查代码,把可能出现问题的代码加入checklist
- Team review(团队评审):大家在一起讨论之前检查出的问题代码,并决定如何处理
- Rework:开发人员根据之前评审的结果,对代码进行修复
流程
Configuration
由评审发起者(代码作者、team leader或者PM)进行配置。打开项目属性->Review选项页。点击“New...”,设置相应的ReviewId和description:
接着添加本次要评审的代码和文件
添加参与代码评审的人员
接下来设置各种缺陷类型、严重性之类的。然后就是指定存放评审数据的目录。这个目录是相对于项目根目录的。如下图:
设置完成后,Jupiter将在项目根目录下生成“.jupiter”文件,把此文件存入CVS。现在评审发起者可以通知大家进行代码评审了。可以通过发邮件的方式进行通知,通知的内容最好有以下部分:
即:
- 项目名称、Review ID、参与评审人员名单。
- 被评审代码的描述信息,如功能,需求等等
- 新增加和删除的文件
- 受影响但没有在Configuration中指定的组件
通知完毕后,各成员即可正式进行代码评审。
Individual review
从CVS取出最新的代码和.jupiter文件,在eclipse里->窗口(Window)->打开透视图(Open Perspective)->Review。然后选择Individual Phase:
选择项目名称,Review ID和Reviewer ID(评审者ID),然后就可以开始查看代码了。
在代码评审过程中,发现有问题的代码,即可在上面点击右键菜单->Add Review Issue...把问题添加到Jupiter中,指定问题类型、严重性和描述信息,点击保存。
完成个人的代码评审后,把Jupiter评审数据目录下的文件传入CVS,就可以一起进行讨论了。
Team review
大家在一起,使用一台电脑或者投影仪,选择Team Phase
现在Individual Phase里检查出的所有的问题都会显示在ReviewTable里,点击Go To就能链接到问题所在代码,然后大家讨论这段代码是否有问题,如何解决等等,把结果写到ReviewEditor里,保存。
所有的问题讨论出结果后,把Jupiter评审数据文件传入CVS,散会,各自回到自己位置,进行下一个步骤
Rework
从CVS取出最新的Jupiter评审数据文件,选择Rework Phase
选择自己的ID后,上一步骤中分配给自己的问题就会显示到ReviewTable里,一个一个地把问题修复吧,修复后把状态置为Resolved。完毕后把Jupiter数据传CVS。
各自的rework完成后,各位评审者取出最新的Jupiter数据,关闭ReviewTable的过滤器,就能查看到本次评审中发现的各种问题,对各种问题进行验证,感到满意后可以把状态置为Closed,或者验证未通过,就置为Re-Opened。
总结
如此,便完成了一次代码评审……
工具仅仅是一种辅助措施,更主要的是如何发挥积极主动性,不断提高编码水平和定制规范.
参考资料
- Jupiter User's Guide http://csdl.ics.hawaii.edu/Tools/Jupiter/Core/doc/UsersGuide.html
- Effective Code Reviews Without the Pain http://www.developer.com/java/other/article.php/3579756
- Peer Code Reviews Made Easy with Eclipse Plug-Inhttp://www.devx.com/enterprise/Article/31658/0/page/1
相关推荐
借助一些工具可以更容易,更有效率地来进行Code Review,本文介绍的Jupiter即是其中之一。 Jupiter概述 Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个...
Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个很方便的功能是其建立了review问题跟具体源代码的对应关系(通过点击review问题列表中的问题可以跳转到对应的...
使用Jupiter或Reviewclipse这样的Code Review工具,可以显著提升开发团队的效率和代码质量。它们不仅减少了因错误引起的bug,还能在团队中建立良好的代码审查文化,鼓励共享知识,提升整体编程水平。通过定期的Code ...
代码评审工具,通过CodeReview可以有效的降低开发风险、提高代码质量
文章中提到的CodeReview工具主要是指开源的代码审查工具,如ReviewBoard、Jupiter、JCR、Codestriker、Rietveld等,并介绍了其中几种工具在Windows系统上的安装步骤。 开源代码审查工具通常具有以下功能特点: 1. ...
Jupiter也考虑到了对旧版项目的兼容性,确保即使是使用旧技术栈构建的应用也能顺利进行代码审查。这体现了Jupiter对所有类型项目的全面支持。 综上所述,Jupiter不仅是一个强大的代码审查工具,它还提供了一套完整...
随着软件工程的不断发展,出现了许多支持代码审查的工具,其中包括Review-Board、Redmine插件以及Jupiter等,它们分别拥有不同的特点和应用场景。 Review-Board是一款开源的代码审查工具,广泛受到开发者的青睐。它...