SCRUM Vertragsgestaltung & Vertragsorientierte Projektdurchführung Katharina Vierheilig Vorlesung: Juristisches IT-
Agile Softwareentwicklung SCRUM 2
SCRUM Agiles Manifest Individuen und Interaktion Prozesse und Werkzeuge Laufende Software Ausgedehnte Dokumentation Zusammenarbeit mit dem Kunden Vertragsverhandlungen Reaktion auf Veränderung Planverfolgung 3
SCRUM Rollen Product Owner Scrum Master Entwickler Team 4
SCRUM Rollen Product Owner - vertritt den Auftraggeber/ fachliche Seite - kennt das Produkt im Detail <-> regelmäßigen Kontakt zu AG und Entwicklern - verantwortlich für das zu entwickelnde Produkt & dessen Wertmaximierung Entwicklerteam - entwickelt das Produkt bzw. ein Produkt Feature - 7 +/- 2 Entwickler aus verschiedenen Kompetenzbereichen - kein Team- oder Projektmanager -> selbstorganisierend Scrum Master 1) Team-Moderator ( Projektmanager) - Unterstützt das Team: Probleme, Gestaltung der Arbeitsabläufe - Kontaktperson nach außen 2) Scrum- Vertreter - Verständnis - Einhaltung der Regeln 5
SCRUM Vorgehensmodell & Prinzipien 6
SCRUM Prinzipien Product Backlog - vom Product Owner erstellt und verwaltet - beschreibt in priorisierter Reihenfolge, was das Produkt können soll als konkret ausformulierte Funktionalitäten - dynamisch: Anforderungen können sich ständig ändern - Beschreibung der Anforderungen in Form von User Stories: "Als <Rolle - das Wer> möchte ich <Funktionalität - das Was>, damit ich <einen Wert habe - das Warum>. - je höher die Priorität desto detaillierter die User Stories 7
SCRUM Prinzipien Sprint Planung in 2 Phasen 1) Product Owner und Team besprechen höchstpriorisierten Elemente aus dem PB (= Funktionlitäten mit größtmöglichem Mehrwert) -> Verständnis! 2) Team wählt Einträge aus dem PB, welche im nächsten Sprint bearbeitet werden sollen (Menge ist abhängig von der Arbeitsgeschwindigkeit) -> Zerlegung in Tasks (=Aufgaben, 2-4 Std., können von einem Entwickler bearbeitet werden) -> Aufwandschätzung und Priorisierung der Tasks = Plan für nächsten Sprint -> Analyse der Machbarkeit -> Commitment Sprint Backlog - priorisierte Tasks aus der Sprint Planung - Inhalt darf während dem Sprint nicht geändert werden 8
SCRUM Prinzipien Sprint zentrales Element von Scrum, in welchem der Entwicklungsprozess stattfindet Dauer: 1-4 Wochen; immer gleich (innerhalb eines Projektes); wird nie verlängert! Endprodukt ist immer eine funktionierende Software (Produkt-Inkrement) Team arbeitet selbstorganisierend und eigenverantwortlich Daily Scrum - = tägl. Standup-Treffen während einem Sprint - fixer Zeitpunkt, fixe Dauer: 15 Minuten - 3 Fragen: 1. Was habe ich gestern erreicht? 2. Was werde ich heute erreichen? 3. Was blockiert mich? -> Beobachtung des Fortschritts, Einsicht in die Arbeit der anderen Teammitglieder, frühes Aufdecken von Problemen 9
SCRUM Prinzipien Definition of Done - allg. Verständnis ein Funktionalität als fertig zu bezeichnen - = Liste von Kriterien, die zu erfüllen sind (z.b. Testen, Einhaltung der Coding Standards) - dient als Qualitätsmaß - sollte stetig erweitert werden (basierend auf Erfahrungen) Sprint Review - Live Demo des Produkts - Anpassung des Product Backlogs - Verantwortung geht wieder auf Product Owner über Sprint Retrospektive - dient der Verbesserung des Entwicklungsprozesses - Ziel: mehr Wert, weniger Aufwand - ggf. Anpassung der Definition of Done 10
Vertragsgestaltung SCRUM 11
Vertragsgestaltung Projektvertrag 1. Projekt Vision: Was wird mit dem Projekt beabsichtigt? 2. Rahmenbedingungen: Wie soll das Projekt durchgeführt werden? 3. Konfliktlösung: Wie wird bei einer Projektkrise vorgegangen? 12
Vertragsgestaltung Projektvertrag SCRUM Inhalte Rollen- und Aufgabenverteilung - Verantwortungsbereiche (z.b. Product Owner: Freiheit stellvertretend für AG Entscheidungen zu treffen) - Mitbestimmungsrecht des AG bei der Auswahl der Entwickler - Qualifikation und Fähigkeiten von Entwicklern Product Backlog und Sprint Backlog - Inhalt und Form - User Stories (z.b. als Muster im Anhang des Vertrages): Detailgrad, Aufwandschätzung, Priorisierung - Verbindlichkeit der Einträge im Sprint Backlog Sprint Prozess - Dauer - keine Verlängerung! - Erklärung von Scrum-Regeln 13
Vertragsgestaltung Projektvertrag allgemeine Inhalte 1) Vertragsgegenstand Programm, Benutzerdokumentation, Quellcode 2) Vergütung - Festpreis pro Sprint - Festpreis pro User Story - Festpreis für eine bestimmte Anzahl von User Stories - Tagessatz pro Entwickler + Regelung für Sonderfälle (Extrakosten, Nachlass) 3) Abnahme Teilabnahme nach jedem Sprint + Schlussabnahme 4) Konfliktlösung 5) Projektabbruch 6) Verantwortung und Haftung 7) Nutzungsrechte 8) Projektende <-> keine Einträge im Product Backlog 14
Vertragsgestaltung Geltendes Vertragsrecht Werkvertrag erfordert genaue Leistungsspezifikation vor Projektstart <-> agile Softwareentwicklung: Aufwand und Ziel sind bei Vertragsschluss noch unbekannt Dienstvertrag Programmieren nach Aufwand -> Kosten und Nutzen des gesamten Projektes bleiben unbekannt <-> Risiko beim Auftraggeber -> Kombination von Dienst- und Werkvertrag 1) Grundfunktionalität = Werkvertrag, Weiterentwicklung auf Zuruf = Dienstvertrag 2) Rahmenvertrag = Dienstvertrag, Sprint = Werkvertrag 15
Vertragsgestaltung Vertragsmodelle Entwicklung in Phasen - Phase = Sprint - Bietet dem Anbieter den Anreiz eine Phase erfolgreich abzuschließen - Risiko für Arbeitgeber wird reduziert Sprint Vertrag - Abkommen zwischen Product Owner und Entwicklerteam - Faktoren: Zeit (Dauer eines Sprints), Umfang (Product Backlog), Qualität (Definition of Done) und Kosten (Teamgröße * Zeit) + Vertragsmodell, um Rahmenbedingungen wie Gesamtumfang oder Kostenobergrenze festzulegen ( Money for nothing, changes for free ) 16
Vertragsorientierte Projektdurchführung SCRUM 17
Vertragsorientierte Projektdurchführung Planung & Realisierung Wasserfallmodell Phasen sind in sich abgeschlossen und verlaufen sequenziell Scrum Phasen des werden für jeden Sprint wiederholt und überschneiden sich teilweise 18
Vertragsorientierte Projektdurchführung Qualitätskontrolle Definition of Done - Kriterien sichern ein bestimmtes Maß an Qualität - Testen: automatisierte Build- und Testumgebung - Kriterien können ständig hinzugefügt werden Transparenz Produktqualität ist für jeden sichtbar ( Definition of Done ) Sprint Review & Sprint Retrospektive Regelmäßige Qualitätskontrolle von Produkt und Entwicklungsprozess 19
Vertragsorientierte Projektdurchführung Verantwortung Werkvertrag -> Erfolgsrisiko beim Anbieter Aufteilung der Verantwortung - Entwicklerteam: Produktverantwortung während des Sprints (Planung & Realisierung) - Product Owner: Wertmaximierung des Produktes - Scrum Master: Einhaltung der Scrum-Regeln - ggf. Projektleiter: externe Angelegenheiten Mitwirkungspflicht des Auftraggebers 20
Fazit SCRUM 21
Fazit Anwendung von Scrum Für Projekte die nicht an bestimmte Faktoren gebunden sind (Budget, Zeit, Qualität, Umfang) die einem komplexen Entwicklungsprozess unterliegen, der nicht im Voraus planbar ist mit weichen, wenig ausformulierten Anforderungen Voraussetzungen: - Kundennähe - Flexibilität beider Seiten - motiviertes und engagiertes Entwicklerteam - Entbehrlichkeit des Pflichtenheftes (keine Ausschreibung) 22
Quellen 23