引言
Code Review的作用和意义已在很多技术团队内达成共识,可是很多时候并未被有效执行,甚至被认为是一项费时费力的工作。借助一些工具可以更容易,更有效率地来进行Code Review,本文介绍的Jupiter即是其中之一。
Jupiter概述
Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个很方 便的功 能是其建立了review问题跟具体源代码的对应关系(通过点击review问题列表中的问题可以跳转到对应的代码段,通过点击代码段上的review问 题标记可对应到具体的问题描述),review问题列表支持各种filter规则(根据review问题状态、责任人等,通过这个filter可以列出具 体阶段需关注的问题)。
本插件在eclipse3.7_201110707版本中有增加。
Jupiter的Code Review流程
Jupiter的Code Review流程为以下几步:
- 1.建立review任务:代码修改者或TL建立review任务,指定需评审的代码文件、参与评审的人员、定义问题类型及严重级别等。
- 2.个人评审阶段:开始个人独自评审,将可能出现的问题加入问题列表。
- 3.团队评审阶段:团队成员坐在一起,讨论个人评审阶段的问题,确定是否需要修复并分配解决人员。
- 4.问题修复阶段:每个人修复分配给自己的问题,修复后修改问题状态。
1.建立review任务
由评审发起者(代码作者、team leader或者PM)进行配置。
打开项目属性->Review选项页。点击"New...",设置相应的ReviewId和description
选择需要Review的文件,可一次选择多个
添加参与代码评审的人员
选择评审负责人
接下来的几步是设置问题类型及严重级别和filter,根据实际情况修改或用默认值,finish后会在工程根目录生成.jupiter文件,提交该文件到SVN。
设置完成后,Jupiter将在项目根目录下生成".jupiter"文件,把此文件存入CVS。现在评审发起者可以通知大家进行代码评审了。可以通过发邮件的方式进行通知,通知的内容最好有以下部分:
- 项目名称、Review ID、参与评审人员名单。
- 被评审代码的描述信息,如功能,需求等等
- 新增加和删除的文件
- 受影响但没有在Configuration中指定的组件
通知完毕后,各成员即可正式进行代码评审。
2.个人评审阶段
从SVN上更新最新的源代码和.jupiter文件,在eclipse里->窗口(Window)>打开透视图(Open Perspective)>Review。然后选择Individual Phase:
选择文件就可以开始review了,发现问题时,光标停在问题代码处,点击鼠标右键选择"Add Review Issue......"
在"Review Editor"里选择问题类型及严重性,添加概要和详细描述,保存。可以看到增加了Review问题的代码会在行首处有标记。
个人评审完毕后将Jupiter评审数据目录(默认为review)下的数据上传到SVN。
3.团队评审阶段
团队成员坐在一起,从SVN上更新最新的Review数据,从review试图中选择"Team Phase",点击"Review
Table"中的问题会跳到对应的代码,一起讨论代码是否确实存在问题,在"Review Editor"里分配修复人员及解决方式,保存。
团队评审完毕后将Review数据上传到SVN。
4.问题修复阶段
个人回到自己的工作机,更新最新的review数据,从review试图中选择"Rework Phase",会在"Review
Table"里列出分配给自己的问题,逐一修复,并在"Review
Editor"将问题状态改为"Resovled",保存并将review数据上传到SVN。
Rework完成后,各位评审者再次检查,如果检查未通过,可将问题状态改为"Re-Opened",确认问题修复后将问题状态改为"Closed",
至此,一个Code Review流程结束。
Code Review流程工具Jupiter介绍