Was sind Reviews?

Mit einem Software-Review bzw. einer Software-Inspektion versucht ein Team von Gutachtern, Fehler und sonstige Probleme in einem Textdokument oder in einem Programm zu finden.

Es gibt verschiedene Varianten von Reviews, die in der Literatur allerdings nicht einheitlich bezeichnet werden:

Wenn es darum geht, Fehler in Textdokumenten oder Programmen zu finden, haben sich formale Inspektionen (beispielsweise nach Fagan oder Gilb/Graham) als mit Abstand beste Methode herausgestellt. Eine solche Software-Inspektion läuft in folgenden Phasen ab:

Planung In der Planungsphase werden die unterschiedlichen Reviewaktivitäten zeitlich und organisatorisch eingeplant. Es wird dabei auch geprüft, ob die Eingangskriterien erfüllt sind, z.B. ob sich das Dokument überhaupt in einem reviewbaren Zustand befindet.
Kick-off Im (optionalen) Kick-off-Meeting wird den Reviewern so viel Hintergrundinformation zum Dokument und zum Projektumfeld gegeben, dass jeder Reviewer auch sinnvoll Fehler finden kann.
Individuelle Vorbereitung In der individuellen Vorbereitung sucht jeder Reviewer nach Fehlern und sonstigen Problemen im Dokument.
Reviewsitzung In der Reviewsitzung werden die Fehler zu Protokoll gegeben. Optional erfolgt direkt im Anschluss die Besprechung von offenen Diskussionspunkten oder Analysen der Fehler zur zukünftigen Vermeidung und Prozessverbesserung.
Überarbeitung In der Phase Überarbeitung analysiert der Autor die gefundenen Fehler und verbessert das Dokument.
Follow-up In der Phase Follow-up wird geprüft, ob der Autor alle Fehler bearbeitet und die in der Reviewsitzung verlangten Auflagen erfüllt hat. Es wird außerdem entschieden, ob das Dokument freigegeben werden kann oder ob ein wiederholtes Review nötig ist. Alle notwendigen Kennzahlen werden in den geforderten Statistiken zusammengefasst.

Solche Software-Inspektionen stellen eine sehr formale Variante von Reviews dar. Es wäre aber falsch zu glauben, dass man mit Inspektionen nur formale Fehler finden kann. Ganz im Gegenteil: von allen Reviewvarianten sind die Inspektionen am besten geeignet, "Major defects", also schwere inhaltliche Fehler aufzudecken. Die großen Kosteneinsparungen im Projekt erreicht man vor allem mit richtig durchgeführten Software-Inspektionen.

Aufgrund des positiven Beitrags zum Projekterfolg werden Reviews von einer Reihe von Standards und Reifegradmodellen empfohlen oder sogar verpflichtend vorgeschrieben: CMMI®, ISO/IEC 15504 (SPICE), Automotive SPICE®, TMMI®, TPI®, MISRA Report 6 V&V, DO178B, IEC 61508, ISO DIS 26262, etc. Konkrete Hinweise und Vorgaben zur Durchführung der in diesen Standards geforderten Reviews findet man in erster Linie in IEEE Std 1028-2008 (IEEE Standard for Software Reviews and Audits).