Code reviews sind so eine Sache – die wenigstens Entwickler entwickeln für eine Code Review großen Enthusiasmus. Zu allem oeberfluß kommt noch hinzu, dass neben der zu erwartenden Mäkelei am Source-Code auch die Unterstützung durch Review Software nicht gerade üppig ist.
Gerade wenn es um den Bereich „OpenSource“, Startup-Unternehmen oder andere Bereiche, in denen nicht viel Geld in der Kriegskasse ist, geht, wird die Luft schnell dünn.
Die Entwickler der Virtualisierungslösungen Vmware hatte zwar weniger mit dem finanziellen dafür um so mehr mit dem technischen Aspekt zu kämpfen, dass keine Code Review Software für ihre Zwecke geeignet war. Als Ergebniss schufen sie Review Board, eine bei Google-Code gehostete Open Source Review Software, die vollständig über den Browser (natürlich mit Ajax) zu bedienen ist.

Der Entwickler bekommt dabei das unter Review stehende Changeset als farblich hervorgehobenes Diff Seite an Seite angezeigt. Bereichen können so markiert und mit Textkommentaren versehen werden.


Ein besonders schönes Feature: Auch Screenshots können eingestellt und kommentiert werden. Auch hier wird für das Review ein Bereich des Screenshots ausgewählt und kann dann mit einem Kommentar versehen werden.
Auch das Management ist durchdacht: Entwickler können neu eingestellte Code Reviews abonieren und werden dann automatisch benachrichtigt, wenn es etwas zu tun gibt.
Das ist jedoch dann auch alles, was an Integration in andere Tools oder Umgebungen angeboten wird – nicht unbedingt schlecht, birgt jedoch auch einige Limitierungen.
Als Repositories werden derzeit Subversion (SVN) und Perforce (VCS) unterstützt, an git wird gearbeitet. Review Board ist eine Python / Django Anwendung und steht unter der MIT Lizenz.

Als weiteres Tool gibt es dann noch Cruicible von Atlassian. Anders als Review Board ist Cruicible ganz auf die Integration in andere Atlassian Produkte ausgelegt, insbesondere das Fisheye. Die günstigste Version von Cruicible fängt bei einer „Academic licence“ an, diese umfaßt 10 Entwickler und kostet 600 Dollar im Jahr.

Dafür erhält man dann ein Atlassian typisch durchdachtes Produkt. Dank Fisheye kann man schnell die Dinge auswählen, die einem Review unterzogen werden sollen. Am besten funktioniert das ganze natürlich, wenn auch Jira, der Issue Tracker von Atlassian, mit an Board ist. So sind dann beispielsweise Quellcode „nderungen an den Issues erkennbar.
Auch Cruicible setzt auf Ajax, Kommentare können an einzelne Code-Zeilen oder Bereiche geheftet werden, E-mails über neue Kommentare oder Statusänderungen von Reviews gehören ebenfalls dazu.
Screenshots können zwar hier nicht eingestellt werden – diese sind jedoch als Anhang im Jira möglich. (Hier gehören sie meines Erachtens auch hin. Eine Markierungsfunktion für Bereiche in Screenshots wäre hier ein nützliches Feature.)
Wer als Unternehmen eine integrierte Lösung wünscht, der kann beherzt bei Atlassian „einmal alles“ kaufen – denn auch Confluence, die Wiki Software von Atlassian, ist eine einschätzbare Hilfe wenn es um Entwicklung, Dokumentation oder Support geht.
Wer mit nur eine Code Review Software sucht, wenig Geld investieren möchte und ohne Integration leben kann, ist sicherlich mit Review Board erstmal gut beraten.

Code Reviews durch Experten können dazu beitragen, dass die Qualität von Software und Architektur verbessert wird. Im Java Umfeld bietet z.B. die trion Codereview Unterstützung und Beratung. Nicht immer reichen Werkzeuge allein, sondern Erfahrung und fundierte Kenntnisse sind dabei ebenso nötig.