Montag, 8. Juni 2020

Story Points in Kanban

Bild: Freegreatpicture / Max Pixel - CC0 1.0
Wenn es darum geht Aufwands- oder Komplexitätsschätzungen zu machen raten die meisten in agilen Vorgehensweisen erfahrenen Entwickler zu Story Points, unter anderem wegen der Vorteile relationaler Schätzungen, aber auch aus anderen Gründen. Was dabei fast alle gemeinsam haben ist aber eine Einschränkung auf nur ein oder zwei Frameworks, nämlich Scrum und Extreme Programming. Eine Anwendung im Rahmen von Kanban (des dritten grossen agilen Ansatzes) wird von den meisten nicht erwogen. Dabei wäre sie auch hier durchaus möglich.

Ähnlich wie im Fall der iterativen Ansätze Scrum und XP ist ein Story Point auch in Kanban eine neutrale (d.h. personenunabhängige) Schätzgrösse, die je nachdem wer an der Anforderung arbeitet eine etwas schnellere oder langsamere Umsetzungsdauer bedeuten kann, aber trotzdem eine gemeinsame Schätzung des Teams ermöglicht. Was im Vergleich zur klassischen Anwendung dagegen anders ist, ist die Art des Einsatzes zu Planungs-, Forecast- oder Prognosezwecken.

In Scrum und XP dienen die in der Vergangenheit gelieferten Story Points als Grundlage für die Velocity, also die durchschnittliche Menge an Arbeit die das Team bisher pro Sprint oder Iteration erledigen konnte1. Diese ist dann wiederum ein Indikator dafür was voraussichtlich in zukünftigen Sprints fertiggestellt werden kann. Da in Kanban an die Stelle der festen Lieferzyklen eine beständige Lieferung tritt ist diese Art der Prognose hier nicht möglich, es wird anders vorgegangen.

Was stattdessen passiert ist eine Einteilung der Anforderungen in Äquivalenzklassen, deren durchschnittliche Lead- oder Cycle-Time gemessen wird. Wenn z.B. in der Vergangenheit Anforderungen mit 5 Punkten im Durchschnitt 4 Tage gebraucht haben, dann kann angenommen werden, dass das in Zukunft vergleichbar sein wird. Allerdings - ist das nicht doch wieder eine Schätzung in Zeiteinheiten? Ja, schon, wenn man es dabei belässt. Aber es steckt noch mehr dahinter.

Bedingt durch verschiedene Unsicherheitsfaktoren (Erfahrung des Bearbeiters, Neuartigkeit des Themas, etc.) kommt es normalerweise bei einem Teil der umgesetzten Anforderungen zu Abweichungen nach oben und unten, meistens in Form einer Gauss-Kurve. Das kann z.B. heissen, dass etwa 20 % der Fälle früher als gedacht fertig werden, etwa 60 % ungefähr rechtzeitig2 und etwa 20 % später als gedacht. Diese Zahlen ermöglichen eine Ausdifferenzierung der Prognose.

Beim oben genannten Beispiel von 5 Punkten könnte dass etwa bedeuten3, dass man eine praktisch sichere Ablieferung nach 6 Tagen zusichern kann, eine sehr wahrscheinliche nach 4 Tagen und eine unwahrscheinliche aber theoretisch mögliche nach 2 Tagen. Für die abnehmende Einheit ergibt sich dadurch die Möglichkeit verschiedener Planungsvarianten um flexibel reagieren zu können, mit verbesserter Anpassungsfähigkeit über verschiedene Stationen der Lieferkette als Folge.

Man muss sich bewusst sein: diese Art der Business Agility erfordert Arbeit und Disziplin beim Erheben und Auswerten der Statistiken, man sollte sich also fragen welcher Mehrwert so entstehen soll und ob er in erträglicher Relation zu den Aufwänden steht. Wenn man das mit Ja beantworten kann steht dem Einsatz von Story Points in Kanban aber nichts mehr im Weg.



1Nur zur Klarstellung: man kann in Scrum und XP Story Points benutzen, muss es aber nicht
2Auch hier gibt es noch kleinere Abweichung in einigen Fällen
3Abhängig vom Umfang der Abweichungen

Related Articles