Bei der Preisgestaltung für Softwareverträge prallen zwei vollkommen gegensätzliche Interessen aufeinander: Der Auftragnehmer möchte einen möglichst hohen Stundensatz für das Projekt erzielen. Der Auftraggeber wiederum möchte die Projektkosten möglichst niedrig halten und den maximalen Nutzen mit dem eingesetzten Budget erreichen. Das ist natürlich ausschließlich die trockene, vertragliche Sicht, denn die Realität sieht nicht immer so aus.
Dennoch möchten wir ein Vertragsmodell finden, das diese Interessen auch auf dem Papier gleichmäßig berücksichtigt. Wir zeigen Ihnen mögliche Fallstricke sowie einen alternativen Lösungsansatz, von dem beide Parteien in einem agilen IT-Projekt profitieren.
Risikoteilung: Ein entscheidender Aspekt für Softwareverträge
Bei einer Zusammenarbeit in agilen Projekten ist das Risiko für beide Vertragsparteien unumgänglich. Denn selbst, wenn es ein sehr genaues Briefing gibt und Anforderungen klar erscheinen, können und sollen sich während der Umsetzung Änderungen ergeben dürfen. Dieses Risiko versucht man mit einem agilen Vorgehensmodell einzugrenzen.
Ein konkretes Risiko, das auftreten kann, ist, dass die Umsetzung einer User Story deutlich länger dauert als geplant. Daher ist es wichtig, sich vor dem Abschluss eines Softwarevertrags mit dem Thema Risikoteilung zu beschäftigen. Denn je nachdem, wie Sie Ihren Softwarevertrag gestalten, tragen Auftragnehmer und Auftraggeber einen unterschiedlichen Anteil des Risikos.
In Folge zeigen wir, wie bei zwei gängigen Preismodellen (T&M bzw. Arbeitspreis pro Teamstunde und Preis pro Story Point) die Risikoverteilung aussieht:
Preis pro Teamstunde
Eine weit verbreitetes Abrechnungsmodell ist die Abrechnung auf Basis von Teamstunden. Dies ist ein klassisches T&M-Modell, bei dem das Risiko beim Auftraggeber liegt. Er bezahlt den Auftragnehmer für die abgearbeiteten Stunden, unabhängig vom Ergebnis der geleisteten Arbeit.
Preis pro Story Point
Bei diesem Modell wird der Auftragnehmer bezahlt, wenn er einen Story Point fertiggestellt hat. Das soll das Team des Auftragnehmers motivieren, effizient zu arbeiten. Das Risiko bei diesem Modell liegt ganz klar beim Auftragnehmer. Wenn er keine fertiggestellten Story Points liefert, erhält er auch keine Bezahlung. Das Risiko, das natürlich trotzdem beim Auftraggeber verbleibt, ist, dass er keine lauffähige Software hat und die „Time to Market“ darunter leidet.
Wie Sie leicht erkennen können, haben die beiden Varianten einen entscheidenden Nachteil: Sie verteilen das finanzielle Risiko für die Zusammenarbeit sehr ungleichmäßig. Das Risiko liegt hauptsächlich bei einer der beiden Parteien.
Doch es geht auch anders. Im Video zu diesem Blogbeitrag erklärt Richard Brenner, Agile Coach bei TechTalk, diesen Unterschied ausführlich und stellt einen alternativen Ansatz vor.
Interessen von Auftraggeber und Auftragnehmer vereinen
Bei TechTalk beschäftigen wir uns schon seit vielen Jahren mit der Lösung dieses Problems. Um das Risiko auf beide Parteien gleichmässig zu verteilen, haben wir ein Modell entwickelt, welches die beiden Varianten Preis pro Teamstunde und Preis pro Story Point kombiniert.
Unser Modell „Pay per Story Point and Hour“ teilt die Projektrisiken zwischen Auftragnehmer und Auftraggeber auf, indem wir die Abrechnung aus folgenden Komponenten zu unterschiedlichen Teilen kombinieren:
- Preis pro Story Point: Fixpreis-Anteil pro gelieferter Funktionseinheit gemäß der zu Beginn angenommenen Lösungskomplexität
- Reduzierter Preis pro Story Point: Reduzierter Fixpreis-Anteil pro gelieferter Funktionseinheit, wenn zum Beispiel ein unvorhergesehener Story Point dazukommt
- Arbeitspreis pro Teamstunde: Variabler Preis-Anteil pro tatsächlich geleisteter Teamstunde des Auftragnehmers
Sehen wir uns ein konkretes Beispiel an, um dieses Modell mit seinen Auswirkungen in unterschiedlichen Szenarien genauer zu verstehen.
Beispielrechnung für das kombinierte TechTalk-Modell
Gehen wir für das Beispiel von folgenden Annahmen aus:
- Der Aufwand für einen Story Point ist erfahrungsgemäß 8 Stunden für dieses Team in diesem Projekt.
- Der Preis für eine Teamstunde liegt bei 100 EUR.
Damit beträgt der kalkulierte Verkaufspreis für einen Story Point 800 EUR (8 * 100 EUR pro Stunde).
Dieser wird geteilt in:
- Einen fixen Anteil von 400 EUR pro Story Point
- Einen variablen Anteil von 50 EUR/Stunde (800 EUR – 400 EUR / 8 Stunden pro Story Point)
Zusätzlich wird ein reduzierter Preis für einen unvorhergesehenen Komplexitätszuwachs mit 100 EUR pro Story Point festgelegt.
In unserem Beispiel möchten wir den Anteil gleichmäßig splitten. Die Abbildung unten zeigt die Auswirkungen im Vergleich zu einer ausschließlichen Abrechnung über Story Points oder Stunden. Bei einer Abrechnung ausschließlich über Story Points oder Stunden liegt das volle Risiko immer bei einer der beiden Vertragsparteien. Nicht so beim kombinierten Modell. Bei diesem Modell wird das Risiko aufgeteilt.
Wie kann die Aufteilung erfolgen?
Sehen wir uns im nächsten Schritt an, wie sich diese Aufteilung auf drei unterschiedliche Szenarien auswirkt. Gehen wir hierfür davon aus, dass der Gesamtumfang des Angebots 1.000 Story Points beträgt.
1. Szenario: Genaue Einhaltung der Planung
Es wurden folgende Leistungen erbracht:
- 1.000 Story Points
- 8.000 Stunden
Diese wurden wie folgt abgerechnet:
- 1.000 Story Points * 400 EUR = 400.000 EUR
- 8.000 Stunden * 50 EUR = 400.000 EUR
Damit ergeben sich Gesamtkosten von 800.000 EUR und ein durchschnittlicher Verkaufspreis einer Teamstunde von 100 EUR. Die anfänglichen geschätzten Kosten bzw. der Verkaufspreis pro Teamstunde werden damit für beide Seiten erfüllt.
2. Szenario: 5 % weniger Komplexität, 10 % weniger Aufwand
Es wurden folgende Leistungen erbracht:
- 950 Story Points (5 % Reduktion)
- 6.840 Stunden (10 % Reduktion der Stunden pro Story Point * Anzahl der gelieferten Story Points)
Diese wurden wie folgt abgerechnet:
- 950 Story Points * 400 EUR = 380.000 EUR
- 6.840 Stunden * 50 EUR = 342.000 EUR
Damit ergeben sich Gesamtkosten von 722.000 EUR. Die Projektkosten für den Auftraggeber sinken. Der durchschnittliche Verkaufspreis einer Teamstunde beläuft sich auf rund 106 EUR. Der Verkaufspreis für eine Teamstunde steigt für den Auftragnehmer.
3. Szenario: 30 % mehr Komplexität, 15 % mehr Aufwand
Es wurden folgende Leistungen erbracht:
- 1.300 Story Points (30 % mehr Komplexität)
- 15.600 Stunden (15 % mehr Aufwand pro Story Point * Anzahl der gelieferten Story Points)
Diese wurden wie folgt abgerechnet:
- 1.000 Story Points * 400 EUR = 400.000 EUR
- 300 Story Points * 100 EUR = 100.000 EUR (reduzierter Preis für unvorhersehbare Komplexität)
- 15.600 Stunden * 50 EUR = 780.000 EUR
Damit ergeben sich Gesamtkosten von 1.280.000 EUR. Die Gesamtkosten für den Auftraggeber steigen. Der durchschnittliche Verkaufspreis einer Teamstunde liegt bei rund 82 EUR und sinkt demnach für den Auftraggeber.
Vereinfacht ergeben sich dadurch für Auftragnehmer und Auftraggeber folgende Konsequenzen abhängig vom jeweiligen Szenario:
Risikoteilung für Auftragnehmer und Auftraggeber
Die Bedeutung von Checkpoints
Eine wichtige Komponente des kombinierten Modells ist der Checkpoint. An diesem überprüfen Sie, ob die getroffenen Annahmen noch stimmen. Der Checkpoint kann zum Beispiel nach sechs Sprints gesetzt werden. Hier sollen Fragen geklärt werden, wie:
- Stimmt die angenommene Effizienz der Umsetzung?
- Nimmt die Komplexität im Verlauf der Detaillierung sehr stark zu?
- Konnten wir die anfänglichen Annahmen prüfen und technische Risiken abmildern?
Erfahrung und Vertrauen sind entscheidend
Es ist wichtig, dass Sie den Aufwand pro Story Point und die Geschwindigkeit des Entwicklungsteams (Velocity) kennen. Daher sollte zumindest eine initiale Phase in genau dem Projekt-Setup starten, sodass eine realistische Einschätzung von Story Points möglich ist. Das kombinierte Modell ist somit ein Modell, das auf Erfahrung basiert. Und auf Vertrauen.
Sind Erfahrung und Vertrauen gegeben, ist diese Modell gut geeignet, um das Risiko zwischen den beiden Vertragsparteien gleichmäßig zu verteilen. Das kombinierte Modell schafft zwei Vertragsparteien, die gleichberechtigt miteinander kommunizieren und arbeiten können.