Agiles Programmieren vertraglich absichern
Nachdem sich agiles Programmieren in den vergangenen Jahren zunehmend als anerkannte Methode durchgesetzt hat, bleibt die Frage nach dem richtigen Vertrag für entsprechende Projekte. Entscheidend ist hierbei die richtige Struktur des Regelwerks.
… Leitlinien für den Iterationsprozess vorzugeben. Unter anderen sollte man sich etwa zur Häufigkeit der Vorlage von Programmversionen Gedanken machen und dazu einen möglichst detaillierten Aktivitäten- und Fristenplan ausarbeiten. Zu berücksichtigen sind auch Regelungen zur Durchführung von Projektmeetings sowie zur Festlegung von Prioritäten. Auch die gewünschten Kernfunktionalitäten sowie der mit der Software verfolgte Zweck sollten im Vertrag ausdrücklich und möglichst detailliert vereinbart werden.
Verzicht auf Pflichtenheft und Dokumentation
Der Aktivitäten- und Fristenplan im Rahmen der Projektplanung kann sodann auch an die Stelle des Pflichtenheftes treten, auf das im agilen Softwareprojekt grundsätzlich verzichtet wird. Die Bestimmung des Projektergebnisses und damit die Festlegung der geschuldeten Leistungen verlagern sich folglich in den Erstellungsprozess. Auch Benutzer- und Entwicklerdokumentation werden meist nicht oder nur in einem erheblich reduzierten Umfang geschuldet. Dokumentationen erfolgen typischerweise “inline” im Quellcode oder “online” als in der Anwendung oder vom Auftragnehmer zur Verfügung gestellter “Hilfe”. Hier gilt es aus Sicht des Auftraggebers, den Auftragnehmer nicht zu stark aus der Verantwortung zu entlassen, um für den Fall, dass das Projekt tatsächlich in Schieflage gerät, noch auf justiziable Leistungspflichten des Auftragnehmers zurückgreifen zu können. Art und Umfang der Dokumentation sollten daher vertraglich festgelegt werden.
Weitere Punkte für die Vertragsgestaltung
Zu denken ist schließlich an die Vereinbarung geeigneter Testszenarien und deren Dokumentation. Anders als in vielen herkömmlichen Projekten wird man bei agiler Softwareerstellung auch während der Erstellungsphase sehr viel testen und mitunter auch Teilabnahmen vornehmen. Regelungen zur Auflösung von Meinungsverschiedenheiten bei Abnahmetests dürfen ebenso nicht vergessen werden. Hierbei kann auch auf externe unabhängige Sachverständige zurückgegriffen werden, die – zumindest bei größeren Projekten – möglichst von Anfang an einbezogen werden sollten.
Neben Vorgaben zu Datenschutz, IT-Sicherheit und Compliance sind naturgemäß die Vergütungsregelungen von besonderer Bedeutung. Der Auftragnehmer wird dabei meist versuchen, nach “time and material” abzurechnen und so die Risiken auf den Auftraggeber abzuwälzen. Da der Auftraggeber dem bei agilen Entwicklungsprozessen erhöhten Risiko einer Kostenexplosion begegnen muss, bietet es stattdessen sich an, auf alternative Vergütungsmodelle zurückzugreifen, die das Risiko auf beide Parteien ausgewogen verteilen. Dies kann etwa durch Bonusregelungen für das Erreichen bestimmter Kriterien erreicht werden oder die Vergütung wird an einem für den Auftraggeber erreichten besonderen wirtschaftlichen Mehrwert bemessen.
Fazit
Insbesondere von der Softwareindustrie werden die neuen Programmiermethoden wegen der Flexibilisierung und Beschleunigung der Softwareerstellung positiv angenommen. Auf Seiten der Auftraggeber wird man aber sicherstellen müssen, dass man dabei die Auftragnehmer nicht zu weit aus der Verantwortung entlässt, um nicht unnötige Risiken einzugehen. In der Praxis scheinen hier nicht immer ausgewogene Verträge zu entstehen, die auch den Kunden angemessen absichern. Obwohl die Entscheidung der Parteien für eine agile Softwareerstellung unmittelbare Auswirkungen auf die Vertragspflichten hat, finden sich noch häufig Verträge, die den Besonderheiten dieser Vorgehensweise nicht gerecht werden. Begründet sein mag dies darin, dass die Beteiligten bei der Vertragsgestaltung gleichermaßen “flexibel” sind. Häufig scheuen es aber auch die in fachlicher Hinsicht Beteiligten, in ihrem Zuständigkeitsbereich bestehende Unsicherheiten einzuräumen und vermitteln ihrem Management oder auch dem Rechtsberater den Eindruck eines klar definierten Projekts, während tatsächlich die geforderte Lösung und auch der Weg dahin noch gar nicht feststehen. Damit wird jedoch auch die Chance vertan, mit einem zweckmäßigen Vertrag zum Erfolg des Projektes beizutragen.