Anforderungsmanagement:
Was beinhaltet es?

Anforderungen bzw. Requirements werden in der Software- bzw. Systementwicklung bestimmt, um die Ziele eines Produkts zu definieren.

Die Anforderungen werden von Stakeholdern eingebracht, also von allen Personen oder Organisationen, die Einfluss auf das Produkt haben. Die Gesamtheit der erfassten Anforderungen legt das systematische Vorgehen zur Entwicklung des Produkts von der Idee bis zur finalen Umsetzung fest und wird Spezifikation genannt. Bei den agilen Verfahren wiederum werden laufend Anforderungen erhoben, dokumentiert und validiert. Dementsprechend werden bei dieser Form von Verfahren im Entwicklungsprozess weitere Spezifikationen festgelegt.

Eine Anforderung muss begründet sein, was bedeutet: Sie muss eindeutig zur Erreichung eines Ziels beitragen. Sie kann in unterschiedlichen Detailgraden erfasst und dokumentiert werden.

Neben den funktionalen Anforderungen einer Software bzw. eines Systems, welche den grundlegenden Betrieb eines Produkts ermöglichen, besitzt jedes Produkt Qualitätsanforderungen. Diese Qualitätsanforderungen und deren Umsetzung bestimmen die Zufriedenheit der Stakeholder bei der Anwendung. Die Randbedingungen wiederum, bestimmen klar den Lösungsraum für die Art von Anforderungen.

Die Analyse der Anforderungen an ein Produkt geschieht im Prozess des Requirements Engineerings. Das Anforderungsmanagement – oder auch Requirements Management – soll sicherstellen, dass diese Anforderungen an das zu entwickelnde Produkt erfüllt werden. Die Grenzen der beiden Aufgabenbereiche verlaufen fließend, es herrscht auch keine einheitliche Definition.

1. Vorteile des Anforderungsmanagements

Hat das Requirements Engineering die Anforderungen identifiziert, entscheidet das Anforderungsmanagement über den Erfolg oder Misserfolg eines Projekts. 

Häufig fallen Produktentwicklungsprozesse umfassend und komplex aus, wobei ein effizientes Anforderungsmanagement Fehlern und Missverständnissen frühzeitig entgegenwirken kann. Darüber hinaus gibt es plangetriebene sowie agile Entwicklungsmethoden. Bei agilen Entwicklungsprozessen ändern sich die Anforderungen oftmals oder werden erweitert. Ein gutes Anforderungsmanagement ist fähig, auf veränderte Anforderungen zu reagieren. 

Die Vorteile des Anforderungsmanagements lauten konkret:

  • Geringere Fehleranfälligkeit: Ist die Spezifikation der Anforderungen vollständig (wobei agile Prozesse nur “zunächst” vollständig sein können), eindeutig und frei von Widersprüchen, entstehen weniger Fehler während der Projektentwicklung. 
  • Früherkennung von Unstimmigkeiten: Probleme und notwendige Änderungen werden früh erkannt, womit man ihnen leichter entgegenwirken kann.
  • Weniger Anforderungsänderungen: Die Anforderungsspezifikation ist klar definiert und durchdacht. Änderungen von Anforderungen während des Entwicklungsprozesses werden somit minimiert.
  • Bessere Planbarkeit: Durch eine klare Anforderungsspezifikation können deutlich genauere Prognosen über Termine und anfallende Kosten für das Projekt bestimmt und an Stakeholder kommuniziert werden.
  • Höhere Kundenzufriedenheit: Durch das Erreichen klar definierter Ziele von Anforderungen sind Stakeholder wesentlich begeisterter vom Endresultat.
  • Ideale Ausgangslage für Folgeprodukte: Auf dem Erstprodukt aufbauende Systeme können auf die definierte Anforderungsspezifikation des Vorgängers zurückgreifen.

2. Aufgaben des Anforderungsmanagements

Grundvoraussetzung für die erfolgreiche Umsetzung einer Produktentwicklung ist das Teilen derselben Vision aller Beteiligten. Die Ziele, Maßnahmen und die einzelnen Schritte zur Umsetzung müssen jedem Mitglied klar sein. Das Anforderungsmanagement muss diesen Aspekt der Projektentwicklung gewährleisten und pflegt dazu den ständigen Austausch zwischen allen Bereichen, hält darüber hinaus auch den Kontakt zu den Stakeholdern, um deren Bedürfnisse stets zu berücksichtigen. 

Das Anforderungsmanagement besteht dabei in der Regel aus vier Disziplinen. Die Abfolge der einzelnen Disziplinen laufen dabei nicht nacheinander ab, sondern wiederholen sich während des gesamten Prozesses immer wieder. Das International Requirements Engineering Board (IREB) ist eine gemeinnützige Organisation zur Erstellung eines effizienten Standards für das Requirements Engineering und formuliert die vier Disziplinen des Anforderungsmanagements folgendermaßen:

2.1. Anforderungserhebung

In der Anforderungserhebung sollen alle Anforderungen an das Produkt vollständig und möglichst fehlerfrei ermittelt werden. Zunächst ist es wichtig, alle Anforderungsquellen wie zum Beispiel Stakeholder, Daten und Dokumente (Referenzmodelle, Handbücher, Berichte usw.) oder in Betrieb genommene Systeme ausfindig zu machen und anhand dessen ein einheitliches Verständnis für das Projektziel zu formulieren. Um die Anforderungen möglichst genau zu erfassen, sind unterschiedliche Methoden zur Anforderungserhebung notwendig. So bieten sich zum Beispiel Interviews und Workshops gemeinsam mit den Stakeholdern an. Auch Feldbeobachtungen, bei denen vor Ort Arbeitsprozesse genau dokumentiert werden, sind zielführend. 

2.2. Anforderungsdokumentation

Nach der Ermittlung aller Anforderungen, ist eine möglichst genaue Formulierung notwendig. In der Anforderungsdokumentation sollten die Anforderungen eindeutig, für alle Teammitglieder verständlich und testbar beschrieben werden. Dabei können die Anforderungen nicht nur textlich, sondern auch mit Hilfe von Grafiken – besonders UML-Diagramme – erfasst werden. Grafiken eignen sich speziell zum Darstellen von konkreten Prozessen oder Use-Cases. 

Für eine eindeutige Absprache mit den Auftraggeber*innen entwirft das Anforderungsmanagement in diesem Schritt ein Lastenheft. Darin werden sämtliche erwartete Leistungen und Lieferungen des Projektteams festgehalten. Für die genaue Festschreibung der Umsetzung wird außerdem ein Pflichtenheft erstellt. 

Am Ende der Anforderungsdokumentation entsteht die Spezifikation, die alle relevanten Anforderungen detailliert enthält. 

2.3. Anforderungsprüfung und -abstimmung

Die nun formulierte Anforderungsspezifikation wird auf ihre Richtigkeit und Qualität überprüft. Das Anforderungsmanagement prüft dabei nicht nur die inhaltliche und formale Qualität der einzelnen Anforderungen, sondern die Spezifikation als Ganzes. Außerdem werden Risiken des Produktentwicklungsprozesses erfasst und eingeschätzt.

Bei der Prüfung sollte sich das Anforderungsmanagement folgende Fragen stellen:

  • Wurden die Anforderungen korrekt erfasst?
  • Sind die Anforderungen frei von Missverständnissen?
  • Repräsentiert die Dokumentation alle Anforderungen auch inhaltlich korrekt?
  • Verstehen alle Stakeholder die Anforderungen und sind alle dafür notwendigen Begrifflichkeiten klar definiert und dokumentiert?

Nach der Anforderungsprüfung wird die Dokumentation den Stakeholdern vorgelegt, um eine Einigung zu erzielen. Kommt es hier zu Unstimmigkeiten oder auch Konflikten zwischen den Stakeholdern, – sei es aus fachlichen oder auch aus persönlichen Gründen – ist es die Aufgabe des Anforderungsmanagements, diese Probleme zu analysieren und aufzulösen. Im Folgenden werden Anforderungen so modifiziert, bis alle Stakeholder zustimmen. Die neuen Ergebnisse werden dokumentiert, das Lastenheft und das Pflichtenheft angeglichen. Erst dann beginnt die Umsetzung des Projekts. 

2.4. Anforderungsverwaltung

Die Verwaltung von Anforderungen umfasst zahlreiche Aktivitäten, die über die Projektlaufzeit hinweg die Pflege der Anforderungen und damit eine gleichbleibende Qualität des laufenden Projektentwicklungsprozesses gewährleisten sollen. 

Zunächst werden Anforderungen und ihre Implementierung priorisiert. Im nächsten Schritt bekommen alle Projektmitarbeiter*innen Rollen zugewiesen und Verantwortungsbereiche bestimmt.  Ferner ist es die Aufgabe der Anforderungsverwaltung, alle Anforderungen und damit verbundenen Informationen so abzulegen, dass jedes Teammitglied im System findet, was es benötigt. Ebenso übernimmt die Verwaltung die Zeitplanung einzelner Releases.

Die Anforderungsverwaltung verantwortet ebenso die Aktualisierung der Spezifikation: Anforderungen verändern sich oder entwickeln sich während der Produktentwicklung. Diese Veränderungen müssen zur Nachverfolgbarkeit dokumentiert und erneut mit Stakeholdern abgestimmt werden. Dieser Vorgang wird im Speziellen auch Änderungsmanagement genannt. 

Mittels Monitoring können die neuen Implementierungen getestet und auf diese Weise mit den Anforderungen abgeglichen werden. Für die Tests werden konkrete Use Cases entwickelt, um die Implementierungen auf Erfolg überprüfen zu können. Diese Tests können für alle Anforderungen durchgeführt werden.

Da die Spezifikation meist umfangreich und komplex ist, eignen sich für die Anforderungsverwaltung spezielle Tools. 

3. Herausforderungen des Anforderungsmanagements bei der Produktentwicklung

Gestaltet das Anforderungsmanagement alle vier Disziplinen während der Produktentwicklung erfolgreich, sieht es sich weiteren Herausforderungen ausgesetzt, die von Stakeholdern bestimmt werden:

  • Ziele der Produktentwicklung „in time“, „in budget“ und „in specification“ erreichen: Häufig müssen während der Projektentwicklung Kostenrahmen erweitert oder zeitliche Ziele neu terminiert werden, um alle und vor allem neu entstandenen Anforderungen implementieren zu können. Ist die Projektleitung damit nicht einverstanden, müssen die Anforderungen priorisiert werden. Das Anforderungsmanagement entscheidet, welche Anforderungen implementiert werden und welche wegfallen.
  • Zeitnahe Entwicklung: Unternehmen müssen ihre Lösungen heute sehr schnell entwickeln, da sie sich oft nicht nur gegen bestehende Konkurrenz, sondern auch gegen die Lösungen neugegründeter Firmen durchzusetzen haben. Durch die schnelle, globale Verbreitung über das Web erreichen und etablieren sich neue Firmen und ihre Lösungen in sehr kurzen Zeiträumen.
  • Ansprüche von Stakeholdern ändern sich: Neue Lösungen bringen neue Anforderungen mit sich, die bei einem aktuellen Produkt noch als Novum gelten, für die nächsten Produkte allerdings schon Voraussetzung sind. Ein Anforderungsmanagement muss den aktuellen Markt kennen und klar erfassen können, wie es die dynamischen Ansprüche der Stakeholder erfüllt. 

4. Fazit

Ein genaues und zeitsparendes Anforderungsmanagement erweist sich als unverzichtbar, um bei einer Produktentwicklung erfolgreich zu sein. Die Ansprüche von Stakeholdern an Produkte ändern und erweitern sich stetig, Entwicklungsprozesse werden damit immer umfassender und komplexer. Gleichzeitig steigt die Nachfrage an neuen, spezifischen Lösungen. 

Um den Herausforderungen einer Projektplanung gerecht zu werden, ist ein erfolgreiches Requirements Engineering zu Beginn des Projekts die Voraussetzung. Mit der Ermittlung von Anforderungen lassen sich bereits in den ersten Schritten kosten- und zeitaufwendige Fehler vermeiden, Zeitpläne erstellen und eine klare Abstimmung mit Stakeholdern erreichen. 

Die Technikum Wien Academy ist offizieller Trainingsanbieter des International Requirements Engineering Board (IREB) und bietet ein zertifiziertes Programm an, bei dem du alle Fähigkeiten zum erfolgreichen Requirements Engineering erlernst. Bewirb dich jetzt für unseren Kurs IREB CPRE Foundation Level für Requirements Engineering!

Gemäß der alten Projektmanagement-Weisheit „Sag mir wie dein Projekt beginnt und ich sage dir, wie es endet“ widmet sich der Master Lehrgang Projekt- und Prozessmanagement zudem ausführlich dem Requirements Engineering.

Quellen: 

  1. https://www.ionos.at/digitalguide/websites/web-entwicklung/was-ist-anforderungsmanagement, IONOS SE 
  2. https://t2informatik.de/wissen-kompakt/anforderungsmanagement/, t2informatik GmbH 
  3. https://www.adito.de/knowhow/blog/anforderungsmanagement, ADITO Software GmbH
Melde dich hier direkt für die gewünschte Weiterbildung an