Freitag, 10. Mai 2013

Verträge für Projekte mit agilem Vorgehen (Teil 4/4)

Ein Thema, mit dem agile Projektmanager Abende füllen können, ist die Frage: Wie gestalte ich die Vertragsbeziehung zwischen Kunde und agilem Dienstleister? Im ersten Teil haben wir uns die möglichen Vertragsarten angesehen. Im zweiten Teil haben wir festgestellt, dass es in den meisten Projektsituation gar nicht möglich ist, Anforderungen und Design früh festzulegen. Im dritten Teil habe ich gezeigt, dass wir uns auf die betrieblichen Änderungen konzentrieren müssen, wenn wir über IT-Systeme verhandeln. Hier nun meine Empfehlungen für einen Projektvertrag.


In den vorherigen Teilen habe ich dargelegt, dass für die Projektarbeit ein Werk- oder ein Dienstvertrag (oder eine Mischung) in Frage kommen (/1, 2, 3/). Ein Werkvertrag ist geeignet, wenn man entweder die Anforderungen oder die Technologien sehr gut kennt. Bei allen anderen Situationen ist es besser, die vertraglichen Pflichten in einem Dienstvertrag zu beschreiben.

Bei Vertragsverhandlungen ist Geschwindigkeit sehr wichtig. Je länger sich Vertragsverhandlungen hinziehen, desto höher ist die Gefahr, dass schon mit Arbeiten begonnen wird, bevor man sich vertraglich geeinigt hat. Ab dann hat keiner mehr Interesse am Vertrag. Das bedeutet, dass jede aufwändige Analyse vor einer Vertragsverhandlung die Erfolgschance auf einen Vertragsschluss schmälert.

Welches Vorgehen wäre also sinnvoll, um bei unspezifizierten Ergebnissen schnell zu einem Vertrag zu kommen?

Ich empfehle ein Vorgehen in mehreren Schritten:
  • Schritt 1: zeitlichen und finanziellen Rahmen abstecken.
  • Schritt 2: Vision, grundsätzliche Architektur, betroffene Parteien feststellen. Daraus leitet sich auch das Projektprofil ab.
  • Schritt 3: So gut es geht, den Nutzen für den Kunden erfassen. Daraus leiten sich die ersten Liefergegenstände ab.
  • Schritt 4: Rollen, Vorgehensweise, Liefergegenstände und Phasenplanung klären
  • Schritt 5: Vertragsdokumente erstellen und verhandeln.

Was passiert in den einzelnen Schritten?

Als erstes sollte der ungefähre zeitliche und finanzielle Rahmen abgesteckt werden. Wenn ein Kunde nur 100.000 EUR zur Verfügung hat, nutzt es nichts ihm mehr zu verkaufen wollen. (Der Kunde darf natürlich auch nicht mehr Leistung als im Gegenwert von 100.000 EUR fordern.)

Der Lieferant muss nun prüfen, ob er überhaupt in der Lage ist, die Leistung innerhalb dieses Rahmens zu liefern. Ich gehe mal davon aus, dass er dafür gesorgt hat.

Nun braucht man einen oder mehrere Workshops mit dem Kunden, um ein paar Details zu klären (Vision, grundsätzliche Architektur, betroffene Parteien). Die Ergebnisse werden in einem Protokoll festgehalten. Der Lieferant sollte dafür Spezialisten haben, die solche Workshops moderieren können. Damit soll sichergestellt werden, dass die Vertragsparteien ein möglichst gutes Verständnis des Ziels bekommen.

Bei der Klärung des Nutzens wird geklärt, welche Abläufe sich beim Kunden ändern sollen. Für diese Änderungen braucht der Kunde wahrscheinlich Unterstützung vom Lieferanten. Dies könnten Konzepte, grobe Prozessbeschreibungen, grobe Rollenbeschreibungen o. ä. sein. Diese Liefergegenstände können Kunde und Lieferant genau spezifizieren. Dazu braucht man keinen Vertrag. Es reicht ein Angebot. Das Risiko für beide Seiten ist nicht groß.

Nachdem die groben Ziele vereinbart wurden, wird nun über die Vorgehensweise und die Rollen verhandelt. Im einfachsten Fall sieht das so aus:
  • Kunde und Lieferant geben sich Scrum als Rahmen für die Zusammenarbeit. Der Kunde stellt den Product Owner (beschrieben in Anlage 1). Der Lieferant stellt den Scrum Master (beschrieben in Anlage 2) und das Entwicklungsteam (beschrieben in Anlage 3).
  • Der Lieferant reserviert Kapazitäten in Höhe von X Personentagen in Zeit vom 01.01. bis zum 30.06. Für die Projektarbeit werden X Phasen vereinbart. Folgende Abstimmungstermine wurden festgelegt: Planungstermine am …, Review-Termine am …. 
  • Die genauen Liefergegenstände, die Akzeptanzkriterien und Testverfahren werden vor jeder Phase festgelegt und am Ende überprüft. Um eine Phase planen zu können, müssen bis zum X folgende Dokumente vorliegen: Product Backlog (die obersten X Einträge müssen vom Team geschätzt sein), Definition of Done, Kapazitätsplanung vom Team.
Wichtig ist, dass es keine automatischen Phasenübergänge gibt. Der Vertrag sollte so aufgesetzt werden, dass das Projekt am Ende von jeder Phase beendet werden kann. Am besten geht das so, dass im Projektvertrag der Rahmen und die Rollen geklärt werden. Für die konkreten Ergebnisse einer Phase wird ein konkretes Angebot geschrieben, das von beiden Seiten angenommen werden muss.

Was haben wir nun für einen Vertrag?

Im Prinzip ist es ein Dienstvertrag. Der Lieferant stellt eine bestimmte Anzahl von Personentagen in einer bestimmten Zeit zur Verfügung. Der Mitarbeiter haben eine bestimmte Qualifikation. Wenn an einer Software gearbeitet wird, bestimmt das Sprintbacklog den Arbeitsumfang. Wenn ein konkretes Dokument oder ein Veranstaltung geliefert werden soll, steht dies im Angebot.

Die Vergütung richtet sich nach abgeschlossenen Sprints, d. h. in der Regel stellt der Lieferant monatlich nachträglich seine Leistungen in Rechnung.

Durch die kurzen Workshops oder Abstimmungsrunden zu Beginn spart man allen Beteiligten viel Zeit und man kommt schneller zu schlanken Vertragsdokumenten.

Es fehlt noch die Rollenbeschreibung für denjenigen, der auf Lieferantenseite den Vertrag ausarbeitet und sich um die Workshops kümmert.

Beide Seiten arbeiten mit einem Projektrahmenvertrag, der durch kleine Angebote für die nächste Phase konkretisiert wird. So ist die grundlegende Zusammenarbeit geklärt. Durch die Angebote können beide Seiten auf Änderungen reagieren. Das ist agile Vertragsgestaltung.

Es gilt natürlich, wie Katja Roth in ihrem Beitrag über agile Projektverträge schreibt, dass die vertrauensvolle Zusammenarbeit mit dem Kunden noch wichtiger als der Vertrag ist (/4/).

Anmerkungen

Keine Kommentare:

Kommentar veröffentlichen