Wiki source code of Kompakt: Scrum in Gitlab
Version 7.1 by Marco Grawunder on 2026/08/25 15:21
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{info}} | ||
| 2 | **Kurzreferenz:** Diese Seite zeigt die Zuordnung zwischen Scrum-Artefakten und den dafür verwendeten GitLab-Funktionen. Die ausführlichen methodischen Erklärungen stehen unter [[Scrum>>doc:Main.Scrum.WebHome]], die detaillierte Bedienung unter [[GitLab Erklärungen>>doc:Main.GitLab.WebHome]]. | ||
| 3 | {{/info}} | ||
| 4 | |||
| 5 | = **Epics ~= größere fachliche Themen / Features** = | ||
| 6 | |||
| 7 | * ((( | ||
| 8 | Nutze **Epics** für größere Features oder Themen. | ||
| 9 | |||
| 10 | * Beispiel: //„Benutzerverwaltung“//, //„Berichtssystem“//. | ||
| 11 | ))) | ||
| 12 | * Verknüpfe **Issues** (Stories/Bugs) mit dem passenden Epic. | ||
| 13 | * Vorteil: du bekommst eine **Roadmap-Darstellung** im Epic-Bereich. | ||
| 14 | |||
| 15 | {{warning}} | ||
| 16 | Ein **Epic ist nicht das Product Backlog**. Das Product Backlog ist die priorisierte Gesamtheit der noch offenen Produktanforderungen. In GitLab werden diese Anforderungen typischerweise als Issues/User Stories gepflegt; Epics dienen lediglich dazu, mehrere zusammengehörige Issues unter einem größeren Thema zu bündeln. | ||
| 17 | {{/warning}} | ||
| 18 | |||
| 19 | ---- | ||
| 20 | |||
| 21 | == **Issues ~= User Stories / Bugs** == | ||
| 22 | |||
| 23 | * Jedes **Issue** repräsentiert eine Story, einen Bug oder Task. | ||
| 24 | * ((( | ||
| 25 | Pflichtfelder in einer Story (per Issue Template): | ||
| 26 | |||
| 27 | * **As a … I want … so that …** | ||
| 28 | * **Akzeptanzkriterien** (Checkliste) | ||
| 29 | * **Story Points (Weight)** | ||
| 30 | ))) | ||
| 31 | |||
| 32 | 👉 Story Points kannst du über das Feld **Weight** pflegen. | ||
| 33 | |||
| 34 | ---- | ||
| 35 | |||
| 36 | == **Sub-Issues ~= Tasks** == | ||
| 37 | |||
| 38 | * ((( | ||
| 39 | Für die technische Umsetzung zerlege eine Story in **Sub-Issues**. | ||
| 40 | |||
| 41 | * ((( | ||
| 42 | Beispiel: Story „Als User möchte ich mich einloggen können“ | ||
| 43 | |||
| 44 | * Sub-Issue: Backend-API implementieren | ||
| 45 | * Sub-Issue: Frontend-Formular bauen | ||
| 46 | * Sub-Issue: Tests schreiben | ||
| 47 | ))) | ||
| 48 | ))) | ||
| 49 | |||
| 50 | ---- | ||
| 51 | |||
| 52 | == **Labels** == | ||
| 53 | |||
| 54 | Definiere globale Labels für Prozess & Priorität: | ||
| 55 | |||
| 56 | * ((( | ||
| 57 | **Prozess-Labels**: | ||
| 58 | |||
| 59 | * Story, Bug, Task, Spike | ||
| 60 | ))) | ||
| 61 | * ((( | ||
| 62 | **Priorität**: | ||
| 63 | |||
| 64 | * P1, P2, P3 | ||
| 65 | ))) | ||
| 66 | * ((( | ||
| 67 | **Status (optional für Filter)**: | ||
| 68 | |||
| 69 | * Ready, Blocked, Needs Review | ||
| 70 | ))) | ||
| 71 | * ((( | ||
| 72 | **Teams/Komponenten**: | ||
| 73 | |||
| 74 | * Frontend, Backend, QA | ||
| 75 | ))) | ||
| 76 | |||
| 77 | ---- | ||
| 78 | |||
| 79 | == **Iterations ~= Sprints** == | ||
| 80 | |||
| 81 | * ((( | ||
| 82 | Lege für jeden Sprint eine **Iteration **an, z. B.: | ||
| 83 | |||
| 84 | * Sprint 2025-09-1 (01.09.–14.09.) | ||
| 85 | ))) | ||
| 86 | * Weise die Stories/Sub-Issues der Iteration zu. | ||
| 87 | * ((( | ||
| 88 | GitLab erstellt automatisch: | ||
| 89 | |||
| 90 | * **Burndown-Chart** | ||
| 91 | * Fortschrittsübersicht | ||
| 92 | ))) | ||
| 93 | |||
| 94 | ---- | ||
| 95 | |||
| 96 | == **Boards ~= Daily Workflow** == | ||
| 97 | |||
| 98 | Erstelle ein **Issue Board** mit Spalten: | ||
| 99 | |||
| 100 | 1. **Backlog** (alle Stories, die noch keinem Sprint zugewiesen sind) | ||
| 101 | 1. **To Do** (Iteration = aktueller Sprint, Status: Ready) | ||
| 102 | 1. **In Progress** | ||
| 103 | 1. **Review / Code Review** | ||
| 104 | 1. **Testing** | ||
| 105 | 1. **Done** | ||
| 106 | |||
| 107 | 👉 Filter für das Board setzen: //nur aktuelle Iteration// → so hast du dein **Sprint Board** wie in Jira. | ||
| 108 | |||
| 109 | ---- | ||
| 110 | |||
| 111 | == **Reviews & Retros** == | ||
| 112 | |||
| 113 | * ((( | ||
| 114 | Am Ende einer Iteration (= Sprint-Ende): | ||
| 115 | |||
| 116 | * **Review**: offene vs. erledigte Issues der Iteration prüfen. | ||
| 117 | * **Retrospektive**: dokumentieren. | ||
| 118 | ))) | ||
| 119 | * Nicht erledigte Issues → ins nächste Iteration verschieben. | ||
| 120 | |||
| 121 | ---- | ||
| 122 | |||
| 123 | == 📊 Visuale Übersicht (Scrum in GitLab Premium) == | ||
| 124 | |||
| 125 | * ((( | ||
| 126 | **Epic** = größeres fachliches Thema bzw. Feature | ||
| 127 | |||
| 128 | * ((( | ||
| 129 | Enthält Stories (Issues) | ||
| 130 | |||
| 131 | * Enthalten Tasks (Sub-Issues) | ||
| 132 | ))) | ||
| 133 | ))) | ||
| 134 | * **Iteration** = Sprint | ||
| 135 | * **Weight** = Story Points / Aufwand | ||
| 136 | * **Board** = Sprint Board (To Do → Done) | ||
| 137 | * **Burndown** = Sprint-Fortschritt | ||
| 138 | * | ||
| 139 | |||
| 140 | |||
| 141 | |||
| 142 | = 🛠 Schritt-für-Schritt-Anleitung für Scrum in GitLab Premium = | ||
| 143 | |||
| 144 | ---- | ||
| 145 | |||
| 146 | == 1. **Epics für größere Themen einrichten** == | ||
| 147 | |||
| 148 | 1. Gehe in deine **Gruppe** → Menü **Epics**. | ||
| 149 | 1. ((( | ||
| 150 | Lege für jedes große Feature ein Epic an, z. B.: | ||
| 151 | |||
| 152 | * Epic: Benutzerverwaltung | ||
| 153 | * Epic: Reportsystem | ||
| 154 | ))) | ||
| 155 | 1. Epics enthalten später die **User Stories (Issues)**. | ||
| 156 | 1. Vorteil: du bekommst eine **Roadmap-Ansicht**. | ||
| 157 | |||
| 158 | ---- | ||
| 159 | |||
| 160 | == 2. **Labels anlegen (globale Klassifizierung)** == | ||
| 161 | |||
| 162 | Unter Group → Labels anlegen: | ||
| 163 | |||
| 164 | === Prozess === | ||
| 165 | |||
| 166 | * Story | ||
| 167 | * Bug | ||
| 168 | * Task | ||
| 169 | * Spike | ||
| 170 | |||
| 171 | === Priorität === | ||
| 172 | |||
| 173 | * P1 (hoch) | ||
| 174 | * P2 (mittel) | ||
| 175 | * P3 (niedrig) | ||
| 176 | |||
| 177 | === Status / Workflow === | ||
| 178 | |||
| 179 | * Ready | ||
| 180 | * Blocked | ||
| 181 | * Needs Review | ||
| 182 | * QA | ||
| 183 | |||
| 184 | === Komponenten / Teams === | ||
| 185 | |||
| 186 | * Frontend | ||
| 187 | * Backend | ||
| 188 | * DevOps | ||
| 189 | |||
| 190 | 👉 Vorteil: du kannst im Board filtern, Berichte ziehen und schnell nach Typ/Team sortieren. | ||
| 191 | |||
| 192 | ---- | ||
| 193 | |||
| 194 | == 3. **Iterations als Sprints** == | ||
| 195 | |||
| 196 | 1. Gehe zu deinem Projekt → **Iterations**. | ||
| 197 | 1. ((( | ||
| 198 | Lege für jeden Sprint eine Iteration an, z. B.: | ||
| 199 | |||
| 200 | * Sprint 2025-09-1 (01.09.–14.09.) | ||
| 201 | * Sprint 2025-09-2 (15.09.–28.09.) | ||
| 202 | ))) | ||
| 203 | 1. Wähle die **Dauer** (meist 2 Wochen). | ||
| 204 | 1. ((( | ||
| 205 | GitLab erzeugt automatisch: | ||
| 206 | |||
| 207 | * **Burndown-Chart** | ||
| 208 | * Fortschrittsübersicht | ||
| 209 | ))) | ||
| 210 | |||
| 211 | ---- | ||
| 212 | |||
| 213 | == 4. **Issue-Template für User Stories** == | ||
| 214 | |||
| 215 | Lege in deinem Repo unter .gitlab/issue_templates/Story.md eine Datei an: | ||
| 216 | |||
| 217 | {{code language="none"}} | ||
| 218 | # User Story | ||
| 219 | |||
| 220 | **Als** [Rolle] | ||
| 221 | **möchte ich** [Funktion/Feature] | ||
| 222 | **um** [Nutzen/Ziel]. | ||
| 223 | |||
| 224 | --- | ||
| 225 | |||
| 226 | ## 🎯 Akzeptanzkriterien | ||
| 227 | - [ ] Kriterium 1 | ||
| 228 | - [ ] Kriterium 2 | ||
| 229 | - [ ] Kriterium 3 | ||
| 230 | |||
| 231 | --- | ||
| 232 | |||
| 233 | ## 📊 Zusatzinfos | ||
| 234 | - **Epic:** <!-- Link zum Epic --> | ||
| 235 | - **Milestone (Sprint):** <!-- Sprint auswählen --> | ||
| 236 | - **Weight (Story Points):** <!-- Zahl eintragen --> | ||
| 237 | - **Labels:** Story, P1/P2/P3, Team | ||
| 238 | |||
| 239 | {{/code}} | ||
| 240 | |||
| 241 | {{{ | ||
| 242 | }}} | ||
| 243 | |||
| 244 | 👉 Damit erzwingst du einheitliche Stories. | ||
| 245 | |||
| 246 | ---- | ||
| 247 | |||
| 248 | == 5. **Sub-Issues für Tasks** == | ||
| 249 | |||
| 250 | * Innerhalb einer Story → Button **Create sub-issue**. | ||
| 251 | * ((( | ||
| 252 | Beispiel: | ||
| 253 | |||
| 254 | * ((( | ||
| 255 | Story: //„Login als Benutzer“// | ||
| 256 | |||
| 257 | * Sub-Issue: Backend-API | ||
| 258 | * Sub-Issue: Frontend-Formular | ||
| 259 | * Sub-Issue: Tests schreiben | ||
| 260 | ))) | ||
| 261 | ))) | ||
| 262 | |||
| 263 | ---- | ||
| 264 | |||
| 265 | == 6. **Board-Setup (Daily Workflow)** == | ||
| 266 | |||
| 267 | Erstelle ein **Issue Board** für dein Projekt: | ||
| 268 | |||
| 269 | Spalten (so Jira-ähnlich wie möglich): | ||
| 270 | |||
| 271 | 1. **Backlog** → Filter: No iteration | ||
| 272 | 1. **To Do** → Filter: Iteration = Aktueller Sprint + Label Ready | ||
| 273 | 1. **In Progress** → Filter: Iteration = Aktueller Sprint + Label In Progress | ||
| 274 | 1. **Review** → Filter: Needs Review | ||
| 275 | 1. **QA** → Filter: QA | ||
| 276 | 1. **Done** → Filter: Closed | ||
| 277 | |||
| 278 | 👉 Du kannst mehrere Boards speichern: | ||
| 279 | |||
| 280 | * **Backlog-Board** (alle Stories ohne Iteration) | ||
| 281 | * **Sprint-Board** (nur aktuelle Iteration) | ||
| 282 | * **QA-Board** (nur Stories im Testing) | ||
| 283 | |||
| 284 | ---- | ||
| 285 | |||
| 286 | == 7. **Sprint-Review & Retro** == | ||
| 287 | |||
| 288 | * ((( | ||
| 289 | Am Ende der Iteration: | ||
| 290 | |||
| 291 | * Offene Stories → ins nächste Iteration verschieben. | ||
| 292 | * Fertige Stories → bleiben als Dokumentation im alter Iteration. | ||
| 293 | ))) | ||
| 294 | * | ||
| 295 | |||
| 296 | ---- | ||
| 297 | |||
| 298 | == 🚀 Dein Scrum-Flow in GitLab Premium == | ||
| 299 | |||
| 300 | * **Epics** = Features | ||
| 301 | * **Issues** = User Stories | ||
| 302 | * **Sub-Issues** = Tasks | ||
| 303 | * **Iterations** = Sprints | ||
| 304 | * **Weight** = Story Points | ||
| 305 | * **Boards** = Daily Workflow | ||
| 306 | * **Burndown** = Sprint Monitoring | ||
| 307 | * **Milestones** = Grobe Projektplanung. Wann soll was fertig sein. |