From 1.4 to 1.5
From 9.2 to 10.1
From version 1.5
edited by Pascal Meyer
on 2025/07/29 03:45
on 2025/07/29 03:45
Change comment:
There is no comment for this version
To version 9.2
edited by Pascal Meyer
on 2025/07/30 17:42
on 2025/07/30 17:42
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 6 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,3 +1,5 @@ 1 +{{toc/}} 2 + 1 1 = Scrum - Ein kurzer Überblick = 2 2 3 3 **Was ist Scrum und warum brauchen wir das im SWP?** ... ... @@ -19,144 +19,85 @@ 19 19 20 20 **Rahmen:** 21 21 22 -* Rollen 23 -** Product Owner 24 +* **Rollen:** 25 +** **Product Owner** 24 24 *** Definiert Product-Features 25 25 *** Bestimmt Auslieferungsdatum und Inhalt 26 26 *** Akzeptiert oder weist Arbeitsergebnisse zurück 27 27 *** Im SWP der Tutor in Absprache mit Marco und das Team 28 -** Scrum Master 29 -** 30 -** Entwicklungs-Team 31 -* Meetings 32 -** Sprint Planning 33 -** Sprint Review 34 -** Sprint Retrospektive 35 -** Tägliches Scrum-Meeting (Daily) 36 -* Artefakte 37 -** Product Backlog 38 -** Sprint Backlog 39 -** Produktinkrement 30 +** **Scrum Master** 31 +*** Repräsentiert das Management gegenüber dem Projekt 32 +*** Verantwortlich für die Einhaltung von Scrum-Werten und -Techniken 33 +*** Beseitigt Hindernisse 34 +*** Stellt sicher, dass das Team vollständig, funktional und produktiv ist 35 +*** Unterstützt die enge Zusammenarbeit zwischen allen Rollen und Funktionen 36 +*** Schützt das Team vor äußeren Störungen 37 +*** Im SWP ein spezielles Mitglied der Gruppe, welches trotzdem auch mitentwickelt 38 +** **Entwicklungs-Team** 39 +*** Typischerweise 5-9 Personen 40 +*** Funktionsübergreifend 41 +**** QS, Programmierer, UI-Designer, etc. 42 +*** Mitglieder sollen Vollzeitmitglieder sein 43 +*** Teams organisieren sich selbst 44 +*** Mitgliedschaft kann nur zwischen Sprints verändert werden 45 +* **Meetings:** 46 +** **Sprint Planning** 47 +*** Sprint Priorisierung 48 +**** Product Backlog analysieren und auswerten 49 +**** Sprint-Ziel festlegen 50 +*** Planung 51 +**** Entscheiden, wie man das Sprint-Ziel erreichen kann (Design) 52 +**** Sprint Backlog (Tasks) aus Product Backlog (User Stories/Features) erstellen 53 +***** Team wählt Einheiten, zu deren Implementierung es sich verpflichten kann, aus dem Product Backlog aus 54 +*** Sprint Backlog schätzen (Planning Poker, Magic Estimation, etc.) 55 +*** Sprint-Ziel 56 +**** Kurze Angabe dessen, worauf sich die Arbeiten während des Sprints fokussieren 57 +**** Wichtig! Wird gerne unterschätzt 58 +**** Hilft, das Ziel im Auge zu behalten 59 +** **Sprint Review** 60 +*** Das Team präsentiert, was es während eines Sprints erreicht hat 61 +*** Typischerweise in Form einer Demo mit neuen Features oder der zugrunde liegenden Architektur 62 +*** Das ganze Team nimmt teil! 63 +** **Sprint Retrospektive** 64 +*** Regelmäßig prüfen, was gut und was nicht so gut funktioniert 65 +*** ca. 15-30 min lang 66 +*** Nach jedem Sprint 67 +*** Das gesamte Team kommt zusammen und diskutiert, wie es sich verbessern möchte 68 +*** Methode hierfür bspw: Starfish (siehe Bild) 69 +*** Weitere Methoden für die Retrospektiven finden sich z.B. hier: [[https:~~/~~/retromat.org/>>url:https://retromat.org/]] 70 +** **Tägliches Scrum-Meeting (Daily)** 71 +*** Wöchentliches Treffen startet mit Scrum-Meeting 72 +*** Am Ende der Sitzung Verteilung neuer Aufgaben (jeder hat mindestens ein Ticket) 73 +*** Im Weekly werden keine Lösungen diskutiert, dies kann im weiteren Verlauf der Sitzung passieren 74 +* **Artefakte:** 75 +** **Product Backlog** 76 +*** Die Anforderungen für das finale Produkt 77 +*** Eine Liste aller gewünschten Projektarbeiten 78 +*** Eigentlich immer mehr, als im aktuellen Sprint gebraucht wird 79 +*** Im SWP: Zu Beginn füllen und später ergänzen 80 +*** Vom Product Owner priorisiert 81 +*** Zu Beginn des Sprints repriorisiert 82 +** **Sprint Backlog** 83 +*** Team-Mitglieder wählen Tasks aus (Arbeit wird nie zugewiesen) 84 +*** Aber**:** 85 +**** Im SWP hat jeder am Ende einer Sitzung eine Aufgabe! 86 +**** Im Zweifelsfall durch Zuweisung... 87 +*** Jedes Team-Mitglied kann Tasks hinzufügen, löschen oder ändern (basierend auf dem aktuellen Ziel) 88 +*** Wenn Arbeit unklar ist, definieren Sie erstmal einen Task mit größerer Schätzung und erstelle Unteraufgaben, sobald die Arbeit klarer wird 89 +*** Definieren Sie für die Tickets eine Definition of Done ([[https:~~/~~/www.scrum-events.de/was-ist-die-definition-of-done-dod.html>>url:https://www.scrum-events.de/was-ist-die-definition-of-done-dod.html]]) 90 +** **Produktinkrement** 40 40 41 - ===**Rollen**===92 +**[[image:Scrum-Prozess.JPG]]** 42 42 43 - ProductOwner:94 += Scrum - im Detail = 44 44 45 -* Definiert Product-Features 46 -* Bestimmt Auslieferungsdatum und Inhalt 47 -* Akzeptiert oder weist Arbeitsergebnisse zurück 48 -* Im SWP der Tutor in Absprache mit Marco und das Team 49 - 50 -Scrum Master: 51 - 52 -* Repräsentiert das Management gegenüber dem Projekt 53 -* Verantwortlich für die Einhaltung von Scrum-Werten und -Techniken 54 -* Beseitigt Hindernisse 55 -* Stellt sicher, dass das Team vollständig, funktional und produktiv ist 56 -* Unterstützt die enge Zusammenarbeit zwischen allen Rollen und Funktionen 57 -* Schützt das Team vor äußeren Störungen 58 - 59 - → Im SWP ein spezielles Mitglied der Gruppe 60 - 61 - → Soll trotzdem auch mit entwickeln 62 - 63 -Entwicklungs-Team: 64 - 65 -* Typischerweise 5-9 Personen 66 -* Funktionsübergreifend 67 -** QS, Programmierer, UI-Designer, etc. 68 -* Mitglieder sollen Vollzeitmitglieder sein 69 -* Teams organisieren sich selbst 70 -* Mitgliedschaft kann nur zwischen Sprints verändert werden 71 - 72 - → Es kann helfen, einen Projektleiter zu bestimmen (ist nicht Scrum-Konform, aber im SWP kann es hilfreich sein) 73 - 74 -=== **Meetings** === 75 - 76 -Sprint Planning 77 - 78 -* Sprint Priorisierung 79 -** Product Backlog analysieren und auswerten 80 -** Sprint-Ziel festlegen 81 -* Planung 82 -** Entscheiden, wie man das Sprint-Ziel erreichen kann (Design) 83 -** Sprint Backlog (Tasks) aus Product Backlog (User Stories/Features) erstellen 84 -*** Team wählt Einheiten, zu deren Implementierung es sich verpflichten kann, aus dem Product Backlog aus 85 -* Sprint Backlog schätzen (Planning Poker, Magic Estimation, etc.) 86 -* Sprint-Ziel 87 -** Kurze Angabe dessen, worauf sich die Arbeiten während des Sprints fokussieren 88 -** Wichtig! Wird gerne unterschätzt 89 -** Hilft, das Ziel im Auge zu behalten 90 - 91 -Daily Scrum //(hier: Weekly)// 92 - 93 -* Wöchentliches Treffen startet mit Scrum-Meeting 94 -* Am Ende der Sitzung Verteilung neuer Aufgaben (jeder hat mindestens ein Ticket) 95 -* Im Weekly werden keine Lösungen diskutiert, dies kann im weiteren Verlauf der Sitzung passieren 96 - 97 -Sprint-Review 98 - 99 -* Das Team präsentiert, was es während eines Sprints erreicht hat 100 -* Typischerweise in Form einer Demo mit neuen Features oder der zugrunde liegenden Architektur 101 -* Das ganze Team nimmt teil! 102 - 103 -Sprint-Retrospektive 104 - 105 -* Regelmäßig prüfen, was gut und was nicht so gut funktioniert 106 -* ca. 15-30 min lang 107 -* Nach jedem Sprint 108 -* Das gesamte Team kommt zusammen und diskutiert, wie es sich verbessern möchte 109 -* Methode hierfür bspw: Starfish (siehe Bild) 110 -* Weitere Methoden für die Retrospektiven finden sich z.B. hier: [[https:~~/~~/retromat.org/>>url:https://retromat.org/]] 111 - 112 -[[~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/e505851f2237f527759101e71f2207f9/Retrospektive.png~|~|alt="Retrospektive.png" height="393" width="524"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/e505851f2237f527759101e71f2207f9/Retrospektive.png]] 113 - 114 -=== **Artefakte** === 115 - 116 -Product Backlog: 117 - 118 -* Die Anforderungen für das finale Produkt 119 -* Eine Liste aller gewünschten Projektarbeiten 120 -* Eigentlich immer mehr, als im aktuellen Sprint gebraucht wird 121 -* Im SWP: Zu Beginn füllen und später ergänzen 122 -* Vom Product Owner priorisiert 123 -* Zu Beginn des Sprints repriorisiert 124 - 125 -Sprint Backlog: 126 - 127 -* Team-Mitglieder wählen Tasks aus (Arbeit wird nie zugewiesen) 128 -* **Aber:** 129 -** Im SWP hat jeder am Ende einer Sitzung eine Aufgabe! 130 -** Im Zweifelsfall durch Zuweisung... 131 -* Jedes Team-Mitglied kann Tasks hinzufügen, löschen oder ändern (basierend auf dem aktuellen Ziel) 132 -* Wenn Arbeit unklar ist, definieren Sie erstmal einen Task mit größerer Schätzung und erstelle Unteraufgaben, sobald die Arbeit klarer wird 133 -* Definieren Sie für die Tickets eine Definition of Done ([[https:~~/~~/www.scrum-events.de/was-ist-die-definition-of-done-dod.html>>url:https://www.scrum-events.de/was-ist-die-definition-of-done-dod.html]]) 134 - 135 -= Scrum im Detail = 136 - 137 137 == Scrum-Prozess == 138 138 139 -Nachdem die Produktvision definiert wurde, wird das Product Backlog erstellt und vom 140 -Product Owner //(hier: gesamtes Team im Softwareprojekt)// verwaltet. Aus dem Sprint 141 -Planning resultiert das Sprint Backlog, welches im Sprint durch das Entwicklungsteam 142 -//(hier: Scrum Master gehört zum Entwicklungsteam und programmiert mit)// abgearbeitet 143 -wird. Der Scrum Master sorgt dafür, dass das Entwicklungsteam ungestört arbeiten 144 -kann. Täglich //(hier: wöchentlich)// trifft er sich im Daily Scrum mit dem Team. Nach 145 -dem Sprint wird ein Produktinkrement an den Auftraggeber //(hier: an das gesamte// 146 -//Team)// ausgeliefert und in einem Sprint Review näher erläutert. Anschließend wird eine 147 -Sprint Retrospektive durchgeführt, in der das Team die Zusammenarbeit reflektieren kann. 98 +Nachdem die Produktvision definiert wurde, wird das Product Backlog erstellt und vom Product Owner //(hier: gesamtes Team im Softwareprojekt)// verwaltet. Aus dem Sprint Planning resultiert das Sprint Backlog, welches im Sprint durch das Entwicklungsteam //(hier: Scrum Master gehört zum Entwicklungsteam und programmiert mit)// abgearbeitet wird. Der Scrum Master sorgt dafür, dass das Entwicklungsteam ungestört arbeiten kann. Täglich //(hier: wöchentlich)// trifft er sich im Daily Scrum mit dem Team. Nach dem Sprint wird ein Produktinkrement an den Auftraggeber //(hier: an das gesamte Team)// ausgeliefert und in einem Sprint Review näher erläutert. Anschließend wird eine Sprint Retrospektive durchgeführt, in der das Team die Zusammenarbeit reflektieren kann. 148 148 149 149 == Product Backlog == 150 150 151 -Ein Product Backlog ist eine priorisierte Anforderungsliste für das von dem Auftraggeber 152 -gewünschte Softwareprodukt. Diese ist nie vollständig und zu jederzeit anpassbar. Der 153 -Product Owner //(hier: das gesamte Team)// ergänzt das Backlog stetig und hat in den 154 -meisten Fällen bereits User Stories für den nächsten Sprint geplant. Aus diesem Grund 155 -sind in dem Backlog nicht alle für das komplette Produkt relevanten Anforderungen 156 -zu finden, weil sich von Sprint zu Sprint immer wieder neue Anforderungen ergeben 157 -oder alte verworfen werden. Es ist auch möglich, dass sich die Prioritäten ändern. Der 158 -Product Owner //(hier: das gesamte Team)// verwaltet das Backlog, allerdings muss es für 159 -alle Mitglieder des Scrum Teams ersichtlich sein. 102 +Ein Product Backlog ist eine priorisierte Anforderungsliste für das von dem Auftraggeber gewünschte Softwareprodukt. Diese ist nie vollständig und zu jederzeit anpassbar. Der Product Owner //(hier: das gesamte Team)// ergänzt das Backlog stetig und hat in den meisten Fällen bereits User Stories für den nächsten Sprint geplant. Aus diesem Grund sind in dem Backlog nicht alle für das komplette Produkt relevanten Anforderungen zu finden, weil sich von Sprint zu Sprint immer wieder neue Anforderungen ergeben oder alte verworfen werden. Es ist auch möglich, dass sich die Prioritäten ändern. Der Product Owner //(hier: das gesamte Team)// verwaltet das Backlog, allerdings muss es für alle Mitglieder des Scrum Teams ersichtlich sein. 160 160 161 161 === **Der Nutzen eines gepflegten/priorisierten Product Backlogs** === 162 162 ... ... @@ -178,11 +178,7 @@ 178 178 179 179 == Sprint Planning == 180 180 181 -Nachdem das Product Backlog initial gefüllt und das Sprint-Ziel festgelegt wurde, kann 182 -das Planning beginnen. Das Sprint Planning ist wichtig, weil der Product Owner und 183 -das Entwicklungsteam //(hier: das gesamte Team)// sich so einig über die zu bearbeitenden 184 -User Stories werden können. In diesem Meeting wird gemeinsam mit dem Team, dem 185 -Scrum Master und dem Product Owner der Sprint vorbereitet. 124 +Nachdem das Product Backlog initial gefüllt und das Sprint-Ziel festgelegt wurde, kann das Planning beginnen. Das Sprint Planning ist wichtig, weil der Product Owner und das Entwicklungsteam //(hier: das gesamte Team)// sich so einig über die zu bearbeitenden User Stories werden können. In diesem Meeting wird gemeinsam mit dem Team, dem Scrum Master und dem Product Owner der Sprint vorbereitet. 186 186 187 187 === **Ablauf eines Plannings (Checkliste)** === 188 188 ... ... @@ -205,15 +205,7 @@ 205 205 206 206 == Schätzen von Aufwänden == 207 207 208 -Es sollte aus mehreren Gründen geschätzt werden. Zum einen bekommen alle Teammitglieder 209 -einen Einblick in den Inhalt aller User Stories, bevor angefangen wird, sie 210 -umzusetzen. Dies schärft das Verständnis für das Produkt. Zum anderen findet das 211 -Schätzen im besten Fall mit dem gesamten Team statt, wodurch dieses Meeting eine 212 -teamgeistfördernde Aktivität ist. Ein weiterer Vorteil ist, dass jede Person im Team weiß, 213 -worum es in der Story geht, sodass jede Person jede Aufgabe bearbeiten kann. Außerdem 214 -können so in Diskussionen Probleme oder zusätzliche Informationen identifiziert werden, 215 -wenn eine User Story beispielsweise in kleinere sinnvolle Einheiten aufgeteilt werden 216 -kann. Die Einheit, in der zumeist geschätzt wird, nennt sich "Story Points". 147 +Es sollte aus mehreren Gründen geschätzt werden. Zum einen bekommen alle Teammitglieder einen Einblick in den Inhalt aller User Stories, bevor angefangen wird, sie umzusetzen. Dies schärft das Verständnis für das Produkt. Zum anderen findet das Schätzen im besten Fall mit dem gesamten Team statt, wodurch dieses Meeting eine teamgeistfördernde Aktivität ist. Ein weiterer Vorteil ist, dass jede Person im Team weiß, worum es in der Story geht, sodass jede Person jede Aufgabe bearbeiten kann. Außerdem können so in Diskussionen Probleme oder zusätzliche Informationen identifiziert werden, wenn eine User Story beispielsweise in kleinere sinnvolle Einheiten aufgeteilt werden kann. Die Einheit, in der zumeist geschätzt wird, nennt sich "Story Points". 217 217 218 218 === **Ablauf der Aufwandsschätzung (Checkliste)** === 219 219 ... ... @@ -239,42 +239,25 @@ 239 239 * Nur wenige Zahlen auswählen (bspw. 1,2,3,5,8) 240 240 * Wenn in T-Shirt-Größen geschätzt wird, dann jeder Größe eine Zahl zuweisen, sodass das Burndown- und Velocity-Chart genutzt werden kann 241 241 242 -[[ ~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/78f387122adf2a44d3b92efa743d3446/tshirtfibo.JPG~|~|alt="tshirtfibo.JPG"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/78f387122adf2a44d3b92efa743d3446/tshirtfibo.JPG]]173 +[[image:tshirtfibo.JPG]] 243 243 244 244 === **Definition eines Velocity Charts** === 245 245 246 -Hat das Team schon mindestens einen Sprint hinter sich, kann der nächste Sprint auf 247 -Basis der Velocity aufgebaut werden. Die Velocity steht für die Geschwindigkeit des 248 -Teams. Das bedeutet, dass ermittelt wird, wie viele Story Points das Entwicklungsteam 249 -in dem vorherigen Sprint geschafft hat. Aufgrund dieser Information kann der darauf 250 -folgende Sprint genauer geplant werden, indem sich das Team nur auf die Anzahl der 251 -vorher erledigten Story Points committet. Die Abbildung zeigt ein solches Velocity Chart. 252 -Die x-Achse zeigt die bisherige Anzahl an Sprints und die y-Achse die Story Points, die 253 -in einem Sprint erledigt wurden. Es ist zu sehen, dass beispielsweise im zweiten Sprint 254 -15 Story Points geschafft wurden, jedoch im dritten Sprint nur fünf. Ab dem dritten 255 -Sprint kann eine Verbesserung der Geschwindigkeit des Teams wahrgenommen werden. 177 +Hat das Team schon mindestens einen Sprint hinter sich, kann der nächste Sprint auf Basis der Velocity aufgebaut werden. Die Velocity steht für die Geschwindigkeit des 178 +Teams. Das bedeutet, dass ermittelt wird, wie viele Story Points das Entwicklungsteam in dem vorherigen Sprint geschafft hat. Aufgrund dieser Information kann der darauf folgende Sprint genauer geplant werden, indem sich das Team nur auf die Anzahl der vorher erledigten Story Points committet. Die Abbildung zeigt ein solches Velocity Chart. Die x-Achse zeigt die bisherige Anzahl an Sprints und die y-Achse die Story Points, die in einem Sprint erledigt wurden. Es ist zu sehen, dass beispielsweise im zweiten Sprint 15 Story Points geschafft wurden, jedoch im dritten Sprint nur fünf. Ab dem dritten Sprint kann eine Verbesserung der Geschwindigkeit des Teams wahrgenommen werden. 256 256 257 -[[ ~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/3bb28351d712bbf3e9ad6360fd85bc6a/velo.JPG~|~|alt="velo.JPG"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/3bb28351d712bbf3e9ad6360fd85bc6a/velo.JPG]]180 +[[image:velo.JPG]] 258 258 259 259 === **Definition eines Burndown Charts** === 260 260 261 -Eine Möglichkeit zur Überprüfung des Fortschritts während eines Sprints ist die Erstellung 262 -eines Burndown Charts. Es zeigt die bereits erledigten Story Points auf Basis 263 -der verbleibenden Zeit an. Somit kann schnell gesehen werden, ob Verzögerungen oder 264 -Probleme auftreten und falls dies der Fall ist, kann ein Meeting einberufen werden, 265 -damit über die Probleme gesprochen wird. Die Abbildung zeigt ein 266 -Burndown Chart. Auf der x-Achse sind die Arbeitstage zu sehen und auf der y-Achse 267 -die noch zu erledigenden Story Points für den Sprint. Es ist zu sehen, dass das Team 268 -bisher einen guten Fortschritt hat, weil der Graph bisher stetig abfällt. 184 +Eine Möglichkeit zur Überprüfung des Fortschritts während eines Sprints ist die Erstellung eines Burndown Charts. Es zeigt die bereits erledigten Story Points auf Basis der verbleibenden Zeit an. Somit kann schnell gesehen werden, ob Verzögerungen oder Probleme auftreten und falls dies der Fall ist, kann ein Meeting einberufen werden, damit über die Probleme gesprochen wird. Die Abbildung zeigt ein Burndown Chart. Auf der x-Achse sind die Arbeitstage zu sehen und auf der y-Achse die noch zu erledigenden Story Points für den Sprint. Es ist zu sehen, dass das Team bisher einen guten Fortschritt hat, weil der Graph bisher stetig abfällt. 269 269 270 -[[ ~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/a5dbbbeddb36c2545d5748bfef5124c2/burnd.JPG~|~|alt="burnd.JPG"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/a5dbbbeddb36c2545d5748bfef5124c2/burnd.JPG]]186 +[[image:burnd.JPG]] 271 271 272 272 == Daily Scrum == 273 273 274 -Täglich //(hier: wöchentlich)// treffen sich das Entwicklungsteam und der Scrum Master 275 -zu einem Meeting. Es ist ein sehr kurzes Treffen, welches immer zur gleichen Zeit am 276 -gleichen Ort stehend stattfindet. Zumeist stehend, damit es bewusst kurz gehalten wird. 277 -Das Treffen sollte nicht länger als 15 Minuten dauern. Jedes Teammitglied beantwortet 190 +Täglich //(hier: wöchentlich)// treffen sich das Entwicklungsteam und der Scrum Master zu einem Meeting. Es ist ein sehr kurzes Treffen, welches immer zur gleichen Zeit am gleichen Ort stehend stattfindet. Zumeist stehend, damit es bewusst kurz gehalten wird. Das Treffen sollte nicht länger als 15 Minuten dauern. Jedes Teammitglied beantwortet 191 + 278 278 drei Fragen: 279 279 280 280 1. Was habe ich gestern gemacht? ... ... @@ -281,27 +281,13 @@ 281 281 1. Was werde ich heute tun? 282 282 1. Gibt es Hindernisse, die mir im Weg stehen? 283 283 284 -Durch das Daily Scrum werden Probleme sichtbar, die für den Scrum Master von großer 285 -Bedeutung sind, da er hierdurch eventuelle Impediments wahrnehmen und anschließend 286 -beseitigen kann. Außerdem ist dieses Treffen für das Team wichtig, um sich gegenseitig 287 -zu informieren und nach eventuell benötigter Hilfe zu suchen. Damit dieses Treffen 288 -möglichst effektiv ist, sollten sich die Teammitglieder darauf vorbereiten und vorher 289 -überlegen, was gestern bearbeitet wurde und was heute erledigt wird. Der Scrum 290 -Master sorgt in diesem Meeting dafür, dass die anderen Teammitglieder nicht den Fokus 291 -verlieren. Außerdem achtet er auf die Zeit, sodass diese eingehalten wird. 198 +Durch das Daily Scrum werden Probleme sichtbar, die für den Scrum Master von großer Bedeutung sind, da er hierdurch eventuelle Impediments wahrnehmen und anschließend beseitigen kann. Außerdem ist dieses Treffen für das Team wichtig, um sich gegenseitig zu informieren und nach eventuell benötigter Hilfe zu suchen. Damit dieses Treffen möglichst effektiv ist, sollten sich die Teammitglieder darauf vorbereiten und vorher überlegen, was gestern bearbeitet wurde und was heute erledigt wird. Der Scrum Master sorgt in diesem Meeting dafür, dass die anderen Teammitglieder nicht den Fokus verlieren. Außerdem achtet er auf die Zeit, sodass diese eingehalten wird. 292 292 293 293 == Definition of Done/Definition of Ready == 294 294 295 295 === **Definition of Done** === 296 296 297 -Während eines Sprints beginnen die Entwickler erst eine neue Story, wenn die vorherige 298 -abgeschlossen ist. Damit alle Teammitglieder und der Product Owner //(hier: das gesamte// 299 -//Team)// das gleiche Verständnis für "fertig" haben, gibt es die Definition of Done. Diese 300 -umfasst eine Sammlung bestimmter Kriterien, die erfüllt sein müssen, damit eine 301 -Story als "fertig" gilt. Sie ist eine Forderung seitens des Product Owners an das 302 -Entwicklungsteam //(hier: seitens des Teams)//, welche, ebenso wie die Definition of Ready, 303 -verhandelt wird. Die Kriterien der Definition of Done sammelt das Team gemeinsam 304 -mit dem Product Owner //(hier: ohne den Product Owner)// bei einem separaten Treffen. 204 +Während eines Sprints beginnen die Entwickler erst eine neue Story, wenn die vorherige abgeschlossen ist. Damit alle Teammitglieder und der Product Owner //(hier: das gesamte Team)// das gleiche Verständnis für "fertig" haben, gibt es die Definition of Done. Diese umfasst eine Sammlung bestimmter Kriterien, die erfüllt sein müssen, damit eine Story als "fertig" gilt. Sie ist eine Forderung seitens des Product Owners an das Entwicklungsteam //(hier: seitens des Teams)//, welche, ebenso wie die Definition of Ready, verhandelt wird. Die Kriterien der Definition of Done sammelt das Team gemeinsam mit dem Product Owner //(hier: ohne den Product Owner)// bei einem separaten Treffen. 305 305 306 306 ==== **Nutzen einer Definition of Done** ==== 307 307 ... ... @@ -312,15 +312,7 @@ 312 312 313 313 === **Definition of Ready** === 314 314 315 -Eine Definition of Ready ist eine Sammlung von Forderungen von dem Entwicklungsteam 316 -an den Product Owner //(hier: innerhalb des Teams)//, wie eine User Story beschrieben 317 -sein muss, damit das Entwicklungsteam ungestört und ohne Hindernisse arbeiten kann. 318 -Über diese Forderungen verhandelt das Team mit dem Product Owner //(hier: das Team// 319 -//handelt die Punkte untereinander aus)// und das Ergebnis ist die Definition of Ready. 320 -Beispielsweise kann das Team eine Form vorgeben, wie der Titel der Story geschrieben 321 -sein soll oder dass Akzeptanzkriterien enthalten sein müssen und in welcher Form. 322 -Das Team muss überprüfen, ob die Kriterien in den User Stories eingehalten wurden. 323 -Wurden sie nicht eingehalten, können große Verzögerungen entstehen. 215 +Eine Definition of Ready ist eine Sammlung von Forderungen von dem Entwicklungsteam an den Product Owner //(hier: innerhalb des Teams)//, wie eine User Story beschrieben sein muss, damit das Entwicklungsteam ungestört und ohne Hindernisse arbeiten kann. Über diese Forderungen verhandelt das Team mit dem Product Owner //(hier: das Team handelt die Punkte untereinander aus)// und das Ergebnis ist die Definition of Ready. Beispielsweise kann das Team eine Form vorgeben, wie der Titel der Story geschrieben sein soll oder dass Akzeptanzkriterien enthalten sein müssen und in welcher Form. Das Team muss überprüfen, ob die Kriterien in den User Stories eingehalten wurden. Wurden sie nicht eingehalten, können große Verzögerungen entstehen. 324 324 325 325 === **Unterschiede zwischen Definition of Done und Definition of Ready** === 326 326 ... ... @@ -329,15 +329,7 @@ 329 329 330 330 == Sprint Review == 331 331 332 -Am Ende eines Sprints findet das Sprint Review statt (siehe [[Sprint-Review mit Jira>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/691404828/Sprint-Review+mit+Jira]]). Bei diesem Treffen werden 333 -die Sprint-Ergebnisse allen Interessierten präsentiert. Dazu gehören beispielsweise der 334 -Auftraggeber oder andere Stakeholder //(hier: mit dem gesamten Team und ggf. dem// 335 -//Tutor)//. Der Scrum Master bereitet dieses Meeting vor, indem er die Interessenten über 336 -dieses Treffen informiert, des Weiteren moderiert er die Sitzung. Die Vorstellung der 337 -Ergebnisse wird von den Teammitgliedern //(hier: inkl. dem Scrum Master, da auch// 338 -//der Scrum Master im Softwareprojekt programmiert)// vorbereitet. Nachdem der Scrum 339 -Master das Meeting eröffnet hat, erklärt er kurz das Sprint-Ziel und die User Stories, 340 -die abgeschlossen wurden. Dann präsentiert das Entwicklungsteam die Ergebnisse. 224 +Am Ende eines Sprints findet das Sprint Review statt. Bei diesem Treffen werden die Sprint-Ergebnisse allen Interessierten präsentiert. Dazu gehören beispielsweise der Auftraggeber oder andere Stakeholder //(hier: mit dem gesamten Team und ggf. dem Tutor)//. Der Scrum Master bereitet dieses Meeting vor, indem er die Interessenten über dieses Treffen informiert, des Weiteren moderiert er die Sitzung. Die Vorstellung der Ergebnisse wird von den Teammitgliedern //(hier: inkl. dem Scrum Master, da auch der Scrum Master im Softwareprojekt programmiert)// vorbereitet. Nachdem der Scrum Master das Meeting eröffnet hat, erklärt er kurz das Sprint-Ziel und die User Stories, die abgeschlossen wurden. Dann präsentiert das Entwicklungsteam die Ergebnisse. 341 341 342 342 === **Mehrwert eines Reviews** === 343 343 ... ... @@ -348,17 +348,89 @@ 348 348 349 349 == Sprint Retrospektive == 350 350 351 -Während einer Retrospektive kann das Entwicklungsteam die Zusammenarbeit reflektieren, 352 -Missmut äußern und Vorschläge für Verbesserungen sammeln. Das Ziel einer 353 -Retrospektive ist der kontinuierliche Verbesserungsprozess innerhalb des Teams. Ein 354 -gut funktionierendes Team kann qualitativ hochwertige Produkte liefern. Eine Retrospektive 355 -muss von einem Scrum Master gut vorbereitet werden. Der Scrum Master 356 -moderiert dieses Treffen 235 +Während einer Retrospektive kann das Entwicklungsteam die Zusammenarbeit reflektieren, Missmut äußern und Vorschläge für Verbesserungen sammeln. Das Ziel einer Retrospektive ist der kontinuierliche Verbesserungsprozess innerhalb des Teams. Ein gut funktionierendes Team kann qualitativ hochwertige Produkte liefern. Eine Retrospektive muss von einem Scrum Master gut vorbereitet werden. Der Scrum Master moderiert dieses Treffen 357 357 358 358 Beispiele für Retrospektiven finden sich z.B. hier: [[https:~~/~~/dzone.com/articles/7-formats-for-great-team-retrospectives?edition=703410>>url:https://dzone.com/articles/7-formats-for-great-team-retrospectives?edition=703410]] 359 359 360 - Video zur Sprintretrospektive und die Verwendung in Jira[[1080p>>url:https://swl.informatik.uni-oldenburg.de/swp/video/Jira/Sprint-Retrospektive.mp4]]239 +[[image:Unbenannt2.JPG]] 361 361 362 -[[~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/26a515caf8f128ae250a0240aea01531/Unbenannt2.JPG~|~|alt="Unbenannt2.JPG"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/26a515caf8f128ae250a0240aea01531/Unbenannt2.JPG]] 363 363 364 - 242 + 243 += User-Stories = 244 + 245 +== Was sind User Stories? == 246 + 247 +Ein Werkzeug, das häufig im agilen Projektmanagement eingesetzt wird, sind User 248 +Stories. Eine User Story ist eine Beschreibung einer Anforderung an ein Softwareprodukt. 249 +Sie ist aus der Sicht eines Nutzers //(hier: Spielteilnehmer)// formuliert. Außerdem 250 +wird in einer User Story immer ein Mehrwert und eine Bedeutung für den Nutzer 251 +erwähnt, welchen dieser durch die Funktionalität hat. Diese Funktionalität wird in 252 +das zu erstellende Produkt implementiert und erhöht somit den Wert des Produkts. 253 +Eine User Story liefert also immer einen Mehrwert. Der Titel der User Story beschreibt 254 +knapp die Hauptaussage der gesamten Story, welche immer das Ziel des Nutzers ist. In 255 +den meisten Fällen wird eine User Story in der folgenden Form geschrieben: 256 + 257 + 258 +"Als [Rolle] möchte ich [Tätigkeit], um [Nutzen]." 259 + 260 + 261 +Im Rahmen des Softwareprojekts könnte eine User Story beispielsweise wie folgt aussehen: 262 +//"Als Nutzer dieses Systems möchte ich mich einloggen können, um ein Spiel zu// 263 +//starten."// Die explizite Erwähnung der [Rolle] ist wichtig, weil der Anwendungsfall von 264 +Rolle zu Rolle variieren kann. Die [Tätigkeit] ist der Vorgang, welchen die Rolle bei 265 +Nutzung des vom Team zu implementierenden Produkts ausführt. Der [Nutzen] dient 266 +zur Einordnung der Wichtigkeit und hilft, eine Priorisierung der zu implementierenden 267 +Features vorzunehmen. Außerdem hilft es dem Team zu verstehen, warum sie dieses 268 +Feature implementieren sollen. 269 + 270 +== Mehrwert von User Stories == 271 + 272 +Da User Stories so formuliert werden sollten, dass sie jeder versteht, kann eine intensive 273 +Zusammenarbeit mit dem Auftraggeber //(hier: intensive Zusammenarbeit mit dem// 274 +//gesamten Team)// entstehen. Hierdurch wird die Beziehung untereinander gestärkt und 275 +sowohl Entwickler als auch Auftraggeber verstehen die Ziele der User Stories gleicherma- 276 +ßen. Ein weiterer Vorteil ist die Anpassbarkeit, weil sich die Wünsche des Auftraggebers 277 +jederzeit ändern können. Aus diesem Grund implementieren die Entwickler im schlimmsten 278 +Fall nur für eine sehr kurze Zeit etwas, was in der nächsten Iteration hinfällig ist, 279 +da sich der Wunsch des Auftraggebers jederzeit ändern kann. Außerdem werden nur 280 +die Stories detaillierter beschrieben, die in der Iteration erledigt werden sollen. So wird 281 +keine Zeit für die Planung von etwas aufgewendet, das sich im Nachhinein eventuell als 282 +obsolet herausstellt. 283 + 284 +== Der Nutzen von Akzeptanzkriterien == 285 + 286 +Da die Entwickler eventuell unterschiedliche Vorstellungen davon haben, wann eine 287 +bestimmte User Story fertig bearbeitet ist, hat sie bestimmte Akzeptanzkriterien. Diese 288 +bestimmen die Vollständigkeit der in der Story gewünschten Funktion. Sobald diese 289 +Akzeptanzkriterien erfüllt sind, ist die User Story vollständig umgesetzt und liefert nur 290 +dann den gewünschten Mehrwert für den Auftraggeber //(hier: für das Team)//. 291 + 292 +== INVEST-Prinzip == 293 + 294 +Es gibt bestimmte Eigenschaften, die eine gute User Story ausmachen. Mit dem INVEST- 295 +Prinzip lassen sich diese Eigenschaften beschreiben. Dabei ist das Wort INVEST ein 296 +Akronym für die folgenden Eigenschaften einer guten User Story: 297 + 298 +**Independent** Diese Eigenschaft meint, dass eine gute User Story unabhängig von 299 +anderen ist. Sind Stories voneinander abhängig, können Probleme entstehen, die eine 300 +Priorisierung erschweren. 301 + 302 +**Negotiable** Verhandelbare User Stories bedeuten, dass während des Entwicklungsprozesses 303 +bestimmte Akzeptanzkriterien angepasst werden können, wenn diese mit dem 304 +Auftraggeber //(hier: mit dem gesamten Team)// verhandelt wurden. 305 + 306 +**Valuable** Wertvolle User Stories meinen, dass sie einen bestimmten Mehrwert für 307 +den Auftraggeber und den Nutzer darstellen. 308 + 309 +**Estimatable** Eine gute User Story soll schätzbar sein, das bedeutet, dass die Story 310 +von anderen abgegrenzt wird, sodass sie gut unterscheidbar ist. 311 + 312 +**Small** Damit eine User Story gut schätzbar ist, muss sie klein sein. Außerdem können 313 +zu große User Stories nicht in einem Sprint bearbeitet werden. 314 + 315 +**Testable** Eine testbare User Story hat gut strukturierte Akzeptanzkriterien, die 316 +getestet werden können. 317 + 318 +=== Ausreichend beschriebene User Story mit dem INVEST-Prinzip === 319 + 320 +[[image:Unbenannt.JPG]]
- Scrum-Prozess.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +59.4 KB - Content
- Unbenannt.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +178.6 KB - Content
- Unbenannt2.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +60.7 KB - Content
- burnd.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.3 KB - Content
- tshirtfibo.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +20.8 KB - Content
- velo.JPG
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.PascalMeyer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.3 KB - Content