Inspektion – Das unbekannte Review

Wenn Entwicklungsabteilungen einen gewissen Reifegrad erreicht haben, verwenden sie Reviews zur Verifikation von Arbeitsergebnissen (z.B. Anforderungs- und Testspezifikationen, Planungsdokumente).
Oft muss dabei auch berücksichtigt werden, dass die Produkte (teilweise oder in Gänze) Sicherheitsverantwortung haben. Das bedeutet, dass Normen der funktionalen Sicherheit eingehalten werden müssen.

Diese Normen sind z.B. ISO 61508 oder deren Ableitungen wie EN 50128, ISO 26262 oder IEC 62304. Da diese Normen die Review-Typen Inspektion und Walkthrough als Verifikationsmethoden nennen, müssen diese Review-Methoden (zwangsläufig) angewendet werden. Leider geschieht es meiner Erfahrung nach ausgesprochen häufig, dass man sich nicht wirklich Gedanken darüber macht, welche Unterschiede zwischen den beiden Review-Methoden bestehen.

Durch mangelnde Kenntnisse der Details sind in vielen Fällen in der Anwendung kaum Unterschiede erkennbar und so wird meist die Inspektion über Bord geworfen, da aus Sicht der Anwender kein Mehrwert besteht.

In diesem Beitrag erläutere ich die Eigenschaften der Review-Methode Inspektion.

In einer Inspektion sollen neben Fehlern am Prüfobjekt selbst auch Auffälligkeiten in den Eingangsdokumenten gefunden werden. Jedoch zeichnet sich diese Review-Methode zusätzlich durch weitere Eigenschaften aus, die, richtig genutzt, eine andere Qualitätskultur in der Organisation schaffen kann.

Ziele

Ziele einer Inspektion sind

  • die Kontrolle/Prüfung des Entwicklungsprozesses in dem Prüfobjekte entstanden sind,
  • die Konsistenz zu den Eingangsdokumenten sicherzustellen,
  • die Messung der Qualität des zu prüfenden Dokumentes gegen festgelegte (interne) Standards und Vorgaben,
  • die Reduzierung der Projektzeit und -kosten durch Verhinderung von später Fehlererkennung in nachfolgenden Prozessen.

Weitere Ziele sind, wesentliche Mängel im zu prüfenden Dokument zu identifizieren und den Autor dabei zu unterstützen, diese Mängel zu beseitigen. In den nachfolgenden Phasen können so die zusätzlichen Aufwände, die durch ein fehlerhaftes Dokument entstehen, vermieden werden.

Schließlich dient eine Inspektion auch als Training für den Autor, Berufsanfängern und Mitarbeitern, die noch keine Erfahrung mit Inspektionen haben sowie letztendlich den Inspektionsleiter selbst.

Rollen

Zur effizienten Durchführung einer Inspektion ist es erforderlich, dass die beteiligten Personen genau wissen, was ihre Aufgabe in welcher Phase der Inspektion ist.

Nachfolgend sind die Rollen und deren wesentlichen Aufgaben beschrieben und es sind die Phasen angegeben, in denen sie diese Aufgaben durchführen.

Inspektionsleiter (Inspection Leader)

  • Bereitet und plant die Inspektion vor
  • Stellt das korrekte Vorgehen während des gesamten Prozesse vor
  • Legt das Inspektionsteam fest
  • Erfasst und dokumentiert die erforderlichen Metriken

Phasen: alle

Prüfer (Checker)

  • Stellt sicher, dass alle benötigten Unterlagen zur Prüfung vorliegen
  • Findet möglichst viele wichtige Auffälligkeiten (z.B. keine Rechtschreibfehler)
  • Durch die Prüfung des Review-Objektes und der Konsistenz zu den Eingangsdokumenten werden die Autoren bei der Erstellung korrekter Dokument unterstützt

Phasen: Kick-Off, Checking, Protokollsitzung (Logging), „Prozess-Brainstorming“

Schriftführer (Scribe)

  • Dokumentiert nur die notwendigsten Fakten, die für das Verständnis des Autors erforderlich sind
  • Achtet und besteht auf der Einhaltung der festgelegten Berichtsreihenfolge (der Prüfer)

Phasen: Kick-Off, Protokollsitzung (Logging)

Autor (Author)

  • Berichtet seine Auffälligkeiten nach den anderen Team-Mitgliedern
  • Prüft die Mitschrift auf Lesbarkeit und Verständlichkeit
  • Diskutiert oder bewertet NICHT die Auffälligkeiten der anderen Team-Mitglieder

Phasen: Kick-Off, Protokollsitzung (Logging), Überarbeitung (Editing)

Die acht Phasen der Inspektion

Planung & Einführung

Eine Inspektion wird nur begonnen, wenn eine festgelegte Anzahl von Eingangskriterien erfüllt ist (z.B. wenn die Konsolidierung vorher durchgeführt wurde). Diese Eingangskriterien sind in der Regel in den Vorgaben zur Durchführung einer Inspektion definiert.

Um die maximale Produktivität zu gewährleisten legt der Leiter der Inspektion die Quell-Dokumentation, die zu prüfende Dokumente, die anzuwendenden Checklisten und Regelwerke, Prüf- und Protokollierungsrate, die erforderlichen Rollen und die Besetzung dieser Rollen fest (schließlich sind Inspektionen teuer und müssen möglichst effizient durchgeführt werden).

Kick-Off

Der Leiter der Inspektion kann sich dafür entscheiden, vor der Prüfung ein Kick-Off-Meeting durchzuführen. Es werden Teamverbesserungsziele und damit verbundenen Strategien verabschiedet. Das für die Inspektion erforderliche Material wird erläutert (durch den Autor). Zweck des Kick-Off-Meetings ist das verbindliche Einverständnis aller Mitglieder des Inspektionsteams zu den festgelegten Zielen der Inspektion.

Überprüfung (Checking)

Die Prüfphase hat eine vorgegebene Dauer oder eine vorgegebene Prüfrate, jedoch haben die Prüfer die Vorgabe, davon abzuweichen, wann immer die individuelle Fähigkeit, Rolle oder Situation dies erfordert, um ihre Produktivität beim Auffinden der wichtigsten Mängel zu erhöhen.

Protokollierungssitzung (Logging Meeting)

Das Team konzentriert sich auf die mündliche Berichterstattung und die schriftliche Protokollierung der wichtigsten Mängel, wobei mindestens ein Mangel pro Minute erfasst wird. Der Leiter der Inspektion lässt dabei nur sehr wenig bis keine Diskussionen zu. Die Protokollierungssitzung dauert maximal zwei Stunden (Grenze der menschlichen Ermüdung) bei der definierten optimalen Protokollierungsrate. Falls erforderlich, muss die Arbeit auf mehrere Sitzungen aufgeteilt werden.

„Prozess-Brainstorming“ (optional)

Unmittelbar nach jeder Protokollierungssitzung kann die Zeit genutzt werden, um die Ursache von bis zu maximal 10 der größten gefundenen Mängel (Entwicklungs-)Prozessen zu finden. Dabei werden Verbesserungen zur Beseitigung und zukünftigen Vermeidung dieser Ursachen erarbeitet und dokumentiert, um sie an das Prozessverbesserungsteam weiterzuleiten.

Diese Phase ist optional.

Überarbeitung (Editing)

Das Inspektionsprotokoll wird durch den Autor analysiert und die sich daraus ergebenden Korrekturmaßnahmen umgesetzt. Für alle protokollierten Auffälligkeiten müssen die durchgeführten Maßnahmen von den Autoren dokumentiert werden und, falls erforderlich, Änderungsanträge an die Autoren der Eingangsdokumente gestellt werden.

Nachbearbeitung

Der Autor meldet die Überarbeitungsphase an der Leiter der Inspektion als abgeschlossen und stellt diesem alle dokumentierten Nachweise zur Prüfung zur Verfügung. Der Leiter der Inspektion überprüft die korrekte Bearbeitung aller Auffälligkeiten. Dabei muss er „nur“ sicherstellen, dass nichts vergessen wurde. Die Nachbearbeitungsphase kann abgeschlossen werden, wenn der Leiter der Inspektion bereit ist, die Verantwortung für die Vollständigkeit der Bearbeitung durch die Autoren zu übernehmen.

Abschluss

Der Leiter der Inspektion stellt fest, ob die formalen Kriterien erfüllt sind, bevor er den Abschluss der Inspektion erklärt. Zu diesen Kriterien gehören die abgeschlossene Nachbearbeitungsphase, das Vorhandensein der erforderlichen statistischen Angaben, die Einhaltung der geplanten Raten und (insbesondere) dass sich die geschätzte Quote der verbleibenden Mängel (Restfehlerrate) innerhalb akzeptabler Grenzen liegt.

Fazit

Die Inspektion ist eine Review-Methode, die für sicherheitskritische Anwendungen ab einem bestimmten Sicherheitsniveau vorgeschrieben ist.

Der Nutzen, der sich aus ihrer korrekten Anwendung für die Entwicklungsorganisation ergibt, ist nicht zu unterschätzen. Die Methode fördert das Verständnis für das Produkt und unterstützt eine hohe Qualitätskultur.

Aufgrund des hohen zeitlichen und organisatorischen Aufwandes ist es jedoch ratsam, die Methode nur in den Fällen anzuwenden, in denen es zwingend erforderlich ist.

Um die für die Inspektion erforderlichen Daten wie Prüf- und Restfehlerraten erstmals zu ermitteln, empfehle ich, aus den bereits durchgeführten Reviews eines festzulegenden Zeitraumes (z.B. der zurückliegenden sechs Monate) entsprechende Werte zu ermitteln.

Um für die Organisation optimale Werte zu finden, sollten sie regelmäßig (z.B. nach Durchführung und Auswertung von x Inspektionen) überprüft und angepasst werden.