„Nur qualitativ hochwertige Anforderungen erzeugen hochwertige Produkte“ – Teil 1

Warum JEDER die Qualität von Anforderungen messen kann und soll

Der in der Literatur meist genannte Grund zur Einführung von Requirements Engineering ist das Sichern des Projekterfolgs. Denn zahlreiche bekannte Projekte zeigen, dass undefinierte Anforderungen häufig Ursache dafür sind, dass die festgelegten Zeit- und Budgetrahmen nicht eingehalten werden können. Belegt wird dies durch den jährlich erscheinenden CHAOS Report der Standish Group, laut dem (im Jahr 2009) nur 32% aller Projekte im IT-Umfeld erfolgreich abgeschlossen wurden.

Um die Zeit- und Budgetvorgabe eines Projektes einhalten zu können, ist neben der Aufgabe Anforderungen überhaupt zu erheben, wichtig, dass diese auch noch ein gewisses Qualitätsniveau aufweisen.

In dieser neuen Blogserie, bestehend aus mindestens sechs Teilen, wird die Qualitätsprüfung von Anforderungen erläutert und die wichtigsten Werkzeuge hierfür vorgestellt. Die heutige, erste Episode beschäftigt sich mit der Motivation für eine Qualitätsmessung von Anforderungen und stellt einige einfache Beispiele dafür dar, was überhaupt wie gemessen wird. Im darauf folgenden Teil wird ein Überblick über vorhandene Qualitätsmetriken für natürlichsprachliche Anforderungen dargestellt. Spätere Episoden werden unter anderem die Vorbereitungen für Qualitätsmessungen und die Beurteilung von Messergebnissen genauer beschreiben.

Schlechte Anforderungen bergen eine Vielzahl an Risiken. Als mögliche Ausprägungen sind Fehlinterpretationen und daraus resultierende Fehlinterpretationen zu nennen. Aber auch die oben genannte Überschreitung der Zeit- und Budgetgrenzen des Projektes, bis hin zum kompletten Scheitern des geplanten Vorhabens, sind mögliche Auswirkungen.

Eine Anleitung dafür, wie man diese Risiken umgeht indem man gute Anforderungen schreibt ist das SOPHIST REgelwerk aus dem Buch „Requirements-Engineering und -Management“ [Chris Rupp & die SOPHISTen]. Es zeigt mögliche Fehler bei der Anforderungsformulierung auf und liefert dem Leser hierzu die passenden Lösungsvorschläge.

Um allerdings bereits dokumentiere Anforderungsspezifikationen auf unerwünschte sprachliche Effekte zu prüfen ohne den Aufwand zu betreiben jede einzelne Anforderung zu zerlegen, sollte sich der Requirements Engineer folgender Hilfsmittel bedienen:

  • Qualitätskriterien
  • Qualitätsmetriken


Qualitätskriterien

Durch Qualitätskriterien wird definiert, welche Eigenschaften eine Anforderung oder gesamte Spezifikation aufweisen muss, um als qualitativ hochwertig zu gelten.

Auf die genaue Definition der einzelnen Kriterien einzugehen würde jedoch den Rahmen dieses Blogbeitrags sprengen. Zu erwähnen ist jedoch, dass ihre Erfüllung sich allerdings als oberstes Ziel für die Qualität von Anforderungsspezifikationen besonders eignet.

Es bleibt allerdings zu beantworten, wie man die Erreichung dieser gesetzten Qualitätsziele objektiv bewerten und vergleichen kann.

Qualitätsmetriken
Bei dieser Problemstellung helfen dem Requirements Engineer Metriken, denn diese machen die Qualität für die Projektbeteiligten auf unterschiedliche Arten messbar. Sie drücken also den aktuellen Qualitätsstand einer Anforderung oder Spezifikation in Zahlen aus.

Dies kann beispielsweise geschehen indem man überprüft, wie viele Anforderungen aus einer Stichprobe von „n“ Anforderungen (aus einer Spezifikation) gegen ein bestimmtes Qualitätskriterium verstoßen. Hierdurch wird ein prozentueller Wert generiert, der eine Bewertung der Anforderungsqualität für das gewählte Kriterium ermöglicht.
Um den Einstieg in die Qualitätsmessung zu erleichtern, sollen im Folgenden die einfachsten – am schnellsten zu erzeugende – Kennzahlen betrachtet werden:

Umfang
Eine erste Messgröße, die Einfluss auf die Qualität der Anforderungsspezifikation hat, ist der Umfang (in Anzahl an Anforderungen gemessen). Vom Umfang hängt nicht nur die Systemkomplexität ab, sondern auch, wie in den nächsten Teilen dieser Blogserie dargestellt wird, die Größe der zu wählenden Messstichprobe und die Berechnungsformeln komplexerer Qualitätsmetriken wie beispielsweise die „Identifizierbarkeit“.

Mit Hilfe eines Requirements Management Tools lässt sich der Spezifikationsumfang ohne zusätzlichen Aufwand automatisiert anzeigen.

Eindeutigkeit
Die Eindeutigkeit zeigt den Grad an ungewollter Interpretationsmöglichkeit auf, indem Anteil effektbehafteter Anforderungen betrachtet wird.

Das SOPHIST REgelwerk beschreibt, dass im Passiv formulierte Anforderungen gewisse Gefahren in sich bergen. So ist es z. B. hier häufig der Fall, dass der Akteur eines Prozesses ungenannt bleibt.

Deshalb ist der prozentuelle Anteil an Anforderungen (aus einer Stichprobe) die solche unerwünschten Effekte aufweisen, eine der wichtigsten Kennzahlen für die Qualität einer Anforderungsspezifikation.

einige simple Metriken
Eine Beschreibung, sowie eine Benutzeranleitung, weiterer leicht einzuführender Qualitätskenngrößen wie den Anteil an Passivsätzen und die Lesbarkeit nach Flesch, die sich beide automatisch mit Hilfe der Lesbarkeitsstatistik von Microsoft Word erheben lassen, sind in unserem Dokument „Qualitätsmetriken der einfachen Art“ HIER zu finden.

Neben diesen eher trivialen Ansätzen zum Erzeugen von Messgrößen für die Qualität einer Anforderungsspezifikation gibt es eine Vielzahl durchaus komplexerer.

Einen Überblick über die gängigsten Metriken und deren Einsatzgebiete wird im zweiten Teil von „Nur qualitativ hochwertige Anforderungen erzeugen hochwertige Produkte“ geliefert.

Hier finden Sie den zweiten Teil der Blogserie „Nur qualitativ hochwertige Anforderungen erzeugen hochwertige Produkte“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert