Did the title catch your attention? Well it did mine.
It is the title of a post that I've just read. Although the title seems a little bit trolish it's because it probably is, if you read the subtitle you will see the main title is not only trollish but very misleading. The post subtitle is The Social Dynamics of Code Reviews.
It mainly talks about code reviews in open source projects but most of the knowledge sprung in this post is applicable to close source projects.
Code reviews is something that is hard to do effectively. Even you get past the sociological issues mentioned on the post, without a decent tool it is very hard to keep track what has been reviewed and it's not.
Code review is one of the area I wish there were some kind of offering for TFS. Granted you can do code reviews with shelve sets and some sort of informal communication via email (assigning code review tasks or even a work item type) but that would give us no metrics or a simple way to keep track which parts of the code have been reviewed.
The more complete solution for TFS seems to be TeamReview (freely available on codeplex) which combines specific work item types and a Visual Studio add-in to help you manage the process. While I never tested the tool, I've given some attention to the description and workflow and it seems to work at a very micro level of the code. And the metric tools (what has been reviewed, what is not, etc,etc) seems to be non existant.
There are some more mature solutions that perhaps can be adapted to be used with TFS:
- Review board which has originated from VMware
- The venerable Codestriker
- JCR - which unlike other tools doesn't work at the source control level but with whole files
On the commercial side Code Collaborator from Smart Bear has a good reputation and it works with TFS but never tried it either.
[Cross Posted on http://agilior.pt/blogs/tiago.pascoal/archive/2008/12/28/6528.aspx]