Rezension: INCOSE Leitfaden für das Verfassen von Anforderungen
Schon vor über zehn Jahren hat INCOSE die erste Version des „Leitfaden für das Verfassen von Anforderungen“ veröffentlicht. Dieser Leitfaden ist heute wichtiger denn je, da wir für die Beschreibung von komplexen Systemen vernünftige Anforderungen formulieren müssen. Der Leitfaden wird regelmäßig aktualisiert, die Version 3.1 wurde im Frühjahr veröffentlicht.
Für wen lohnt sich die Lektüre des über 100 Seiten starken Leitfadens? Das und mehr in der folgenden Rezension.
In eigener Sache: Im Webinar am 19.29. Oktober beschreibe ich, wie die hier beschriebenen Regeln automatisiert umgesetzt werden können — jetzt anmelden >>
Zielgruppe: Menschen, die mit Anforderungen arbeiten; Hersteller von Assistenzsystemen für das Anforderungsmanagement.
Bewertung: ★★★★★ Hervorragend strukturiert, klar bezüglich Scope und Zielgruppe.
Erwerben: Der Leitfaden ist im INCOSE-Shop für €25 als PDF erhältlich. Für Mitglieder ist der Leitfaden kostenlos. Die siebenseitige Zusammenfassung ist auch für Nicht-Mitglieder kostenlos.
Scope
Der INCOSE Leitfaden für das Verfassen von Anforderungen setzt sich wirklich nur diesem Thema auseinander, und sonst nichts. Andere wichtige Aktivitäten, wie zum Beispiel das erheben von Anforderungen oder die Verfeinerung sind außen vor. Wen solche Tätigkeiten interessieren, empfehle ich andere Literatur, wie bspw. das INCOSE SE-Handbuch oder das IREB-Handbuch zum agilen Anforderungsmanagement.
Der Leitfaden unterscheidet zwischen Anforderungen (Requirements) und Bedürfnissen (Needs). Er berücksichtigt das formulieren einzelner Anforderungen und Bedürfnisse (Individual), sowie Gruppen von Anforderungen und Bedürfnisse (Sets).
Charakteristiken
Der Leitfaden definiert 14 Charakteristiken, die unsere Anforderungen und Bedürfnisse, bzw. Gruppen dieser, erfüllen sollte. Diese haben die Bezeichnungen C1-C14.
C1 (Erforderlich) besagt zum Beispiel, dass einzelne Anforderungen und Bedürfnisse erforderlich sein müssen. Das klingt im ersten Moment vielleicht trivial, aber es ist erstaunlich, wie häufig wir überflüssige Anforderungen in der Praxis finden. Das liegt unter anderem daran, dass wir eine natürliche Aversion gegen das Löschen haben.
C11 (Widerspruchsfrei) bezieht sich auf Gruppen und besagt, dass diese übereinstimmen müssen. Ein Einfaches Beispiel aus dem Design wären Längenangaben, bei denen die Einzellängen aufaddiert nicht die korrekte Gesamtlänge ergeben.
Regeln
Mit den bis dahin vorgestellten Definitionen und Charakteristiken können nun die Regeln definiert und Klassifiziert werden. Die Zusammenfassung enthält Tabellen, mit derer wir schnell die Charakteristiken finden können, die eine Regel umsetzt. Oder umgekehrt, wir können systematisch die Regeln finden, die uns helfen, ein Charakteristikum zu überprüfen.
Die Regeln sind so formuliert, dass eine eindeutige Überprüfung möglich ist. Für manche Regeln ist das so einfach, dass eine automatische Prüfung möglich und sinnvoll ist. Zum Beispiel führen wir Regel R13 schon seit bestimmt 30 Jahren automatisch durch: R13: Use correct spelling.
Andere Regeln können wir inzwischen mit Hilfe von Natural Language Processing (NLP) automatisieren, wie R5: Use definite article „the“ vs „a“.
Alle Regeln beziehen sich auf mehr als ein Charakteristikum und manche beziehen sich auch auf Gruppen. Ein Einfaches Beispiel für letzters ist R36, Use terms & units of measure consistently.
Attribute
Informationen zu Anforderungen (oder Bedürfnissen) stecken nicht immer im Anforderungstext. Oft stecken diese in dazugehörigen Attributen. Ein einfaches Beispiel ist A15, Unique Identifier.
Attribute können einen Beitrag zu den Charakteristiken leisten. Das oben erwähnte Charakteristikum C1 (Erforderlich) wird zum Beispiel vom Attribute Rationale (Begründung) unterstützt.
Im Kontext dieses Leitfadens wird die Nachverfolgbarkeit (Traceability) übrigens auch über Attribute berücksichtigt. Es gibt die Attribute A2 Trace to Parent und A3 Trace to Source.
Zielgruppe und Anwendung des INCOSE Leitfadens
Auf Seite 8 beschreibt der Leitfaden die Zielgruppe: Im Prinzip alle Menschen, die mit Anforderungen und Bedürfnissen arbeiten. Dem stimme ich zu. Allerdings sehe ich die Personen, die Prozesse definieren und Werkzeuge konfigurieren als eine wichtige Untergruppe. Diese Personen können den Projektzielen entsprechend und basierend auf dem Leitfaden die richtigen Checklisten erstellen, die Werkzeuge entsprechend konfigurieren, und so weiter.
Auch wenn es lobenswert wäre, immer alle Regeln des Leitfadens umzusetzen, so sollte in der Praxis auf das richtige Kosten-Nutzen-Verhältnis geachtet werden. Konkretes Beispiel: Es macht sicher Sinn, die Autoren von Anforderungen zu schulen und ihnen Regel R5 zu vermitteln (Use definite article „the“ vs „a“). Allerdings ist es in den meisten Fällen Zeitverschwendung, diesen Punkt in einer expliziten Review-Checkliste aufzuführen.
Weitere Zielgruppe: Hersteller von KI-Assistenten
Für meine Aktivitäten besonders interessant ist der Hinweis, dass sich der Leitfaden auch an die Hersteller von KI-Assistenten richtet. Im Leitfaden wird zurecht erwähnt, dass die Anzahl der Regeln überwältigend sein kann. Eine Umsetzung in entsprechenden Werkzeugen würden die Autoren begrüßen.
Solche Aktivitäten gibt es bereits. Zum Beispiel arbeitet Jama Software an einer Umsetzung, die Interessierte unter labs.jamasoftware.com ausprobieren können.
Fazit
Der INCOSE Leitfaden für das Verfassen von Anforderungen ist inzwischen ein in sich schlüssiges, hervorragend strukturiertes Hilfsmittel für das Schreiben hochqualitativer Anforderungen und Bedürfnisse. Es besteht eine gewisse Gefahr, dass Leser entweder abgeschreckt werden oder umgekehrt, es beim Prüfen der Anforderungen übertreiben. Doch ich denke, dass wir mit der Gefahr leben können.
Photo by Kelly Sikkema on Unsplash, combined with INCOSE