Aufspalten einer User Story

Agile Entwicklung funktioniert umso besser, je kleiner die fachlichen Schritte sind, die man nehmen muss. Um Anforderungen klein zu hacken, verwendet man üblicherweise sogenannte „User Stories“, also einen Ablauf aus Anwendersicht, der unterstützt werden soll. Schwierig wird es vor allem für Neu-Agilisten allerdings, wenn es darum geht, diese Stories klein genug zu bekommen. Oft genug stehen am Anfang Stories, die mehrere Wochen brauchen, um fertig umgesetzt zu werden, also inklusive Integration und Test. Ziel ist aber, eine Story innerhalb weniger Tage produktionsreif zu bekommen.

Nachdem es um funktionsfähige Häppchen geht, verbietet sich eine Aufteilung „Mach die Oberfläche für XY“, „Mach die Logik für XY“ von selbst: Diese haben keinen eigenen Geschäftswert und taugen bestenfalls (bzw. schlimmstenfalls) als technische Aufgaben. User Stories sollten aber so gestrickt sein, dass sie unabhängig sind, wertschöpfend, verhandelbar, schätzbar, klein und für sich testbar („INVEST“: Independent, Negotiable, Valuable, Estimable, Small, Testable).

Richard Lawrence fasst nun in seinem Blog-Eintrag „Patterns for Splitting User Stories“ neun Strategien zusammen, die sich für die Aufspaltung von User Stories eignen. Ob es wirklich Patterns sind, darüber lässt sich sicherlich streiten. Dennoch ist der Beitrag auf jeden Fall lesenswert und sein „Crib-Sheet“ am Ende könnte auch für dogmatische Nicht-Internet-Ausdrucker ein Grund sein, mal wieder nach einem Druckertreiber zu suchen.

(Siehe auch mein Eintrag „Schneiden von Stories“ vom 2.12.2008)