Sonntag, 21. März 2010

SCRUM: unterpriorisieren von unverstandenen Anforderungen im Product Backlog birgt Risiko

In agilen Software-Entwicklungsmethoden, wie SCRUM oder XP, wird häufig empfohlen, das zuerst zu tun, bei dem genau klar ist, was zu tun ist.
Das klingt zunächst gut, da dann sichergestellt ist, dass alle Ihre Aufgabe genau kennen und die Umsetzbarkeit und Umsetzungsaufwand abschätzen können.

Konsequenz dieses Vorgehens ist jedoch, dass die vage und unpräzise formulierten Anforderungen bzw. die Anforderungen, bei denen das genaue Ziel noch unklar ist, unterpriorisiert werden.
Einerseits mag in den Anforderungen, bei denen selbst der Anforderer nicht genau weiss, was er will, kein großes Gewicht liegen. Wenn der Anforderer nicht genau weiss, was er will, lässt er sich ggf. auch schneller davon überzeugen, dass er die Umsetzung dieser schwammig formulierten Anforderung vielleicht gar nicht braucht.
So wird für dieses Vorgehen gerne damit geworben, dass über eine solche Priorisierung die Anforderungen mit dem höchsten Nutzen zuerst implementiert werden. Am Ende eines Projektes bleiben dann nur noch Anforderungen mit hohem Aufwand aber vergleichsweise niedrigem Nutzen zurück, die notfalls auch komplett fallengelassen werden können.

Dieser Sichtweise steht aber die Behandlung besonders komplexer Anforderungen gegenüber. Dies sind diejenigen, die zu Beginn eines Projektes niemand so genau beschreiben kann. Bei diesen Anforderungen wäre zunächst weitere Planungszeit nötig, um sie präziser zu formulieren und in kleinere Teilanforderungen zu zerschneiden.
Andererseits ist bei unverstandenen Anforderungen der Nutzen zunächst noch unklar. Zumindest besteht zunächst die Wahrnehmung, dass der Aufwand zur Lösung den (noch unbekannten) Nutzen deutlich übersteigt.
Wenn sich in einer dieser komplexen Anforderungen jedoch ein simple Lösung mit hohem Nutzen verbirgt, ist es es wert, die zusätzlich erforderliche Zeit einzuplanen, um die Anforderung besser zu verstehen. Einer solchen Anforderung (würde man sie denn trotz ihrer Komplexität erkennen) sollte Priorität eingeräumt werden.

Wir schlussfolgern daraus:
Werden nur die klar verstandenen Anforderungen hoch priorisiert, läuft man Gefahr, Zeit zu verlieren, die derzeit unverstandenen, komplexen Anforderungen mit (relativ zum Aufwand) hohem Nutzen zu identifieren und somit auch umzusetzen. Mit diesem Vorgehen kann man sogar relativ sicher sein, dass diese Anforderungen überhaupt nicht umgesetzt werden, da der Anforderungsanalyse dafür nie ausreichend Zeit eingeräumt wird.

In Kürze: Komplexe Anforderungen müssen keine unwirtschaftlichen Anforderungen sein.

Superwallah - IT, Innovation, Indien

Globaler Cyber-Fortschritt ist heute

Suche

 

ich

Du bist nicht angemeldet.

Wer bist Du?

Sag es mir. Und hinterlass einen Kommentar nach Lesen eines Eintrag!

Aktuelle Beiträge

Methode zur Organisation...
Ich habe auf dem 34C3 eine interessante Methode kennengelernt,...
superwallah - 3. Jan, 22:11
Filofax Personal Abmessungen
Wer eigene Filofax-Einlagen basteln möchte, muss sich...
superwallah - 3. Jan, 15:01
Sicherheit in Android...
TLS ist nur so sicher wie die Gesamtheit der Root-CAs,...
superwallah - 13. Jun, 21:30
Den richtigen Co-Working-Space...
Die moderne Welt des Arbeitens liegt im Teilen der...
superwallah - 24. Mai, 18:16
Adressen und Kalender...
Wer meinem Blog folgt, weiss, dass ich mich konsequent...
superwallah - 23. Mai, 09:36

Meine Gadgets

Gesehene Filme

Zähler

Web Counter by www.webcounter.goweb.de
Web Counter by www.webcounter.goweb.de

Status

Online seit 6385 Tagen
Zuletzt aktualisiert: 3. Jan, 22:11