2012-08-10 30 views
0

我正在寻找组织代码审查过程的方法。中等团队的代码审查实践

我输入:

  1. 4-5成员在团队;
  2. SVN/IntelliJ IDEA社区版。

解决方案标准:

  1. 应该支持人工审核与评论/高亮显示;
  2. 应该很容易(安装,快速进行审查);
  3. 应该是免费的(理想情况下);
  4. 应该根据代码库在SVN仓库中进行审查;
  5. 不应该在SVN仓库中进行任何提交;
  6. 不应该在第三方服务上进行任何发布(理想情况下不应该与这些服务进行交互)。

我感兴趣的任何建议:

  1. 流程组织;
  2. 工具;
  3. 最佳做法。

感谢您的建议!

+0

更好地移动问题到程序员.stackexchange.com – 2012-08-10 14:16:00

回答

3

既然你似乎是使用Java工具下,考虑声纳 - http://www.sonarsource.org/

虽然你可以使用出的现成的配置文件之一,我会建议花时间验证700+它的规则随身携带,以确定哪些适合你,哪些不适合你。还有大量的插件可用于捕获不同类型的指标,如技术债务,死/无用代码,质量指标(基于违反规则的类型)等。

如果您使用Maven构建代码,Sonar与它很好地结合在一起。只需运行mvn sonar:sonar。有关详细说明,请参阅here

此外,还有一个Ant task也可用,以允许您通过Ant运行Sonar。

您可能还想要设置连续集成。 Sonar与Jenkins很好地结合,如果您的项目是Mavenized的,并且使用SCM plugin跟踪SVN历史记录。如果您正在使用Ant任务,设置CI的最简单方法是以Jenkins作业运行Ant任务。那么'集成'将仅限于触发构建。您需要为每个SVN分支提供一个Jenkins作业。对于使用Ant的项目,您需要使用SVN Ant任务来获取SVN信息(最新版本,分支名称等),以便在Sonar的报告中显示。

您需要决定运行Sonar的频率,以便您可以跟踪进度并有时间采取措施。我会建议在一两天内运行一次。

曾经有一个IntelliJ插件,但似乎不再支持。如果你可以在你的代码中直接在IntelliJ中安装用于运行Checkstyle,Pmd和Findbugs规则的插件,并且如果你在IDE中设置了相同的规则,那么开发人员在提交代码之前就可以更容易清理代码,从而声纳将成为一个监测/跟踪工具。

编辑

对于同行的评论,你可以登录像的Bugzilla或JIRA一个bug /任务跟踪工具的所有意见。将它与电子邮件整合在一起,每个“评论”都会通过电子邮件发送给分配给他的人。

+1

非常感谢您的建议!这非常有用,实际上我已经使用它的一部分。但现在我更感兴趣的是团队成员之间的审查(将其添加到“解决方案标准”中)。 – Raman 2012-08-10 10:30:29