Changes for page Scrum

Last modified by pmeyer on 2025/09/12 04:57

edited by Pascal Meyer
on 2025/07/29 03:45
Change comment: There is no comment for this version
edited by Pascal Meyer
on 2025/07/30 17:43
Change comment: There is no comment for this version

Summary

Details

insert_drive_file 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,13 +19,13 @@
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
30 +** **Scrum Master**
29 29  *** Repräsentiert das Management gegenüber dem Projekt
30 30  *** Verantwortlich für die Einhaltung von Scrum-Werten und -Techniken
31 31  *** Beseitigt Hindernisse
... ... @@ -32,136 +32,72 @@
32 32  *** Stellt sicher, dass das Team vollständig, funktional und produktiv ist
33 33  *** Unterstützt die enge Zusammenarbeit zwischen allen Rollen und Funktionen
34 34  *** Schützt das Team vor äußeren Störungen
35 -** Entwicklungs-Team
36 -* Meetings
37 -** Sprint Planning
38 -** Sprint Review
39 -** Sprint Retrospektive
40 -** Tägliches Scrum-Meeting (Daily)
41 -* Artefakte
42 -** Product Backlog
43 -** Sprint Backlog
44 -** Produktinkrement
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**
45 45  
46 -=== **Rollen** ===
92 +**[[image:Scrum-Prozess.JPG]]**
47 47  
48 -Product Owner:
94 += Scrum - im Detail =
49 49  
50 -* Definiert Product-Features
51 -* Bestimmt Auslieferungsdatum und Inhalt
52 -* Akzeptiert oder weist Arbeitsergebnisse zurück
53 -* Im SWP der Tutor in Absprache mit Marco und das Team
54 -
55 -Scrum Master:
56 -
57 -* Repräsentiert das Management gegenüber dem Projekt
58 -* Verantwortlich für die Einhaltung von Scrum-Werten und -Techniken
59 -* Beseitigt Hindernisse
60 -* Stellt sicher, dass das Team vollständig, funktional und produktiv ist
61 -* Unterstützt die enge Zusammenarbeit zwischen allen Rollen und Funktionen
62 -* Schützt das Team vor äußeren Störungen
63 -
64 - → Im SWP ein spezielles Mitglied der Gruppe
65 -
66 - → Soll trotzdem auch mit entwickeln
67 -
68 -Entwicklungs-Team:
69 -
70 -* Typischerweise 5-9 Personen
71 -* Funktionsübergreifend
72 -** QS, Programmierer, UI-Designer, etc.
73 -* Mitglieder sollen Vollzeitmitglieder sein
74 -* Teams organisieren sich selbst
75 -* Mitgliedschaft kann nur zwischen Sprints verändert werden
76 -
77 - → Es kann helfen, einen Projektleiter zu bestimmen (ist nicht Scrum-Konform, aber im SWP kann es hilfreich sein)
78 -
79 -=== **Meetings** ===
80 -
81 -Sprint Planning
82 -
83 -* Sprint Priorisierung
84 -** Product Backlog analysieren und auswerten
85 -** Sprint-Ziel festlegen
86 -* Planung
87 -** Entscheiden, wie man das Sprint-Ziel erreichen kann (Design)
88 -** Sprint Backlog (Tasks) aus Product Backlog (User Stories/Features) erstellen
89 -*** Team wählt Einheiten, zu deren Implementierung es sich verpflichten kann, aus dem Product Backlog aus
90 -* Sprint Backlog schätzen (Planning Poker, Magic Estimation, etc.)
91 -* Sprint-Ziel
92 -** Kurze Angabe dessen, worauf sich die Arbeiten während des Sprints fokussieren
93 -** Wichtig! Wird gerne unterschätzt
94 -** Hilft, das Ziel im Auge zu behalten
95 -
96 -Daily Scrum //(hier: Weekly)//
97 -
98 -* Wöchentliches Treffen startet mit Scrum-Meeting
99 -* Am Ende der Sitzung Verteilung neuer Aufgaben (jeder hat mindestens ein Ticket)
100 -* Im Weekly werden keine Lösungen diskutiert, dies kann im weiteren Verlauf der Sitzung passieren
101 -
102 -Sprint-Review
103 -
104 -* Das Team präsentiert, was es während eines Sprints erreicht hat
105 -* Typischerweise in Form einer Demo mit neuen Features oder der zugrunde liegenden Architektur
106 -* Das ganze Team nimmt teil!
107 -
108 -Sprint-Retrospektive
109 -
110 -* Regelmäßig prüfen, was gut und was nicht so gut funktioniert
111 -* ca. 15-30 min lang
112 -* Nach jedem Sprint
113 -* Das gesamte Team kommt zusammen und diskutiert, wie es sich verbessern möchte
114 -* Methode hierfür bspw: Starfish (siehe Bild)
115 -* Weitere Methoden für die Retrospektiven finden sich z.B. hier: [[https:~~/~~/retromat.org/>>url:https://retromat.org/]]
116 -
117 -[[~[~[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]]
118 -
119 -=== **Artefakte** ===
120 -
121 -Product Backlog:
122 -
123 -* Die Anforderungen für das finale Produkt
124 -* Eine Liste aller gewünschten Projektarbeiten
125 -* Eigentlich immer mehr, als im aktuellen Sprint gebraucht wird
126 -* Im SWP: Zu Beginn füllen und später ergänzen
127 -* Vom Product Owner priorisiert
128 -* Zu Beginn des Sprints repriorisiert
129 -
130 -Sprint Backlog:
131 -
132 -* Team-Mitglieder wählen Tasks aus (Arbeit wird nie zugewiesen)
133 -* **Aber:**
134 -** Im SWP hat jeder am Ende einer Sitzung eine Aufgabe!
135 -** Im Zweifelsfall durch Zuweisung...
136 -* Jedes Team-Mitglied kann Tasks hinzufügen, löschen oder ändern (basierend auf dem aktuellen Ziel)
137 -* Wenn Arbeit unklar ist, definieren Sie erstmal einen Task mit größerer Schätzung und erstelle Unteraufgaben, sobald die Arbeit klarer wird
138 -* 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]])
139 -
140 -= Scrum im Detail =
141 -
142 142  == Scrum-Prozess ==
143 143  
144 -Nachdem die Produktvision definiert wurde, wird das Product Backlog erstellt und vom
145 -Product Owner //(hier: gesamtes Team im Softwareprojekt)// verwaltet. Aus dem Sprint
146 -Planning resultiert das Sprint Backlog, welches im Sprint durch das Entwicklungsteam
147 -//(hier: Scrum Master gehört zum Entwicklungsteam und programmiert mit)// abgearbeitet
148 -wird. Der Scrum Master sorgt dafür, dass das Entwicklungsteam ungestört arbeiten
149 -kann. Täglich //(hier: wöchentlich)// trifft er sich im Daily Scrum mit dem Team. Nach
150 -dem Sprint wird ein Produktinkrement an den Auftraggeber //(hier: an das gesamte//
151 -//Team)// ausgeliefert und in einem Sprint Review näher erläutert. Anschließend wird eine
152 -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.
153 153  
154 154  == Product Backlog ==
155 155  
156 -Ein Product Backlog ist eine priorisierte Anforderungsliste für das von dem Auftraggeber
157 -gewünschte Softwareprodukt. Diese ist nie vollständig und zu jederzeit anpassbar. Der
158 -Product Owner //(hier: das gesamte Team)// ergänzt das Backlog stetig und hat in den
159 -meisten Fällen bereits User Stories für den nächsten Sprint geplant. Aus diesem Grund
160 -sind in dem Backlog nicht alle für das komplette Produkt relevanten Anforderungen
161 -zu finden, weil sich von Sprint zu Sprint immer wieder neue Anforderungen ergeben
162 -oder alte verworfen werden. Es ist auch möglich, dass sich die Prioritäten ändern. Der
163 -Product Owner //(hier: das gesamte Team)// verwaltet das Backlog, allerdings muss es für
164 -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.
165 165  
166 166  === **Der Nutzen eines gepflegten/priorisierten Product Backlogs** ===
167 167  
... ... @@ -183,11 +183,7 @@
183 183  
184 184  == Sprint Planning ==
185 185  
186 -Nachdem das Product Backlog initial gefüllt und das Sprint-Ziel festgelegt wurde, kann
187 -das Planning beginnen. Das Sprint Planning ist wichtig, weil der Product Owner und
188 -das Entwicklungsteam //(hier: das gesamte Team)// sich so einig über die zu bearbeitenden
189 -User Stories werden können. In diesem Meeting wird gemeinsam mit dem Team, dem
190 -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.
191 191  
192 192  === **Ablauf eines Plannings (Checkliste)** ===
193 193  
... ... @@ -210,15 +210,7 @@
210 210  
211 211  == Schätzen von Aufwänden ==
212 212  
213 -Es sollte aus mehreren Gründen geschätzt werden. Zum einen bekommen alle Teammitglieder
214 -einen Einblick in den Inhalt aller User Stories, bevor angefangen wird, sie
215 -umzusetzen. Dies schärft das Verständnis für das Produkt. Zum anderen findet das
216 -Schätzen im besten Fall mit dem gesamten Team statt, wodurch dieses Meeting eine
217 -teamgeistfördernde Aktivität ist. Ein weiterer Vorteil ist, dass jede Person im Team weiß,
218 -worum es in der Story geht, sodass jede Person jede Aufgabe bearbeiten kann. Außerdem
219 -können so in Diskussionen Probleme oder zusätzliche Informationen identifiziert werden,
220 -wenn eine User Story beispielsweise in kleinere sinnvolle Einheiten aufgeteilt werden
221 -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".
222 222  
223 223  === **Ablauf der Aufwandsschätzung (Checkliste)** ===
224 224  
... ... @@ -244,42 +244,25 @@
244 244  * Nur wenige Zahlen auswählen (bspw. 1,2,3,5,8)
245 245  * 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
246 246  
247 -[[~[~[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]]
248 248  
249 249  === **Definition eines Velocity Charts** ===
250 250  
251 -Hat das Team schon mindestens einen Sprint hinter sich, kann der nächste Sprint auf
252 -Basis der Velocity aufgebaut werden. Die Velocity steht für die Geschwindigkeit des
253 -Teams. Das bedeutet, dass ermittelt wird, wie viele Story Points das Entwicklungsteam
254 -in dem vorherigen Sprint geschafft hat. Aufgrund dieser Information kann der darauf
255 -folgende Sprint genauer geplant werden, indem sich das Team nur auf die Anzahl der
256 -vorher erledigten Story Points committet. Die Abbildung zeigt ein solches Velocity Chart.
257 -Die x-Achse zeigt die bisherige Anzahl an Sprints und die y-Achse die Story Points, die
258 -in einem Sprint erledigt wurden. Es ist zu sehen, dass beispielsweise im zweiten Sprint
259 -15 Story Points geschafft wurden, jedoch im dritten Sprint nur fünf. Ab dem dritten
260 -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.
261 261  
262 -[[~[~[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]]
263 263  
264 264  === **Definition eines Burndown Charts** ===
265 265  
266 -Eine Möglichkeit zur Überprüfung des Fortschritts während eines Sprints ist die Erstellung
267 -eines Burndown Charts. Es zeigt die bereits erledigten Story Points auf Basis
268 -der verbleibenden Zeit an. Somit kann schnell gesehen werden, ob Verzögerungen oder
269 -Probleme auftreten und falls dies der Fall ist, kann ein Meeting einberufen werden,
270 -damit über die Probleme gesprochen wird. Die Abbildung zeigt ein
271 -Burndown Chart. Auf der x-Achse sind die Arbeitstage zu sehen und auf der y-Achse
272 -die noch zu erledigenden Story Points für den Sprint. Es ist zu sehen, dass das Team
273 -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.
274 274  
275 -[[~[~[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]]
276 276  
277 277  == Daily Scrum ==
278 278  
279 -Täglich //(hier: wöchentlich)// treffen sich das Entwicklungsteam und der Scrum Master
280 -zu einem Meeting. Es ist ein sehr kurzes Treffen, welches immer zur gleichen Zeit am
281 -gleichen Ort stehend stattfindet. Zumeist stehend, damit es bewusst kurz gehalten wird.
282 -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 +
283 283  drei Fragen:
284 284  
285 285  1. Was habe ich gestern gemacht?
... ... @@ -286,27 +286,13 @@
286 286  1. Was werde ich heute tun?
287 287  1. Gibt es Hindernisse, die mir im Weg stehen?
288 288  
289 -Durch das Daily Scrum werden Probleme sichtbar, die für den Scrum Master von großer
290 -Bedeutung sind, da er hierdurch eventuelle Impediments wahrnehmen und anschließend
291 -beseitigen kann. Außerdem ist dieses Treffen für das Team wichtig, um sich gegenseitig
292 -zu informieren und nach eventuell benötigter Hilfe zu suchen. Damit dieses Treffen
293 -möglichst effektiv ist, sollten sich die Teammitglieder darauf vorbereiten und vorher
294 -überlegen, was gestern bearbeitet wurde und was heute erledigt wird. Der Scrum
295 -Master sorgt in diesem Meeting dafür, dass die anderen Teammitglieder nicht den Fokus
296 -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.
297 297  
298 298  == Definition of Done/Definition of Ready ==
299 299  
300 300  === **Definition of Done** ===
301 301  
302 -Während eines Sprints beginnen die Entwickler erst eine neue Story, wenn die vorherige
303 -abgeschlossen ist. Damit alle Teammitglieder und der Product Owner //(hier: das gesamte//
304 -//Team)// das gleiche Verständnis für "fertig" haben, gibt es die Definition of Done. Diese
305 -umfasst eine Sammlung bestimmter Kriterien, die erfüllt sein müssen, damit eine
306 -Story als "fertig" gilt. Sie ist eine Forderung seitens des Product Owners an das
307 -Entwicklungsteam //(hier: seitens des Teams)//, welche, ebenso wie die Definition of Ready,
308 -verhandelt wird. Die Kriterien der Definition of Done sammelt das Team gemeinsam
309 -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.
310 310  
311 311  ==== **Nutzen einer Definition of Done** ====
312 312  
... ... @@ -317,15 +317,7 @@
317 317  
318 318  === **Definition of Ready** ===
319 319  
320 -Eine Definition of Ready ist eine Sammlung von Forderungen von dem Entwicklungsteam
321 -an den Product Owner //(hier: innerhalb des Teams)//, wie eine User Story beschrieben
322 -sein muss, damit das Entwicklungsteam ungestört und ohne Hindernisse arbeiten kann.
323 -Über diese Forderungen verhandelt das Team mit dem Product Owner //(hier: das Team//
324 -//handelt die Punkte untereinander aus)// und das Ergebnis ist die Definition of Ready.
325 -Beispielsweise kann das Team eine Form vorgeben, wie der Titel der Story geschrieben
326 -sein soll oder dass Akzeptanzkriterien enthalten sein müssen und in welcher Form.
327 -Das Team muss überprüfen, ob die Kriterien in den User Stories eingehalten wurden.
328 -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.
329 329  
330 330  === **Unterschiede zwischen Definition of Done und Definition of Ready** ===
331 331  
... ... @@ -334,15 +334,7 @@
334 334  
335 335  == Sprint Review ==
336 336  
337 -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
338 -die Sprint-Ergebnisse allen Interessierten präsentiert. Dazu gehören beispielsweise der
339 -Auftraggeber oder andere Stakeholder //(hier: mit dem gesamten Team und ggf. dem//
340 -//Tutor)//. Der Scrum Master bereitet dieses Meeting vor, indem er die Interessenten über
341 -dieses Treffen informiert, des Weiteren moderiert er die Sitzung. Die Vorstellung der
342 -Ergebnisse wird von den Teammitgliedern //(hier: inkl. dem Scrum Master, da auch//
343 -//der Scrum Master im Softwareprojekt programmiert)// vorbereitet. Nachdem der Scrum
344 -Master das Meeting eröffnet hat, erklärt er kurz das Sprint-Ziel und die User Stories,
345 -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.
346 346  
347 347  === **Mehrwert eines Reviews** ===
348 348  
... ... @@ -353,17 +353,107 @@
353 353  
354 354  == Sprint Retrospektive ==
355 355  
356 -Während einer Retrospektive kann das Entwicklungsteam die Zusammenarbeit reflektieren,
357 -Missmut äußern und Vorschläge für Verbesserungen sammeln. Das Ziel einer
358 -Retrospektive ist der kontinuierliche Verbesserungsprozess innerhalb des Teams. Ein
359 -gut funktionierendes Team kann qualitativ hochwertige Produkte liefern. Eine Retrospektive
360 -muss von einem Scrum Master gut vorbereitet werden. Der Scrum Master
361 -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
362 362  
363 363  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]]
364 364  
365 -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]]
366 366  
367 -[[~[~[image:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/26a515caf8f128ae250a0240aea01531/Unbenannt2.JPG~|~|alt="Unbenannt2.JPG"~]~]>>path:/SPB/softwareprojekt-wiki_all/-/wikis/uploads/26a515caf8f128ae250a0240aea01531/Unbenannt2.JPG]]
368 368  
369 -
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]]
321 +
322 +=== Unzureichend beschriebene User Story mit dem INVEST-Prinzip ===
323 +
324 +[[image:Unbenannt1.JPG]]
325 +
326 += Scrum-Workshop =
327 +
328 +Im Winter 2020/21 wurde zum ersten Mal mit den Scrum-Mastern ein Scrum Workshop durchgeführt. Die dort verwendeten Materialen sind unter dem folgenden Link zu finden:
329 +
330 +[[https:~~/~~/cloud.uni-oldenburg.de/s/XKi2PiW4H5yazzW>>url:https://cloud.uni-oldenburg.de/s/XKi2PiW4H5yazzW]]
331 +
332 +Die Quelldateien sind unter
333 +
334 +[[https:~~/~~/git.swl.informatik.uni-oldenburg.de/projects/SPB/repos/scrumworkshop/browse>>url:https://git.swl.informatik.uni-oldenburg.de/projects/SPB/repos/scrumworkshop/browse]]
335 +
336 +zu finden.
337 +
338 +Ich würde mich über einen kurzen Hinweis darüber, dass die Materialien woanders verwendet worden sind, freuen. Änderungsvorschläge gerne per PR im Git-Projekt (Zugangsdaten können ggf. bei mir angefordert werden).
attach_file Scrum-Prozess.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +59.4 KB
Content info
attach_file Unbenannt.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +178.6 KB
Content info
attach_file Unbenannt1.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +163.8 KB
Content info
attach_file Unbenannt2.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +60.7 KB
Content info
attach_file burnd.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +21.3 KB
Content info
attach_file tshirtfibo.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +20.8 KB
Content info
attach_file velo.JPG
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.PascalMeyer
Size
... ... @@ -1,0 +1,1 @@
1 +25.3 KB
Content info