Code Review工具Jupiter的使用

    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:

    Code Review工具Jupiter的使用_第1张图片

    接着添加本次要评审的代码和文件

    Code Review工具Jupiter的使用_第2张图片

    添加参与代码评审的人员

    Code Review工具Jupiter的使用_第3张图片

    接下来设置各种缺陷类型、严重性之类的。然后就是指定存放评审数据的目录。这个目录是相对于项目根目录的。如下图:

    Code Review工具Jupiter的使用_第4张图片

    设置完成后,Jupiter将在项目根目录下生成“.jupiter”文件,把此文件存入CVS。现在评审发起者可以通知大家进行代码评审了。可以通过发邮件的方式进行通知,通知的内容最好有以下部分:

    Code Review工具Jupiter的使用_第5张图片

    即:

  • 项目名称、Review ID、参与评审人员名单。
  • 被评审代码的描述信息,如功能,需求等等
  • 新增加和删除的文件
  • 受影响但没有在Configuration中指定的组件

    通知完毕后,各成员即可正式进行代码评审。

    Individual review

    从CVS取出最新的代码和.jupiter文件,在eclipse里->窗口(Window)->打开透视图(Open Perspective)->Review。然后选择Individual Phase

    Code Review工具Jupiter的使用_第6张图片

    选择项目名称,Review ID和Reviewer ID(评审者ID),然后就可以开始查看代码了。

    在代码评审过程中,发现有问题的代码,即可在上面点击右键菜单->Add Review Issue...把问题添加到Jupiter中,指定问题类型、严重性和描述信息,点击保存。

    Code Review工具Jupiter的使用_第7张图片

    Code Review工具Jupiter的使用_第8张图片

    完成个人的代码评审后,把Jupiter评审数据目录下的文件传入CVS,就可以一起进行讨论了。

    Team review

    大家在一起,使用一台电脑或者投影仪,选择Team Phase

    Code Review工具Jupiter的使用_第9张图片

    现在Individual Phase里检查出的所有的问题都会显示在ReviewTable里,点击Go To就能链接到问题所在代码,然后大家讨论这段代码是否有问题,如何解决等等,把结果写到ReviewEditor里,保存。

    Code Review工具Jupiter的使用_第10张图片

    所有的问题讨论出结果后,把Jupiter评审数据文件传入CVS,散会,各自回到自己位置,进行下一个步骤

    Rework

    从CVS取出最新的Jupiter评审数据文件,选择Rework Phase

    Code Review工具Jupiter的使用_第11张图片

    选择自己的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
    原文地址:http://fyting.iteye.com/blog/87489

你可能感兴趣的:(技术积累)