Standards

Dieser Abschnitt beschreibt, welche Kriterien sich zum Thema Anforderungsdokumentation etabliert haben und von welchen Organisationen oder Unternehmen diese stammen. Es muss stets je Projekt entschieden werden, welche Kriterien für die Anforderungsdokumentation angewendet werden sollen.

Umgang mit Anforderungen


Qualitätskriterien nach IEEE 830

Bereits im Jahr 1998 hat das Institute of Electric and Electronic Engineers (IEEE) den Standard IEEE 830 definiert. Dieser legt grundlegende Qualitätskriterien für die Dokumentation von Anforderungen fest:

Die im Standard IEEE 830 formulierten Kriterien sind:

  • Korrekt: Die Anforderungen sind von den verantwortlichen Anforderungsstellern geprüft und verabschiedet.
  • Eindeutig: Interpretationsfrei formuliert, sie definieren eindeutig was gewünscht ist und können nicht in unterschiedlicher Weise verstanden werden.
  • Vollständig: Durch den Anforderungssteller ist sichergestellt, dass die Formulierung nicht nur korrekt, sondern auch vollständig ist. Hier dürfen keine Aspekte weggelassen werden.
  • Konsistent: Die Beschreibung ist so durchgeführt und geprüft worden, dass einzelne Anforderungen nicht automatisch andere Anforderungen in Frage stellen und nicht bekannte weitere Änderungen erforderlich machen.
  • Bewertet (Priorität /Aufwand): Formulierte Anforderungen sind vom Anforderungssteller priorisiert. Sie sind mit einer Wichtigkeit versehen und haben eine erste grobe Aufwandsschätzung.
  • Prüfbar: Zu jeder Anforderung sind so genannte »Akzeptanzkriterien« formuliert, die aussagen, unter welchen Bedingungen die Anforderung durch den Anforderungssteller abgenommen wird.
  • Modifizierbar / granular: Die Anforderungen sind so granular formuliert, dass eine Änderung möglich wäre, ohne dass andere Anforderungen betroffen wären.
  • Verfolgbar: Die Formulierungen müssen so durchgeführt werden, dass eine Nachvollziehbarkeit und Verfolgbarkeit gewährleistet wird. Vom Wunsch eines Stakeholders bis zur Projektplanung und zur Realisierung und Abnahme sollte die Anforderung verfolgbar sein. Dies wird z. B. durch die Zuordnung eindeutiger Nummern pro Anforderung grundsätzlich ermöglicht.
  • Gültig und aktuell: Der Anforderungssteller hat die formulierten Anforderungen aktuell zu halten.

Sophist Group

Das Buch der Sophist Group »Requirements-Engineering und -Management« gilt für viele Anforderungsanalysten als Standardwerk zum Umgang mit Anforderungen.

Die Sophist Group erweitert den Standard IEEE 830 noch um folgende Kriterien:

  • Klassifizierbar: Hiermit ist die Klassifizierbarkeit bezüglich der juristischen Verbindlichkeit gemeint. Jedem Vertragspartner ist die rechtliche Relevanz der Anforderung klarzumachen.
  • Verstehbar: Die Anforderungen müssen für alle Stakeholder verständlich sein. Es kann erforderlich sein, je nach Projektphase unterschiedliche Dokumentationstechniken für die unterschiedlichen Stakeholder zu verwenden.
  • Gültigkeit – Aktualität der Anforderungen: Anforderungen sind aktuell zu halten. Ändern sich Anforderungen, sind deren Dokumentation anzupassen und die Änderung festzuhalten.
  • Realisierbar: Anforderungen müssen mit den bekannten Fähigkeiten, den Grenzen des Systems und seiner Umgebung umsetzbar sein. Hier ist die Abstimmung mit der Entwicklung zu suchen, welche die Anforderungen auf Realisierbarkeit und Realisierungskosten prüfen kann.
  • Notwendig: Jede Anforderung sollte eine Leistung oder Eigenschaft beschreiben, die der Kunde tatsächlich benötigt oder die zur Anpassung an ein externes System benötigt wird. Eine Anforderung ist nur dann notwendig, wenn Sie der Erfüllung eines Systemziels dient.

INVEST-Merkmale nach Cohn

Die INVEST-Merkmale nach Cohn sind speziell für User-Stories (eine Art der Anforderungsdokumentation in agilen Vorgehensmodellen) formuliert, können aber auch ohne diese auf Anforderungen angewendet werden.

Es sind die folgenden Merkmale:

  • Unabhängig (independent): Anforderungen sollen unabhängig voneinander sein. Idealerweise sollten sie in beliebiger Reihenfolge umgesetzt werden können; Abhängigkeiten führen zu Risiken.
  • Verhandelbar (negotiable): Eine Anforderung sollte so formuliert sein, dass sie einen Gestaltungsspielraum enthält, über den in den Planungssitzungen verhandelt werden kann. Dies erhöht die Produktivität des Entwicklungsteams, da hier die Kreativität des Teams mit eingebracht werden kann.
  • Nützlich (valuable): Eine Anforderung sollte so formuliert sein, dass der konkrete Nutzen erkennbar ist.
  • Schätzbar (estimatable): Eine Anforderung muss verständlich formuliert sein, sodass sie vom Team geschätzt werden kann.
  • Klein (small): Anforderungen sollten in kleinen Paketen beschrieben werden. Komplexe Anforderungen sollten weiter unterteilt werden.
  • Testbar (testable): Alle Anforderungen sollten testbar sein. Dazu sollten Akzeptanzkriterien zu jeder Anforderung vorliegen.

Wie in Scrum professionell mit Anforderungen umgegangen werden kann, lesen Sie im Kapitel „Requirements Engineering mit Scrum


Scrum Einführung

Über den Autor

Die itemis AG ist ein unabhängiges IT-Beratungs­unternehmen, das leistungsfähige Software für Unternehmens­anwendungen, eingebettete Systeme und mobile Applikationen entwickelt – und über diese Themen bloggt.