Die 8 größten Probleme mit Anforderungen und 7 Problemlösungen dafür/dagegen

Kennen Sie das auch? Requirements ändern sich, Anforderungen finden sich nicht in der IT-Lösung wieder, es gibt unterschiedliche bzw. konkurrierende Anforderungen.

Eine Studie hat die 8 größten Probleme rund um Anforderungen identifiziert und spricht Handlungsempfehlungen aus, um diesen Problemen zu begegnen.

Die 8 größten Probleme mit Anforderungen
  1. Fehlende Anforderungen
  2. Versteckte Bedürfnisse der Stakeholder
  3. Unzureichende oder unklare Anforderungen
  4. Widersprüchliche Anforderungen
  5. Mangelnde Messbarkeit und Testbarkeit von Anforderungen
  6. Fortlaufende Kommunikation der Anforderungen
  7. Veränderte Anforderungen
  8. Überladene Anforderungen (over-specified requirements)

Die Studie identifiziert insgesamt 14 Techniken (Auflistung siehe Ende des Blogartikels), um Anforderungen zu erheben und zu analysieren. Die Studienteilnehmer gaben Auskunft, wie stark die 8 Probleme in agilen Projekten vorkommen, und wie intensiv diese 14 Techniken eingesetzt werden.

Aus den Ergebnissen formulierte ein Expertpanel Handlungsempfehlungen.

7 Lösungen für diese Probleme

Die Handlungsempfehlungen der Studie berücksichtigen besonders agile Projekte. Viele Aspekte passen auch sehr gut bei „klassischen“ Herangehensweisen („Wasserfall“-Vorgehen):

  • Ziele identifizieren und kommunizieren.
    Nur wenn die Business Needs klar definiert sind, können die Maßnahmen (Anforderungen) zielgerichtet angegangen werden. Erst das „Was wollen wir erreichen?“ (Ziele) klären, dann das „Wie?“ (Anforderungen).
  • Betroffene und Beteiligte identifizieren, neudeutsch Stakeholderanalyse.
    Versteckte Bedürfnisse der Stakeholder (Problem 2) fangen natürlich schon damit an, wenn nicht alle Anforderungssteller berücksichtigt werden. Eigentlich eine Selbstverständlichkeit; allerdings „menschelt“ es besonders, wenn Personen sich vergessen oder übergangen fühlen.
  • Damit verbunden: Zeit nehmen und adäquate Techniken zur Ermittlung von Anforderungen nutzen.
    Die beste Stakeholderanalyse läuft ins Leere, wenn in den folgenden Schritten, Anforderungen unzulänglich oder zu oberflächlich ermittelt werden. Siehe dazu auch die Liste der Ermittlungstechniken zur Erhebung von Anforderungen, am Ende des Blogartikels.
  • Modellierungstechniken einsetzen.
    Anforderungen rein textuell zu beschreiben (z.B. mit User Stories in agilen Vorgehen oder mit Schablone bzw. Schema für funktionale Anforderungen) schränkt ein. Modellierungstechniken bieten spezielle Perspektiven auf die Anforderungen, sei es die statische Perspektiv bei Datenmodellierung oder dynamische Perspektive bei Verhaltensmodellierung (z.B. Prozessmodellierung). Siehe dazu auch die Liste der Techniken zur Analyse von Anforderungen, am Ende des Blogartikels.
  • Nicht-funktionale Anforderungen berücksichtigen.
    Die reine Fokussierung auf die Funktionen, die eine Lösung oder ein System den Benutzern bieten soll, blendet wichtige Anforderungen aus. Bedienerfreundlichkeit und Performance sind zwei typische Beispiele für nicht-funktionale Anforderungen, die zur Akzeptanz eines Systems wesentlich beitragen: im Positiven bei Erfüllung der Anforderungen; im Negativen bei Nichterfüllung (sei es, weil die Anforderungen nicht ermittelt wurden und/oder nicht umgesetzt wurden).
  • Kontextdiagramme modellieren.
    „Vom Groben zum Detail“ ist einer meiner Leitsätze, sei es, dass ich als Business-Analyst, Prozessmanager, Requirements Engineer, Projektleiter, Organisator oder oder oder unterwegs bin. Ein Kontextdiagramm bietet einen groben Überblick, grenzt das System von seiner Umgebung ab und bietet eine hervorragende Basis für die weitere Analyse.
  • Prozesse modellieren.
    End-to-End-Prozesse bieten einen guten Überblick. Anforderungen lassen sich mit Hilfe von Geschäftsprozessen in den Gesamtkontext einordnen. Zeitliche oder sach-logische Zusammenhänge und Abhängigkeiten können identifiziert werden.

 

Anhang

6 der untersuchten Techniken dienen der Erhebung von Anforderungen

  • Workshops und/oder Interviews
  • Storyboards und Szenarien
  • Mock-ups und Prototypen
  • Background studies und Systemarchäologie
  • Befragungen oder Umfragen
  • Kreativitätstechniken Brainstorming oder Brainstorming paradox

8 der untersuchten Techniken eignen sich zur Analyse von Anforderungen.

  • Kontextdiagramme oder Problemdiagramme
  • Use Cases oder Use-Case-Diagramme
  • Datenmodelle (ERD, Klassendiagramme etc.)
  • Prozessmodellierung oder Aktivitätenmodellierung
  • Sequenzdiagramme
  • Zustandsdiagramme oder Zustandsautomaten
  • Zielmodelle oder Und/Oder-Bäume
  • Analyse nicht-funktionaler Anforderungen

 

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.