From 21.1 to 20.1
From 27.1 to 26.1
From version 26.1
edited by pmeyer
on 2025/08/28 19:50
on 2025/08/28 19:50
Change comment:
There is no comment for this version
To version 21.1
edited by Pascal Meyer
on 2025/07/30 18:26
on 2025/07/30 18:26
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. pmeyer1 +XWiki.PascalMeyer - Content
-
... ... @@ -1,5 +3,3 @@ 1 -[[image:Main.Organisatorisches.WebHome@softwareprojekt_logo_transparent.png||alt="SoftwareprojektLogo.png" data-xwiki-image-style-alignment="end" height="136" width="309"]] 2 - 3 3 {{toc/}} 4 4 5 5 = Ein kurzer Überblick = ... ... @@ -97,15 +97,14 @@ 97 97 98 98 == Scrum-Prozess == 99 99 100 -Nachdem die Produktvision definiert wurde, wird das Product Backlog (in GitLab: [[Product-Backlog>>doc:Main.GitLab.WebHome||anchor="HProduct-Backlog"]]) erstellt und vom Product Owner //(hier: gesamtes Team im Softwareprojekt)// verwaltet. Aus dem Sprint Planning resultiert das Sprint Backlog(in Gitlab: [[Sprint-Backlog>>doc:Main.GitLab.WebHome||anchor="HSprint-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.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. 101 101 102 102 == Product Backlog == 103 103 104 -Ein Product Backlog (in GitLab: [[Product-Backlog>>doc:Main.GitLab.WebHome||anchor="HProduct-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.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. 105 105 106 106 === **Der Nutzen eines gepflegten/priorisierten Product Backlogs** === 107 107 108 -In Gitlab: [[Pflege und Priorisierung>>doc:Main.GitLab.WebHome||anchor="HPflege2FPriorisierungdesProduct-Backlogs"]] 109 109 Priorisiert: 110 110 111 111 * Um die für das Projekt wertvollsten Stories am Anfang zu bearbeiten ... ... @@ -147,7 +147,7 @@ 147 147 148 148 == Schätzen von Aufwänden == 149 149 150 -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". Die Schätzung kann bspw. auf der Seite: [[https:~~/~~/www.scrumpoker-online.org/en/>>url:https://www.scrumpoker-online.org/en/]] durchgeführt werden.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". 151 151 152 152 === **Ablauf der Aufwandsschätzung (Checkliste)** === 153 153 ... ... @@ -247,35 +247,76 @@ 247 247 248 248 == Was sind User Stories? == 249 249 250 -Ein Werkzeug, das häufig im agilen Projektmanagement eingesetzt wird, sind User Stories. Eine User Story ist eine Beschreibung einer Anforderung an ein Softwareprodukt. Sie ist aus der Sicht eines Nutzers //(hier: Spielteilnehmer)// formuliert. Außerdem wird in einer User Story immer ein Mehrwert und eine Bedeutung für den Nutzer erwähnt, welchen dieser durch die Funktionalität hat. Diese Funktionalität wird in das zu erstellende Produkt implementiert und erhöht somit den Wert des Produkts. Eine User Story liefert also immer einen Mehrwert. Der Titel der User Story beschreibt knapp die Hauptaussage der gesamten Story, welche immer das Ziel des Nutzers ist. In den meisten Fällen wird eine User Story in der folgenden Form geschrieben: 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: 251 251 257 + 252 252 "Als [Rolle] möchte ich [Tätigkeit], um [Nutzen]." 253 253 254 -Im Rahmen des Softwareprojekts könnte eine User Story beispielsweise wie folgt aussehen: //"Als Nutzer dieses Systems möchte ich mich einloggen können, um ein Spiel zu starten."// Die explizite Erwähnung der [Rolle] ist wichtig, weil der Anwendungsfall von Rolle zu Rolle variieren kann. Die [Tätigkeit] ist der Vorgang, welchen die Rolle bei Nutzung des vom Team zu implementierenden Produkts ausführt. Der [Nutzen] dient zur Einordnung der Wichtigkeit und hilft, eine Priorisierung der zu implementierenden Features vorzunehmen. Außerdem hilft es dem Team zu verstehen, warum sie dieses Feature implementieren sollen. 255 255 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 + 256 256 == Mehrwert von User Stories == 257 257 258 -Da User Stories so formuliert werden sollten, dass sie jeder versteht, kann eine intensive Zusammenarbeit mit dem Auftraggeber //(hier: intensive Zusammenarbeit mit dem gesamten Team)// entstehen. Hierdurch wird die Beziehung untereinander gestärkt und sowohl Entwickler als auch Auftraggeber verstehen die Ziele der User Stories gleicherma- ßen. Ein weiterer Vorteil ist die Anpassbarkeit, weil sich die Wünsche des Auftraggebers jederzeit ändern können. Aus diesem Grund implementieren die Entwickler im schlimmsten Fall nur für eine sehr kurze Zeit etwas, was in der nächsten Iteration hinfällig ist, da sich der Wunsch des Auftraggebers jederzeit ändern kann. Außerdem werden nur die Stories detaillierter beschrieben, die in der Iteration erledigt werden sollen. So wird keine Zeit für die Planung von etwas aufgewendet, das sich im Nachhinein eventuell als obsolet herausstellt. 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. 259 259 260 260 == Der Nutzen von Akzeptanzkriterien == 261 261 262 -Da die Entwickler eventuell unterschiedliche Vorstellungen davon haben, wann eine bestimmte User Story fertig bearbeitet ist, hat sie bestimmte Akzeptanzkriterien. Diese bestimmen die Vollständigkeit der in der Story gewünschten Funktion. Sobald diese Akzeptanzkriterien erfüllt sind, ist die User Story vollständig umgesetzt und liefert nur dann den gewünschten Mehrwert für den Auftraggeber //(hier: für das Team)//. 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)//. 263 263 264 264 == INVEST-Prinzip == 265 265 266 -Es gibt bestimmte Eigenschaften, die eine gute User Story ausmachen. Mit dem INVEST-Prinzip lassen sich diese Eigenschaften beschreiben. Dabei ist das Wort INVEST ein Akronym für die folgenden Eigenschaften einer guten User Story: 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: 267 267 268 -**Independent** Diese Eigenschaft meint, dass eine gute User Story unabhängig von anderen ist. Sind Stories voneinander abhängig, können Probleme entstehen, die eine Priorisierung erschweren. 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. 269 269 270 -**Negotiable** Verhandelbare User Stories bedeuten, dass während des Entwicklungsprozesses bestimmte Akzeptanzkriterien angepasst werden können, wenn diese mit dem Auftraggeber //(hier: mit dem gesamten Team)// verhandelt wurden. 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. 271 271 272 -**Valuable** Wertvolle User Stories meinen, dass sie einen bestimmten Mehrwert für den Auftraggeber und den Nutzer darstellen. 306 +**Valuable** Wertvolle User Stories meinen, dass sie einen bestimmten Mehrwert für 307 +den Auftraggeber und den Nutzer darstellen. 273 273 274 -**Estimatable** Eine gute User Story soll schätzbar sein, das bedeutet, dass die Story von anderen abgegrenzt wird, sodass sie gut unterscheidbar ist. 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. 275 275 276 -**Small** Damit eine User Story gut schätzbar ist, muss sie klein sein. Außerdem können zu große User Stories nicht in einem Sprint bearbeitet werden. 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. 277 277 278 -**Testable** Eine testbare User Story hat gut strukturierte Akzeptanzkriterien, die getestet werden können. 315 +**Testable** Eine testbare User Story hat gut strukturierte Akzeptanzkriterien, die 316 +getestet werden können. 279 279 280 280 === Ausreichend beschriebene User Story mit dem INVEST-Prinzip === 281 281 ... ... @@ -297,4 +297,12 @@ 297 297 298 298 zu finden. 299 299 300 -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 [[Marco Grawunder>>https://uol.de/marco-grawunder]] angefordert werden). 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). 339 + 340 +Anforderungen - Gruppensitzungen: [[Anforderungen Gruppensitzungen>>doc:.Anforderungen-an-die-Gruppe.WebHome||anchor="HAnforderungenGruppensitzungen"]] 341 +Anforderungen - Gruppensitzungen: [[Anforderungen Gruppensitzungen>>doc:.AnforderungenGruppen.WebHome||anchor="HAnforderungenGruppensitzungen"]] 342 + 343 + 344 +Siehe [[AnforderungenGruppensitzungen>>doc:.Anforderungen%20an%20die%20Gruppe.WebHome||anchor="HAnforderungenGruppensitzungen"]] 345 + 346 +Siehe [[AnforderungenGruppensitzungen>>doc:.AnforderungenGruppen.WebHome||anchor="HAnforderungenGruppensitzungen"]]