Agiles Requirement Engineering: Ein Leitfaden für die Produktentwicklung

Simon Wicki

Simon Wicki

Business Psychology, Arbeits- und Organisationspsychologie, Hochschule Luzern

Albert Bachmann

Albert Bachmann

Senior Consultant / Agile Coach & Scrum Master

Das Requirements Engineering ist ein zentraler Bestandteil der agilen Produktentwicklung. Es handelt sich dabei um den Prozess, in dem die Anforderungen an ein System oder Produkt ermittelt, analysiert, dokumentiert und verwaltet werden. Dieser Prozess ist jedoch nicht immer einfach umzusetzen und bringt eine Reihe von Herausforderungen mit sich.

Die Herausforderungen des agilen Requirements Engineering

Die agile Philosophie legt einen starken Fokus auf Flexibilität und Anpassungsfähigkeit. Dies bedeutet, dass die Anforderungen im Laufe einer Produktentwicklung oft geändert werden müssen. Diese Veränderungen können dazu führen, dass ursprünglich festgelegte Anforderungen überarbeitet oder sogar verworfen werden müssen. Zudem kann die Kommunikation zwischen den verschiedenen Anspruchsträgern eine Herausforderung darstellen.

Die Priorisierung dieser Anforderungen ist oft herausfordernd. Es müssen dabei verschiedene Einflussgrössen wie Business-Value, Komplexität, Risiko-Betrachtung, Aufwand, hierarchische und firmenpolitische Faktoren, Kosten und zeitliche Rahmenbedingungen berücksichtigt werden. Der Umfang der Dokumentation soll sich dem agilen Umfeld entsprechend gestalten, um im Sinne des Lean-Gedankens Waste (Verschwendung) zu vermeiden.

Der Weg durch den Dschungel: 6 Strategien für das Requirements Engineering

Um diese Herausforderungen zu meistern, gibt es verschiedene Strategien und Techniken, die angewendet werden können. Dazu gehören:

  1. Klare Definition und Dokumentation des Systemdenkens (Systemgrenzen bestimmen, Einflussgrössen ermitteln, Unter- und Teilsysteme abgrenzen, Schnittstellen zwischen Unter- und Teilsystemen zu relevanten Umsystemen ermitteln, analysieren und Gemeinsamkeiten in den abgegrenzten Unter- und Teilsystemen ermitteln). Es ist wichtig, das System, für das die Anforderungen erhoben werden, genau zu definieren und zu dokumentieren. Unklare, widersprüchliche oder unvollständige Anforderungen führen oft zu Missverständnissen und Fehlinterpretationen.
  2. Effektive Erhebung der Anforderungen: Es sollten geeignete Methoden zur Erhebung der Anforderungen gewählt werden (z.B: Dokumentenanalyse, Selbstaufschreibung, Interviews, Fragebogen, Workshops, Gemba-Walk, etc.), um sicherzustellen, dass alle relevanten Anforderungen erfasst werden. Sich ändernde Anforderungen können den Entwicklungsprozess stören und zu Verzögerungen führen.
  3. Adäquate Dokumentation der Anforderungen: Die erhobenen Anforderungen sollten ausreichend dokumentiert werden (z.B: die 3 Perspektiven der Requirements: Daten-Perspektive, Funktionale-Perspektive und Verhaltens-Perspektive), um Missverständnisse zu vermeiden und eine klare Kommunikationsgrundlage zu schaffen. Die ist entscheidend, um die Nachvollziehbarkeit und Qualität sicherzustellen. Eine gute Dokumentation hat folgende Charakteristiken: korrekt, eindeutig, vollständig (im Rahmen des agilen Planungshorizontes), widerspruchsfrei, priorisiert, verifizierbar, modifizierbar, nachverfolgbar.
  4. Verifizierung und Validierung von Anforderungen: Die Anforderungen sollten auf Konsistenz überprüft und validiert werden, um sicherzustellen, dass sie realisierbar und rechtlich zulässig sind. Die Akzeptanzkriterien sind mit allen Anspruchsträgern abgestimmt und ein gemeinsames Verständnis ist vorhanden.
  5. Priorisierung von Anforderungen: Es sollte eine Methode zur Priorisierung der Anforderungen angewendet werden (Beispiele könnten sein: Präferenzmatrix, Nutzwertanalyse, Eisenhower-Matrix, MoSCoW-Methode, WSJF, RICE etc.), um sicherzustellen, dass die wichtigsten Anforderungen zuerst bearbeitet werden. Denn die Festlegung von Prioritäten ist entscheidend, aber oft komplex und konfliktträchtig.
  6. Umsetzung in Backlog-Items: Die Anforderungen werden im Rahmen des laufenden Refinement-Prozesses in kleinere, umsetzbare Aufgaben (sogenannte Product-Backlog-Items, kurz PBI’s) zerlegt, um die Umsetzung zu erleichtern. Diese werden gemeinsam von Product-Owner, Business-Analyst und Developer nach dem INVEST-Prinzip aufgesplittet (Story-Slicing).

Ob Sie es klassisch oder agil anpacken: Klare Prozesse und ein strukturiertes Vorgehen dienen allen Projekten und machen sie erfolgreich. Wir bei AgileAdvant bieten Ihnen kompetente Beratung, Coaching und Schulung im Bereich Requirements Engineering an. Unsere Berater helfen Ihnen Risiken zu minimieren und oben genannte Strategien zielgerichtet umzusetzen.

AgileAdvant - Ihr Partner für die erfolgreiche Entwicklung von Software, Systemen und Produkten.

Blog-Beitrag teilen

Über die Autoren

Simon Wicki
Simon Wicki

Business Psychology, Arbeits- und Organisationspsychologie, HSLU Luzern

Ich bin leidenschaftlicher Teamplayer. Besonders interessiert mich die Psychologie innerhalb und zwischen Teams. Dabei spielt die richtige Kommunikation eine entscheidende Rolle.

Simon Wicki
Simon Wicki

Business Psychology, Arbeits- und Organisationspsychologie, HSLU Luzern

Ich bin leidenschaftlicher Teamplayer. Besonders interessiert mich die Psychologie innerhalb und zwischen Teams. Dabei spielt die richtige Kommunikation eine entscheidende Rolle.

Albert Bachmann
Albert Bachmann

Senior Consultant / Agile Coach & Scrum Master

High Performance Teams entwickeln und auf Basis von empirischen Daten langfristig Ziele erfolgreich erfüllen.

Albert Bachmann
Albert Bachmann

Senior Consultant / Agile Coach & Scrum Master

High Performance Teams entwickeln und auf Basis von empirischen Daten langfristig Ziele erfolgreich erfüllen.

Unsere Standorte:

AgileAdvant
Werftestrasse 3
6005 Luzern
Schweiz

AgileAdvant 
Obermattweg 8
6052 Hergiswil
Schweiz