Scrum und Co.

Schlank planen, agil entwickeln, Kosten einhalten

10.09.2014
Von 
Prof. Dr. Volker Gruhn ist Mitgründer und Aufsichtsratsvorsitzender der adesso AG. Außerdem hat er den Lehrstuhl für Software Engineering an der Universität Duisburg-Essen inne. Gruhn forscht unter anderem über mobile Anwendungen und Cyber-Physical Systems.

So etwas Ähnliches wie agile Festpreise im Großen - für ganze Projekte

Es klingt ein wenig nach der Quadratur des Kreises: Keine Spezifikation und trotzdem ein fester Preis? Und das im Großen, so dass er für das ganzes Projekt gilt? Ohne Change-Request-Theater? Hundertprozentig wir das nicht funktionieren; aber auch hier kommen die Beteiligten mit fair verteiltem Schmerz und fair verteilter Freude weiter.

Das "Shared Pain, Shared Gain" bezieht sich darauf, dass Auftraggeber und Dienstleister - als Projektpartner - die Risiken der Agilität auch im Budget gemeinsam tragen. Mithilfe des agilen Vorgehens wollen sie in jeder Beziehung zum optimalen Ergebnis gelangen. Und das gelingt am besten, wenn alle Beteiligten ein Interesse daran haben, möglichst schlanke Software zu erstellen.

Ein konkretes Shared-Pain-/Shared-Gain-Modell ist adVANTAGE. Dem Ansatz liegt folgender Gedanke zugrunde: Zunächst muss der Auftraggeber seine Erwartungen - das heißt Zweck, Einsatzgebiet, Benutzer und vieles mehr - grob beschreiben. Daraus werden sogenannte "User Stories" abgeleitet. Diese definieren zu entwickelnde Features unscharf. Sie reichen jedoch aus, um ein ungefähres Bild des Aufwandes zu erhalten, den die Implementierung umfasst. Pro Story wird der reine Entwicklungsaufwand geschätzt und durch die Ergänzung von Triangulation plausibilisiert. Die Zusammenfassung aller Schätzungen ergibt ein vorläufiges, grobes Gesamtbudget und umreißt einen Zeitrahmen.

Nachdem alle Anforderungen geschätzt sind, werden sie vom Auftraggeber priorisiert. Die Reihenfolge sollte sich dabei an diesen Fragen orientieren: "Welche Stories müssen unbedingt umgesetzt werden, um live gehen zu können?" Welche kann man zur Laufzeit nachreichen?" Dies sollten die entscheidenden Kriterien sein, nicht die Komplexität einer Funktion.

Scoping und Initialabschätzung in adVANATGE.
Scoping und Initialabschätzung in adVANATGE.
Foto: adesso

Die vorläufige und grobe Schätzung des nötigen Gesamtbudgets geht gemeinsam mit dem Zielbudget und dem Zieltermin in eine Priorisierung der Projektaufgaben ein. So entsteht ein gemeinsamer Orientierungspunkt für das Projektteam. Über den gesamten Projektverlauf hinweg sind diese Rahmenbedingungen (Zielbudget, Zieltermin und Schätzung einzelner Features) für alle Beteiligten transparent. Bei Hinzunahme und Weglassen von Features werden die Daten entsprechend angepasst.

Für diese grobe Schätzung (insbesondere die Suche nach vergessenen Aufgaben) benötigt das Unternehmen dreierlei:

  1. Jemanden, der die aktuelle Anwendung und Anwendungslandschaft kennt und Auskunft darüber gibt.

  2. Jemanden, der die Domäne kennt und vergleichbare Software auf angestrebter Technologie schon einmal gebaut hat.

  3. Einige Wochen Zeit.

Nun müssen die Verantwortlichen das Unsicherheitsniveau bewerten. Typischerweise geht es hier um Fragestellungen wie: Stimmt die Schätzung mit hinreichend großer Sicherheit oder sind besonders auffällige Unwägbarkeiten aufgetreten? Hatten die Projektbeteiligten in den ersten Wochen bereits eine einheitliche Vorstellung oder muss erst noch ein Kompromiss gefunden werden? Stimmen die Ideen von Management beziehungsweise Projektsponsoren und zukünftigen Anwendern überein? Und - ganz entscheidend - gibt es eine klare Entscheidungsstruktur und Entscheidungsfreude?

Zahlenbeispiel

Das Projekt umfasst 1.000 Personentage. Jeder Tag Aufwand wird mit 1.000 Euro berechnet. Da alle Beteiligten sich darüber im Klaren sind, dass es eine vage Schätzung ist, vereinbaren sie einen Ungewissheitskorridor: Wird das Projekt mit weniger als 1.000 Tagen Aufwand geliefert, erhält der Lieferant für jeden nicht geleisteten Tag zusätzlich 150 Euro.

Werden mehr als 1.000 Personentage Aufwand benötigt, greift eine Preisstaffel: Zwischen 1.001 und 1.200 Personentagen kostet ein Personentag 800 Euro, zwischen 1.201 und 1.500 Personentagen 600 Euro, jenseits von 1.501 kostet er nichts. 100.000 Euro werden als Prämie gewährt, wenn 1.200 Personentage nicht überschritten werden. Werden – aus welchen Gründen auch immer – mehr Tage benötigt, entfällt die Erfolgsprämie komplett.

In diesem Beispiel wird deutlich, wie das gemeinschaftliche Interesse an schlanker Software im Prozess verankert wird: Komplexe Lösungen sind für alle Beteiligten unattraktiv, effiziente Umsetzungen werden für beide Seiten belohnt. Planerisch wird die Budgetkalkulation so umgesetzt, dass von Beginn an der geleistete Aufwand mit der initialen Abschätzung und mit der Detailschätzung vor Implementierung verglichen wird.