Foto von wayhomestudio auf Freepik
IT-Verträge –
3.1.2025
Softwareentwicklung erfordert heutzutage zumeist eine Flexibilität, die das klassische Wasserfallmodell mit werkvertraglichen Grundlagen nicht bietet. Daher wird auch in der Softwareentwicklung immer mehr nach agilen Methoden wie z. B. Scrum oder Kanban verfahren.
Anders als beim Werkvertrag, bei der vor Projektbeginn alles genau durchgeplant wird, ermöglicht das agile Vorgehen eine flexible und iterative Entwicklung. Doch diese Flexibilität birgt auch Risiken, insbesondere bei der Vertragsgestaltung. Für beide Vertragsparteien – Auftraggeber und Auftragnehmer – stellt sich die Frage: Wie kann ein Projektvertrag gestaltet werden, wenn das Endergebnis zu Beginn nur vage definiert ist?
Agile Softwareentwicklung bietet Vorteile, wenn der Auftraggeber zwar eine grobe Vorstellung vom Ziel hat, jedoch schnell mit der Programmierung beginnen möchte. Die wichtigsten Prinzipien des agilen Vorgehens sind:
Partnerschaftliches Zusammenarbeiten: Die Vertragspartner entwickeln gemeinsam, der Auftraggeber ist in den Entwicklungsprozess involviert bzw. kann sogar der Verantwortliche sein. Agiles Arbeiten erfordert kontinuierliche Kommunikation und laufende Entscheidungen. Die Mitwirkungspflichten des Auftraggebers sind daher vertraglich festzuhalten.
Dokumentation: Der Projektfortschritt muss umfassend und fortlaufend dokumentiert werden. Damit kann im Streitfall belegt werden, dass das Ergebnis den vertraglichen Anforderungen entspricht.
Planungssicherheit: Bei der agilen Softwareprogrammierung sind das Ergebnis und der Aufwand zu Projektbeginn noch unklar. Gleichwohl möchte der Auftraggeber Planungssicherheit hinsichtlich Kosten, Zeit und Ergebnissen.
Die Einordnung der agilen Softwareprogrammierung in die klassischen Vertragsarten des Bürgerlichen Gesetzbuches ist schwierig und mit Rechtsunsicherheiten verbunden. Umso wichtiger ist es, die vertraglichen Grundlagen umfassend abzubilden.
Bei der Softwareprogrammierung sind der Werkvertrag und der Dienstvertrag voneinander zu unterscheiden:
Die Vertragspartner können sich bei der agilen Softwareprogrammierung die Vorteile „aus beiden Welten“ zu Nutze machen, indem sie sog. hybride Vertragsmodelle nutzen: Ein Rahmenvertrag regelt die Zusammenarbeit und enthält sowohl dienstvertragliche Elemente für den Entwicklungsprozess als auch werkvertragliche Bestandteile für Teilprojekte. So können einzelne Ergebnisse schrittweise festgelegt und abgenommen werden und beide Vertragspartner haben Planungssicherheit.
Die Vergütungsfrage ist bei agilen Projekten besonders schwierig. Auftragnehmer bevorzugen häufig die Abrechnung nach Zeit und Aufwand, um das finanzielle Risiko flexibler Anforderungen zu minimieren. Der Auftraggeber benötigt jedoch Budgetkontrolle und will von vornherein wissen, was sein Projekt „kostet“. Mögliche Lösungen sind:
Der „agile Festpreis“ kombiniert die Agilität der Dienstleistung mit einem festen Budget, denn hier wird im Gegensatz zu einem traditionellen Festpreis nicht der gesamte Projektumfang vorab vollständig definiert, sondern die Entwicklung erfolgt iterativ und flexibel. Allerdings wird ein fester Preis für die Umsetzung eines vereinbarten Umfangs oder Ergebnisses festgelegt, meist basierend auf einer initialen Schätzung des Projektaufwands und der erwarteten Anforderungen. Beim agilen Festpreis wird zwar der Vertragsgegenstand mit seinen wichtigsten Funktionen und Anforderungen vorab grob definiert, Details werden jedoch iterativ erarbeitet und angepasst. Das Budget dafür wird nicht überschritten und die wichtigsten Funktionen zuerst umgesetzt.
Die Einräumung von Nutzungsrechten an der Software erfordert besondere Aufmerksamkeit bei der Vertragsgestaltung. Im agilen Prozess entstehen häufig schon an Teilergebnissen urheberrechtlich relevante Werke. Der Vertrag sollte daher regeln:
Klare Vereinbarungen schützen den Auftraggeber davor, später keine ausreichenden Rechte an der Software zu besitzen, obwohl er die Programmierleistung vergütet hat.
In agilen Projekten erfolgt die Softwareentwicklung in sogenannten Sprints oder Entwicklungszyklen. Diese kurzen, meist zwei- bis vierwöchigen Iterationen ermöglichen es, regelmäßig funktionsfähige Teilergebnisse zu liefern und die Anforderungen dynamisch anzupassen. Dennoch ist es wichtig, im Vertrag realistische Zeitvorgaben zu treffen.
Tipp: Eine regelmäßige Fortschrittskontrolle – beispielsweise in Form von Sprint-Reviews – sollte vertraglich vorgesehen werden, um Abweichungen frühzeitig zu erkennen und gegenzusteuern.
Ein entscheidender Bestandteil jedes Softwareprojekts ist die Qualitätssicherung. Gerade in agilen Projekten, die (fast) ohne klassische Abnahmeprozesse auskommen, ist es wichtig, klare Testszenarien und Abnahmekriterien zu definieren.
Nicht jedes agile Softwareprojekt verläuft wie geplant. Ein Projektabbruch kann aus unterschiedlichen Gründen notwendig werden, z.B. aufgrund von Budgetüberschreitungen, geänderten Anforderungen oder fehlender Zusammenarbeit der Parteien. Um für diesen Fall gewappnet zu sein, sollten Exit-Strategien vertraglich vereinbart werden.
Agile Softwareentwicklung bietet viele Vorteile, bringt jedoch auch rechtliche Risiken mit sich. Ein ausgewogener Vertrag muss die Flexibilität der agilen Methode berücksichtigen, dem Auftraggeber aber gleichzeitig Planungssicherheit bieten. Mit klaren Regelungen zu Mitwirkungspflichten, Vergütung, Nutzungsrechten und Dokumentation können viele Konfliktpunkte von Anfang an entschärft werden.
Holen Sie frühzeitig rechtlichen Rat ein, um die Vertragsgestaltung individuell auf Ihr agiles Projekt anzupassen. So schaffen Sie die Basis für eine erfolgreiche Zusammenarbeit.
Fachanwältin für IT-Recht,
Fachanwältin für gewerblichen Rechtsschutz,
Rechtsanwältin, Partnerin
Telefon: 06131 28770 80
E-Mail: shb@bwb-law.de
Fachanwalt für IT-Recht,
Rechtsanwalt, Partner
Telefon: 06131 28770 81
E-Mail: fde@bwb-law.de
Beratungsbedarf?
Erstellung von IT-Verträgen
Begleitung von IT-Projekten
Datenschutz-Beratung