Moderne Führung und Agilität

Kein Aufwand für Aufwandschätzungen

Die Illusion der Präzision: Ein kritischer Blick auf Aufwandschätzungen in der Softwareentwicklung

Aufwandschätzung in der Softwareentwicklung

Herausforderungen beim Schätzen

In der Welt der agilen Softwareentwicklung stehen Teams regelmäßig vor der Aufgabe, den Aufwand für Feature-Entwicklungen zu schätzen. Diese Aufwandschätzungen sollen als Grundlage zum Beispiel für die Sprintplanung dienen. Doch die realen Aufwände weichen fast immer deutlich von den Schätzungen ab. Und zwar ebenfalls fast immer: nach oben. Dieser Artikel aus dem Jahr 2015 erläutert sehr anschaulich, warum das in der Softwareentwicklung ein typisches Phänomen ist.

Reale Aufwände weichen fast immer deutlich von ihren Schätzungen ab. Und zwar ebenfalls fast immer: nach oben.

Die Gründe hierfür sind vielfältig und spiegeln die Komplexität und Unvorhersehbarkeit von Softwareprojekten wider. Zusätzlich zu den ungenauen Schätzungen verursacht der Prozess des Schätzens selbst – beispielsweise durch das Bewerten von Story Points – einen nicht zu unterschätzenden Aufwand.

Der #noestimates-Ansatz

Als mögliche Lösung für dieses Dilemma wird der #noestimates-Ansatz diskutiert. Hierbei wird darauf verzichtet, Arbeitspakete in Story Points zu schätzen. Stattdessen werden Aufgaben in gleich große Tasks heruntergebrochen, die ohne weitere Schätzungen gezählt werden können. Die Summe dieser Tasks dient dann als Aufwandschätzung. Ein positiver Nebeneffekt: Ein geübtes Team stellt so sicher, dass auch komplexe Tasks in handhabbare Aufgaben heruntergebrochen und damit auch verstanden werden.

Löst das also das Problem? Um das zu beantworten stellt sich zunächst die Frage, wozu Aufwandschätzungen überhaupt dienen sollen.

Der Zweck von Aufwandschätzungen

Als Gründe für Aufwandschätzungen werden meist folgende Zwecke angeführt:

Wozu Aufwandschätzungen wirklich gut sind

Braucht man also gar keine Aufwandschätzung? Doch! Es gibt einen validen Grund für Aufwandschätzungen.

Aufwandschätzungen sind also wichtig für die Priorisierung und die Planung von Vorhaben. Aber nicht auf Sprints heruntergebrochen, sondern vor allem der grobe (!) Aufwand für Meilensteine und um das Gesamtvorhaben umzusetzen. Wie kann ich diese Aufwände einfach schätzen?

Aufwandschätzungen sind nur wichtig für Priorisierung und Planung von Vorhaben.

Einfachheit durch T-Shirt-Größen

Für eine pragmatische Aufwandschätzung bieten sich Schätzungen mit T-Shirt-Größen an. Dabei werden Größen, wie S, M und L, genutzt, um den Aufwand grob zu klassifizieren. Vorab legt man fest, was die Größen an Aufwand bedeuten sollen, z. B.:

Bei Bedarf kann man dieses System noch um XS, XL etc. erweitern. Man sollte es aber nicht übertreiben. Die Gefahr ist hoch, dass man damit wiederum eine Scheinpräzision suggeriert, die gar nicht real ist.

Eine Einschätzung nach T-Shirt-Größen lässt sich in der Regel sehr schnell in einem Team abstimmen. Je größer das Vorhaben allerdings ist, desto eher muss dafür ein technisches Lösungs-Design vorliegen.

Alternative: Unsicherheit transparent machen

Insbesondere für die Planung von Vorhaben kann es sein, dass eine möglichst präzise Zeitdauer für Vorhaben oder Meilensteine gefordert wird. Das ist auch valide, wenn es um die bestmögliche Planung von großen Vorhaben mit vielen komplexen Abhängigkeiten geht.
Natürlich haben agile Methoden aber recht mit der Feststellung, dass wir Aufwände vorab schlecht schätzen können – umso schlechter, je größer und weiter in der Zukunft die Aufwände liegen. Diese Unsicherheiten können – und sollten – wir in Schätzungen widerspiegeln. Es empfiehlt sich anstatt präziser Dauern Bereiche zu schätzen, die die Unwägbarkeiten abbilden, z. B. eine Umsetzungsdauer von 1-3 Monaten. Dieser Bereich kann entsprechend der Unsicherheit durchaus groß sein, wie im Beispiel die Bandbreite von 300% zwischen dem besten und schlechtesten Fall.

Wir können Aufwände schlecht schätzen – umso schlechter, je größer und weiter in der Zukunft die Aufwände liegen.

Fazit

Aufwandschätzungen auf Sprint-Ebene sind meiner Auffassung nach Zeitverschwendung. Um Velocity zu optimieren, gibt es einfachere Wege. Nützlich und nötig sind Aufwandschätzungen von Vorhaben für deren Priorisierung. Die kann man mittels T-Shirt-Größen mit minimalem Aufwand schätzen. Sind detailliertere Zeitschätzungen nötig um große Vorhaben mit vielen Abhängigkeiten zu planen, sollte man die Unsicherheit einer Schätzung transparent machen, indem man einen Zeitbereich anstelle einer konkreten Dauer angibt. Der #noestimates-Ansatz ist dennoch sehr hilfreich. Er stellt sicher, dass alle Aufgaben in einem Sprint auf eine vergleichbare Größe heruntergebrochen sind und dadurch gut verstanden.

Wie stehst du zu Aufwandschätzungen und welche Erfahrungen hast du damit gemacht?

Wenn du einen Rechtschreibfehler findest, benachrichtige mich bitte, indem du den Text auswählst und dann Strg + Eingabetaste drückst.

Diesen Beitrag teilen:
Die mobile Version verlassen