se:iterationsplanung
Iterationsplanung
Was zuerst implementiert wird, entscheidet der Kunde! → Priorisierung
Vorgehen nach \cite[S. 43]{Bleek2008}
Ausgangspunkt sind Storys, die Features (Nutzen für den Anwender) beschreiben
Kunde wählt die wichtigsten Storys aus und Entwickler schätzen die Storys → nun ist Reihenfolge anhand Kosten/Nutzen möglich
Erkennen und Zerteilen der zu großen Anforderungen
bei umfangreichen Systemen kann nun nach dem Ansatz der Quick Wins oder Low-Hanging-Fruits vorgegangen werden: was kann schnell umgesetzt werden und verschafft dem Kunden einen hohen Mehrwert (insbesondere wichtig bei Ablösung von Altsystemen, da sonst ständig nur die bereits vorhandenen Funktionen nachprogrammiert werden)
Hilfen: Abhängigkeitsgraph (Anforderung 1 muss vor Anforderung 2 implementiert werden) und Graph, der die positiven Auswirkungen von Anforderungen zeigt (Anforderung 2 kann schneller, besser, einfacher implementiert werden, wenn Anforderung 1 bereits implementiert ist)
zusätzlich zu den fachlichen Anforderungen können auch technische Anforderungen (z.B. Refactorings) als Storys eingebracht werden, für die dann z.B. ein gewisser Teil der Arbeitszeit aufgewendet werden kann
die Planung erfolgt durchaus für einige Interationen im Voraus, muss aber nach den ersten Iterationen auf ihre Umsetzbarkeit geprüft werden
im Zweifelsfall sollten für eine Iteration lieber zu wenig Anforderungen geplant werden, als zu viele, da sonst die bekannten Probleme (Zeitdruck, mangelnde Qualität) auftreten. Der eventuelle Leerlauf kann für Retrospektiven oder Qualitätssicherung verwendet werden
alternativ kann mit obligatorischen und optionalen Anforderungen gearbeitet werden
Abhängigkeiten zwischen Anforderungen
nach \cite[S. 42]{Bleek2008}
wichtige Anforderungen (solche mit hohem Geschäftswert für den Kunden) werden zuerst implementiert (→ Kunde entscheidet), (scheinbare) Abhängigkeiten werden pragmatisch aufgelöst
Beispiel Stammdatenverwaltung: dürfte Grundlage für alle weiteren Funktionen sein, bringt aber kaum Mehrwert, daher reicht zu Beginn vielleicht eine Importschnittstelle oder eine Kommandozeilenapplikation
Beispiel Einsatzplanung: Autos, Personen und Aufträge werden benötigt, aber vielleicht nur ein Ausschnitt (Name, Kennzeichen, Adresse etc.)
schwierige Anforderungen sollten zuerst implementiert werden (evtl. als Proof of Concept), da diese durch ihre den Entwicklern meist unbekannten Bereiche schwer abzuschätzen sind und sonst die Planung durcheinander bringen können
se/iterationsplanung.txt · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)