Agile Methoden sorgen bei der Softwareentwicklung dafür, dass veränderte Anforderungen sehr schnell und unbürokratisch umgesetzt
werden können. Durch schnelle Entwicklungen sind ebenso schnelle Anpassungen an neue Bedürfnisse möglich. Außerdem schaffen die
kontinuierlichen Adaptionen während des Entwicklungsprozesses oftmals merkliche Wettbewerbsvorteile. Durch eine intensive Zusammenarbeit
zwischen dem Entwicklerteam und den Fachleuten wird ein konstruktives Arbeitsumfeld geschaffen. Doch in Sachen Vertragsgestaltung
stellt diese agile Arbeitsweise alle Projektbeteiligten vor große Herausforderungen.
© pixabay.com @Pexels
Herausforderung Komplexität: Warum verbindliche Kalkulationen nicht möglich sind
Schon bei „einfachen“ Programmierungen ist es oftmals schwer, vorab genau die Zeit- und Kostennote zu definieren. Die agile
Softwareentwicklung ist aber so unvorhersehbar und komplex, dass dies zwingend bei der Vertragsgestaltung berücksichtigt werden muss.
Nicht nur die Anforderungen an die Software, sondern auch die Zusammenarbeit zwischen Programmierer und Auftraggeber ist einem
kontinuierlichen Anpassungs- und Veränderungsprozess unterworfen. Umso wichtiger ist es, sich für die
agile Softwareentwicklung rechtssichere Verträge erstellen zu lassen.
Die besonderen Vertragsbedingungen bei agilen Softwareprojekten
Klassische IT-Projekte werden oftmals nach der Wasserfallmethodik abgerechnet. Die Anforderungen sind klar, die Zielstellung
auch und auf dem Weg dorthin gibt es Meilensteine, die im Projektplan festgehalten werden.
Im Rahmen der agilen Softwareentwicklung existiert ein solcher fester Projektplan nicht, denn Sinn und Ziel besteht ja gerade
in der Flexibilität. Durch die „fehlende“ Planung entstehen zwischen den Projektbeteiligten oftmals Unstimmigkeiten, die in
juristischen Auseinandersetzungen und Projektabbrühen enden. Hinzu kommt, dass manchmal auch keine klare Abgrenzung zwischen
einem Dienst,- einem Werks- und einem Arbeitnehmerüberlassungsvertrag möglich ist.
Aus diesem Grund ist eine agile Softwareentwicklung von vornherein nur für die Projekte und Auftraggeber geeignet, die weder
ein festes Budget, noch ein klar definiertes Zeitfenster vorgeben. Am Ende soll keine perfekte, sondern eine funktionsfähige
und effiziente Lösung gefunden werden. Rechtlich gesehen, handelt es sich dabei um unvollendete Planungen, bei denen die
Rechtsform schwammig ist. Wie sieht es im Hinblick auf den Schadensersatz und die Mängelgewährleistungsrechte aus? Auch die
Abnahmeregelungen aus dem Werkvertrag können nicht einfach auf agile Projekte adaptiert werden.
Programmierung mithilfe der Scrum-Methode
Um auf die wachsende Flexibilität bei der Softwareentwicklung auch im Bereich der Vertragsgestaltung reagieren zu können,
setzt man zunehmend auf die sogenannte Scrum-Methodik. Dabei werden sukzessive kleine Teile einer Gesamtsoftware programmiert,
die jederzeit angepasst und verändert werden können. Gleichzeitig soll ein möglichst klar definierter Arbeitsprozess für agile
Prinzipien gefunden werden. Statt eines festen Projektplanes, den es abzuarbeiten gilt, werden bei der Scrum-Methodik Leit-
und Orientierungspunkte für die Zusammenarbeit gesetzt.
Die Grundprinzipien dieser Methode lauten:
- Auftraggeber und Entwickler orientieren sich an einer langfristigen Vision
- Die Ergebnisse werden am Mehrwert für den Kunden gemessen
- Klare Fokussierung auf das gemeinsame Ziel
- Hohe Autonomie und Verantwortung für die Entwickler
- Alle Beteiligten werden eng in den Scrum-Prozess eingebunden
Regelmäßige Feedbacks sorgen dafür, dass die Entwicklung nicht in die falsche Richtung geht. Zudem reflektieren die Teams
selbst, ob und wie sie noch effektiver werden können. Die Einhaltung dieser Grundprinzipien ist die zwingende Voraussetzung
dafür, dass beide Seiten langfristig gut zusammenarbeiten können und es auch in vertraglicher Hinsicht einen gemeinsamen
Nenner geben kann.
Was muss ich bei der Vertragsgestaltung für agile Projekte beachten?
Bei einem agilen Softwareprojekt möchte der Auftraggeber trotzdem gerne einen Anhaltspunkt dafür haben, welche Kosten auf
ihn zukommen. Die Entwickler brauchen derweil den nötigen Freiraum für ihre Arbeit. Diese beiden Anforderungen in einen
vertraglichen Rahmen zu gießen, ist eine der großen Herausforderungen der agilen Softwareentwicklung.
Da dieser Bereich auch im IT-Recht noch relativ jung ist, sollten Sie bei der Gestaltung Ihrer Verträge für agile Softwareprojekte
einen Experten zurate ziehen, der die Fallstricke kennt und weiß, welche rechtlichen Regelungen für eine gute, vertrauenswürdige
und auch rechtssichere Zusammenarbeit getroffen werden müssen.