Simon Wicki
Business Psychology, Arbeits- und Organisationspsychologie, Hochschule Luzern
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. Das bedeutet, dass die Anforderungen im Laufe einer Produktentwicklung oft geändert werden müssen. Ä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 schwierig. Es müssen dabei verschiedene Einflussgrössen wie Business-Value, Komplexität, Risikobetrachtung, 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 Thinking Verschwendung zu vermeiden.
Der Weg durch den Dschungel: 6 Strategien für das Requirements Engineering
Um diese Herausforderungen zu meistern, können verschiedene Strategien und Methoden eingesetzt werden. Dazu gehören:
- 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.
- Effektive Erhebung der Anforderungen: Zur Erhebung der Anforderungen sollten geeignete Methoden gewählt werden (z. B.: Dokumentenanalyse, Selbstaufschreibung, Interviews, Fragebogen, Workshops, Gemba Walk etc.), damit alle relevanten Anforderungen erfasst werden können. Sich ändernde Anforderungen können den Entwicklungsprozess stören und zu Verzögerungen führen.
- Angemessene Dokumentation der Anforderungen: Die erhobenen Anforderungen sollten ausreichend dokumentiert werden (z. B.: die drei Perspektiven der Anforderungen: Datenperspektive, funktionale Perspektive und Verhaltensperspektive), um Missverständnisse zu vermeiden und eine klare Kommunikationsgrundlage zu schaffen. Dies ist entscheidend, um die Nachvollziehbarkeit und Qualität sicherzustellen. Eine gute Dokumentation ist korrekt, klar, vollständig (innerhalb des agilen Planungshorizonts), konsistent, nach Prioritäten geordnet, überprüfbar, veränderbar und nachvollziehbar.
- 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.
- 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.), damit die wichtigsten Anforderungen zuerst bearbeitet werden. Denn die Festlegung von Prioritäten ist entscheidend, aber oft komplex und konfliktträchtig.
- Umsetzung in Backlog-Items: Die Anforderungen werden im Rahmen des laufenden Refinement-Prozesses in kleinere, umsetzbare Aufgaben (sogenannte Product Backlog Items, kurz PBIs) zerlegt, um die Umsetzung zu erleichtern. Diese werden gemeinsam von Product Owner, Business Analyst und Developer nach dem INVEST-Prinzip aufgesplittet (Story Slicing).
Ob klassisch oder agil: Klare Prozesse und ein strukturiertes Vorgehen dienen allen Projekten und machen dich erfolgreich. Wir bei AgileAdvant bieten kompetente Beratung, Coaching und Schulung im Bereich Requirements Engineering an. Unsere Berater helfen, Risiken zu minimieren und die oben genannte Strategien zielgerichtet umzusetzen.
Blogbeitrag teilen
Über die Autoren
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.
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.
Senior Consultant / Agile Coach & Scrum Master
High-Performance Teams entwickeln und auf Basis von empirischen Daten langfristig Ziele erfolgreich erfüllen.
Senior Consultant / Agile Coach & Scrum Master
High Performance Teams entwickeln und auf Basis von empirischen Daten langfristig Ziele erfolgreich erfüllen.