Changes for page Anforderungen Gruppen

Last modified by mgrawunder on 2025/09/22 10:02

edited by Pascal Meyer
on 2025/07/30 18:12
Change comment: There is no comment for this version
edited by mgrawunder
on 2025/09/11 14:47
Change comment: There is no comment for this version

Summary

Details

insert_drive_file Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Anforderungen Gruppenll
1 +Anforderungen Gruppen
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.PascalMeyer
1 +XWiki.mgrawunder
Content
... ... @@ -1,3 +1,5 @@
1 +[[image:Main.Organisatorisches.WebHome@softwareprojekt_logo_transparent.png||alt="SoftwareprojektLogo.png" data-xwiki-image-style-alignment="end" height="136" width="309"]]
2 +
1 1  {{toc/}}
2 2  
3 3  = Anforderungen Gruppensitzungen =
... ... @@ -18,7 +18,7 @@
18 18  
19 19  == Vorschlag für Ablauf ==
20 20  
21 -Es ist nicht immer leicht, zu Beginn die Organisation zu handhaben. Aus diesem Grund im Folgenden ein paar Hilfsdiagramme, die ein Student erstellt hat und freundlicherweise zur Verfügung gestellt hat. Wichtig sind dazu auch noch einmal die [[Scrum>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/30515755/Scrum]]-Aspekte, die auch in einem [[Scrum Workshop>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/319456049/Scrum+Workshop]] aufbereitet wurde. Wenn es die Mittel zulassen und es eine geeignete Person gibt, wird der [[Scrum Workshop>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/319456049/Scrum+Workshop]] angeboten.
23 +Es ist nicht immer leicht, zu Beginn die Organisation zu handhaben. Aus diesem Grund im Folgenden ein paar Hilfsdiagramme, die ein Student erstellt hat und freundlicherweise zur Verfügung gestellt hat. Wichtig sind dazu auch noch einmal die [[Scrum>>doc:Main.Scrum.WebHome]]-Aspekte, die auch in einem [[Scrum-Workshop>>doc:Main.Scrum.WebHome||anchor="HScrumWorkshop"]] aufbereitet wurde. Wenn es die Mittel zulassen und es eine geeignete Person gibt, wird der [[Scrum-Workshop>>doc:Main.Scrum.WebHome||anchor="HScrumWorkshop"]] angeboten.
22 22  
23 23  [[image:Arbeitsweise_Weiß.png]]
24 24  
... ... @@ -35,8 +35,8 @@
35 35  *** beachten Gruppenstandards
36 36  *** sind bereit, ihre Arbeit auf Fehler untersuchen zu lassen
37 37  **** Grundsätzliche Kritik bitte zunächst unmittelbar an eine Person, dann Gruppe, dann Tutor, dann Dozent
38 -**** Es gibt in jeder Gruppe einen [[Konfliktbeauftragten>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/393423/Einzelleistungen+und%C2%A0Einzelaufgaben]]
39 -*** [[Diskriminierung wird in keinster Form geduldet!>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/569606145/Keine+Tolerierung+von+Diskriminierung+jeglicher+Art]]
40 +**** Es gibt in jeder Gruppe einen Konfliktbeauftragten (siehe [[Anforderungen Einzelleistungen>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HAnforderungen:EinzelleistungenundEinzelaufgaben"]]) geben
41 +*** Diskriminierung wird in keinster Form geduldet! (siehe [[Spielregeln>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HAnforderungen:SpielregelninnerhalbderGruppe"]])
40 40  *** Konsequenzen bei Nichterfüllung von übertragenen Aufgaben festlegen?
41 41  ** Jeder übernimmt Teile bei
42 42  *** Dokumentation und
... ... @@ -95,80 +95,89 @@
95 95  
96 96  Die Vorträge für die Einzelaufgaben des ersten Blocks müssen auf jeden Fall im ersten Semester, am besten innerhalb der ersten 7 Wochen durchgeführt worden sein!
97 97  
98 -Die Einzelaufgaben sollten **erst beim zweiten Treffen** vergeben werden. Vorher sollte sich jeder darüber informieren, was die Einzelaufgabe beinhaltet.
100 +Die Einzelaufgaben **außer dem Scrum-Master** sollten **erst beim zweiten Treffen** vergeben werden. Vorher sollte sich jeder darüber informieren, was die Einzelaufgabe beinhaltet.
99 99  
100 100  == Einzelaufgaben/Rollen (müssen vergeben sein) ==
101 101  
102 -* **Scrum-Master:**
103 -** Sorgt dafür, dass der Scrum-Prozess am Laufen bleibt
104 -** Kurze Zusammenfassung zu [[Scrum>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/30515755/Scrum]], ausführlicher in den Folien der VL.
105 -** Es sollte auf jeden Fall einen Stellvertreter geben, der ggf. die Rolle übernehmen kann (z.B. bei Krankheit oder Beendigung des SWPs).
106 -** Diese Rolle ist mit die wichtigste Rolle im SWP und verlangt durchgehend sehr viel Kapazität. Ein Scrum-Master ist aus diesem Grund typischerweise weniger (aber trotzdem noch) an der Implementierung beteiligt.
107 -** Der Scrum-Master kann zu Beginn des Softwareprojekts an einem Workshop teilnehmen (Einladung erfolgt zu Beginn) - die Teilnahme ist empfohlen.
108 -** Der Scrum-Master kann während des gesamten Projekts hinweg an einem monatlichen **Scrum-Master-Treffen** teilnehmen (nähere Informationen werden im Workshop mitgeteilt) - die Teilnahme ist empfohlen.
109 -** Aufwand: Sehr hoch
110 -* **Jira, Projektplanung und Productowner:**
111 -** Scrum hat das Problem, dass man beliebig "herumiterieren" kann. Diese Rolle soll dafür sorgen, dass das "Große und Ganze" nicht aus den Augen verloren geht. Die grundlegend definierten Meilensteine sollten dabei um weitere Meilensteine ergänzt werden. Diese Meilensteine sollen dabei helfen, Sprintziele zu definieren.
112 -** Projektplan/Meilensteinplan erstellen, aktualisieren und überwachen. Dabei ist es nicht notwendig, sowas wie ein Gant-Chart über das komplette Semester zu erstellen.
113 -** [[Projekttagebuch>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/393398/Projekttagebuch]] führen
114 -** Stundenzettelpflege überwachen
115 -** Ggf. kann das Jira-Plugin: Portfolie verwendet werden.
116 -** Weiterhin soll diese Person als Ansprechpartner für Jira dienen, d.h. sie sollte sich besonders informieren und ggf. bei Fragen und Problemen beratend zur Seite stehen.
117 -** Product Owner
118 -** NEU: Diese Rolle sollte vorrangig mit dem Tutor die Scrum-Rolle des Productowners übernehmen, d.h. die Person kontrolliert, ob immer genug Tickets im Backlog vorliegen und macht ggf. eine Priorisierung der Tickets.
119 -** NEU: Die Rolle sorgt dafür, dass in allen Tickets im Sprint Dod (Definition of Done) definiert sind
120 -** NEU: Die Rolle sorgt dafür, dass kleinere Teilgruppen (**Ticket-Task-Force**) dafür sorgen, dass neue Tickets formuliert und Ticketbeschreibungen verbessert werden (Backlogrefinement). Die Teilnehmer der Teilgruppen dürfen nicht über den ganzen Durchgang gleich bleiben sondern muss im Laufe der Zeit wechseln. Sollte die Gruppe sich gegen eine Ticket-Task-Force entscheiden, können die Tickets und Ticketbeschreibungen auch in der gesamten Gruppe gemeinsam erarbeitet werden.
121 -** Aufwand: Hoch
122 -* **Konfliktmanagement:**
123 -** Es kommt ab und zu vor, dass im SWP gruppeninterne Konflikte auftreten.
124 -** Diese Rolle soll sich im Vorfeld (also bevor etwas "schief" geht), damit befassen, welche Methoden und Ansätze es gibt, in Gruppen mit solchen Konflikten umzugehen.
125 -** Es macht Sinn, dass es jemanden zweiten gibt, der sich als Stellvertreter ebenfalls mit dieser Aufgabe befasst, falls die Person, die diese Rolle eigentlich inne hat, selber der Auslöser eines Konfliktes ist.
126 -** Aufwand: Hängt massiv von der Gruppe ab ... Kann sehr wenig, kann aber auch sehr komplex werden.
127 -* ** Git/Bitbucket:**
128 -** Der Inhaber kennt sich mit Git und Bitbucket aus.
129 -** Er kann in nicht Standard-Fällen helfen (z.B. wenn ein Mergen zu Konflikten führt)
130 -** Der Inhaber dieser Rolle sollte sich auch darum kümmern, dass der Git-Workflow (Ticket → Branch → PR → Mergen) eingehalten, dass Pull-Requests sinnvoll abgearbeitet werden und nicht zu lange liegen bleiben.
131 -** Im Laufe der Zeit sollte diese Rolle weniger wichtig werden, da alle den Workflow verinnerlicht haben.
132 -** Aufwand: Initial höher, zum Ende hin weniger.
133 -* **Codequalitätsbeauftragter und Patternbeauftragter:**
134 -** Überwachung von Codierungsstandards
135 -** Kennt sich mit Refactorings aus
136 -** Kennt sich mit Code-Smells aus, also, was macht guten und was macht schlechten Code aus
137 -** Kennt sich mit Tools wie: FindBugs, Checkstyle und SonarLint/Sonarqube aus.
138 -** Soll sich in die wichtigsten Pattern (wie MVP, Observer, Command-Pattern) einarbeiten
139 -** Die Gruppe bei der Anwendung der Pattern unterstützen
140 -** Den Code darauf hin untersuchen, ob an bestimmten Stellen Pattern besser gewesen wären
141 -** Aufwand: Mittel
142 -* **Reviewbeauftragter:**
143 -** Die Gruppe muss mindestens ein gruppenweites Code-Review durchführen
144 -** Der Review-Beauftragte ist dafür zuständig, dieses Review anzuleiten und rechtzeitig zu initiieren.
145 -** Zusammen mit dem Git- und dem Codequalitätsbeauftragtem für die sinnvolle Durchführung der Abarbeitung der Pull-Requests zuständig.
146 -** Aufwand: Geringer
147 -* **Testbeauftragter:**
148 -** Der Testbeauftragte ist nicht dafür da, Tests zu schreiben!
149 -** Die Person stellt ggf. Mockito und JUnit vor
150 -** Testbautragte hilft dabei, Test zu schreiben, d.h. bietet Unterstützung bei Fragen an
151 -** Die Person muss dafür sorgen, dass Tests nicht vernachlässigt werden, hat also regelmäßig einen Blick auf die aktuelle Testabdeckung und weist ggf. Personen darauf hin, dass bestimmte Codeabschnitte noch (besser) durch Tests abgedeckt werden müssen.
152 -** Die Person sorgt dafür, dass Tests, die nicht automatisiert erstellt werden (z.B. Test von Oberflächen) dokumentiert werden.
153 -** Aufwand: Mittel
154 -* **Dokumentations- und Backupbeauftragter, Confluence, LaTeX-Beauftragter:**
155 -** Sorgt dafür, dass die passenden Dokumente erstellt, mitgepflegt und gesichert werden (kein Doku Sklave!)
156 -** Erstellung/Anpassung von Vorlagen, Hilfe
157 -** Musterdokumente, Standards, Ablagestrategie, Qualitätssicherung, Bereitstellungsstrategie
158 -** Die Rolle achtet darauf, dass Dinge die fertig sind, auch bereits dann ausreichend dokumentiert werden.
159 -** Aufwand: Mittel
160 -* **Entwicklungsumgebung, Maven, Bamboo und Infrastruktur:**
161 -** Kümmert sich um die Erweiterung der vorgegebenen Maven Infrastruktur
162 -** Hilft und Unterstützt bei der Auswahl und Einrichtung der Entwicklungsumgebung
163 -** Kümmert sich um die Builds in Bamboo (Anpassen von Plänen)
164 -** Kümmert sich um die Bereitstellung des Servers in der Arbi
165 -** Aufwand: Mittel
166 -* **GUI-Beauftragter:**
167 -** Da i.d.R. noch nicht viel Erfahrung im Bereich der Entwicklung von Oberflächen besteht, soll sich diese Rolle intensiv mit JavaFX auseinandersetzen
168 -** Die Rolle soll Wissen grundsätzlich zu JavaFX aufbauen und als Ansprechpartner bei Fragen und Problemen dienen.
169 -** Ganz wichtig sind in diesem Kontext auch Do and Don'ts, d.h. man sollte sich auch über Best-Practices bei JavaFX informieren.
170 -** Aufwand: Mittel (je nach angestrebter GUI auch Hoch).
104 +Hinweis: Der Aufwand ist relativ zu sehen, d.h. Scrum-Master ist z.B. aufwändiger als Testbeauftragter
171 171  
106 +**Scrum-Master:**
107 +
108 +* Sorgt dafür, dass der Scrum-Prozess am Laufen bleibt
109 +* Kurze Zusammenfassung zu [[Scrum>>doc:Main.Scrum.WebHome||anchor="HEinkurzerDCberblick"]], ausführlicher in den Folien der VL und in [[Scrum im Detail>>doc:Main.Scrum.WebHome||anchor="HImDetail"]].
110 +* Es sollte auf jeden Fall einen Stellvertreter geben, der ggf. die Rolle übernehmen kann (z.B. bei Krankheit oder Beendigung des SWPs).
111 +* Diese Rolle ist mit die wichtigste Rolle im SWP und verlangt durchgehend sehr viel Kapazität. Ein Scrum-Master ist aus diesem Grund typischerweise weniger (aber trotzdem noch) an der Implementierung beteiligt.
112 +* Der Scrum-Master kann zu Beginn des Softwareprojekts an einem Workshop teilnehmen (Einladung erfolgt zu Beginn) - die Teilnahme ist empfohlen.
113 +* Der Scrum-Master kann während des gesamten Projekts hinweg an einem monatlichen **Scrum-Master-Treffen** teilnehmen (nähere Informationen werden im Workshop mitgeteilt) - die Teilnahme ist empfohlen.
114 +* Aufwand: Sehr hoch
115 +
116 +**GitLab, Projektplanung und Productowner:**
117 +
118 +* Scrum hat das Problem, dass man beliebig "herumiterieren" kann. Diese Rolle soll dafür sorgen, dass das "Große und Ganze" nicht aus den Augen verloren geht. Die grundlegend definierten Meilensteine sollten dabei um weitere Meilensteine ergänzt werden. Diese Meilensteine sollen dabei helfen, Sprintziele zu definieren.
119 +* Projektplan/Meilensteinplan erstellen, aktualisieren und überwachen. Dabei ist es nicht notwendig, sowas wie ein Gant-Chart über das komplette Semester zu erstellen.
120 +* [[Projekttagebuch>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HProjekttagebuch"]] führen
121 +* Stundenzettelpflege überwachen
122 +* Weiterhin soll diese Person als Ansprechpartner für GitLab dienen, d.h. sie sollte sich besonders informieren und ggf. bei Fragen und Problemen beratend zur Seite stehen.
123 +* Product Owner
124 +* NEU: Diese Rolle sollte vorrangig mit dem Tutor die Scrum-Rolle des Productowners übernehmen, d.h. die Person kontrolliert, ob immer genug Tickets im Backlog vorliegen und macht ggf. eine Priorisierung der Tickets.
125 +* NEU: Die Rolle sorgt dafür, dass in allen Tickets im Sprint Dod (Definition of Done) definiert sind
126 +* NEU: Die Rolle sorgt dafür, dass kleinere Teilgruppen (**Ticket-Task-Force**) dafür sorgen, dass neue Tickets formuliert und Ticketbeschreibungen verbessert werden (Backlogrefinement). Die Teilnehmer der Teilgruppen dürfen nicht über den ganzen Durchgang gleich bleiben sondern muss im Laufe der Zeit wechseln. Sollte die Gruppe sich gegen eine Ticket-Task-Force entscheiden, können die Tickets und Ticketbeschreibungen auch in der gesamten Gruppe gemeinsam erarbeitet werden.
127 +* Aufwand: Hoch
128 +
129 +**OpenAPI, REST und Spring**
130 +
131 +* Kennt sich mit den entsprechenden Technologien aus und dient als Ansprechpartner
132 +* Aufwand: Kann sehr variieren
133 +
134 +**~ Git/Gitlab und Reviewbeauftragter:**
135 +
136 +* Der Inhaber kennt sich mit Git und Gitlab aus.
137 +* Er kann in nicht Standard-Fällen helfen (z.B. wenn ein Mergen zu Konflikten führt)
138 +* Der Inhaber dieser Rolle sollte sich auch darum kümmern, dass der Git-Workflow (Ticket → Branch → PR → Mergen) eingehalten, dass Merge-Requests sinnvoll abgearbeitet werden und nicht zu lange liegen bleiben.
139 +* Im Laufe der Zeit sollte diese Rolle weniger wichtig werden, da alle den Workflow verinnerlicht haben.
140 +* Die Gruppe muss mindestens ein gruppenweites Code-Review durchführen
141 +* Der Review-Beauftragte ist dafür zuständig, dieses Review anzuleiten und rechtzeitig zu initiieren.
142 +* Zusammen mit dem Codequalitätsbeauftragtem für die sinnvolle Durchführung der Abarbeitung der Merge-Requests zuständig.
143 +* Aufwand: Geringer
144 +* Aufwand: Mittel.
145 +
146 +**Codequalitätsbeauftragter und Patternbeauftragter:**
147 +
148 +* Überwachung von Codierungsstandards
149 +* Kennt sich mit Refactorings aus
150 +* Kennt sich mit Code-Smells aus, also, was macht guten und was macht schlechten Code aus
151 +* Kennt sich mit Tools wie: FindBugs, Checkstyle und SonarLint/Sonarqube aus.
152 +* Soll sich in die wichtigsten Pattern (wie MVP, Observer, Command-Pattern) einarbeiten
153 +* Die Gruppe bei der Anwendung der Pattern unterstützen
154 +* Den Code darauf hin untersuchen, ob an bestimmten Stellen Pattern besser gewesen wären
155 +* Aufwand: Mittel
156 +
157 +**Testbeauftragter:**
158 +
159 +* Der Testbeauftragte ist nicht dafür da, Tests zu schreiben!
160 +* Die Person stellt ggf. Mockito und JUnit vor
161 +* Testbautragte hilft dabei, Test zu schreiben, d.h. bietet Unterstützung bei Fragen an
162 +* Die Person muss dafür sorgen, dass Tests nicht vernachlässigt werden, hat also regelmäßig einen Blick auf die aktuelle Testabdeckung und weist ggf. Personen darauf hin, dass bestimmte Codeabschnitte noch (besser) durch Tests abgedeckt werden müssen.
163 +* Die Person sorgt dafür, dass Tests, die nicht automatisiert erstellt werden (z.B. Test von Oberflächen) dokumentiert werden.
164 +* Aufwand: Mittel
165 +
166 +**Dokumentations- und Backupbeauftragter, Wiki, LaTeX-Beauftragter:**
167 +
168 +* Sorgt dafür, dass die passenden Dokumente erstellt, mitgepflegt und gesichert werden (kein Doku Sklave!)
169 +* Erstellung/Anpassung von Vorlagen, Hilfe
170 +* Musterdokumente, Standards, Ablagestrategie, Qualitätssicherung, Bereitstellungsstrategie
171 +* Die Rolle achtet darauf, dass Dinge die fertig sind, auch bereits dann ausreichend dokumentiert werden.
172 +* Aufwand: Mittel
173 +
174 +**Konfliktmanagement:**
175 +
176 +* Es kommt ab und zu vor, dass im SWP gruppeninterne Konflikte auftreten.
177 +* Diese Rolle soll sich im Vorfeld (also bevor etwas "schief" geht), damit befassen, welche Methoden und Ansätze es gibt, in Gruppen mit solchen Konflikten umzugehen.
178 +* Es macht Sinn, dass es jemanden zweiten gibt, der sich als Stellvertreter ebenfalls mit dieser Aufgabe befasst, falls die Person, die diese Rolle eigentlich inne hat, selber der Auslöser eines Konfliktes ist.
179 +* Aufwand: Hängt massiv von der Gruppe ab ... Kann sehr wenig, kann aber auch sehr komplex werden.
180 +
181 +
182 +
172 172  === Projekttagebuch ===
173 173  
174 174  Im Projekttagebuch werden kurz und knapp die Ergebnisse der Sprints festgehalten und der Ablauf der Projekte als Ganzes dokumentiert.
... ... @@ -190,14 +190,13 @@
190 190  
191 191  * Progammierkonzepte
192 192  ** z.B. Dependency Injection mit Guice
193 -* Google Guava
194 194  * DB-Zugriff:
195 195  ** Installation/Überwachung der DB
196 -** JDBC
197 197  * Spezialisten für verschiedene Teilthemen:
198 198  ** Netzwerkkommunikation
199 199  ** Regeln des aktuellen Spiels
200 200  ** Weitere Frameworks
210 +** GUI
201 201  
202 202  = Anforderungen: Wechselnde Aufgaben innerhalb der Gruppe =
203 203  
... ... @@ -206,12 +206,12 @@
206 206  * Sitzungsleitung und Moderation
207 207  ** Leitung der Gruppensitzung (Wichtig!!), Support durch Scrum-Master
208 208  ** Tagesordnung definieren (vorher)!!
209 -** Ein Moderator ist dafür zuständig, dass die Sitzungen geregelt ablaufen, d.h. insbesondere muss ein Moderator darauf achten, dass die Teilnehmer sich an die Regeln (siehe: [[Spielregeln in der Gruppe>>url:https://confluence.swl.informatik.uni-oldenburg.de/spaces/SWP/pages/393414/Spielregeln+in+der+Gruppe]]) halten, jeder Sprechzeit bekommt und eine Kommunikation möglich ist, d.h. im Zweifelsfall auch Diskussionen zu unterbrechen. 
219 +** Ein Moderator ist dafür zuständig, dass die Sitzungen geregelt ablaufen, d.h. insbesondere muss ein Moderator darauf achten, dass die Teilnehmer sich an die Regeln (siehe: [[Spielregeln>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HAnforderungen:SpielregelninnerhalbderGruppe"]]) halten, jeder Sprechzeit bekommt und eine Kommunikation möglich ist, d.h. im Zweifelsfall auch Diskussionen zu unterbrechen. 
210 210  Hier gibt es weitere Hinweise zu der Aufgabe eines Moderators: [[https:~~/~~/www.openpr.de/news/1231293/Was-sind-die-Aufgaben-eines-Moderators.html >>url:https://www.openpr.de/news/1231293/Was-sind-die-Aufgaben-eines-Moderators.html%C2%A0]]
211 211  * Protokollführung
212 212  ** Erstellung eines Protokolls der Gruppensitzung
213 213  ** Hier reicht i.d.R. ein Ergebnisprotokoll
214 -** Protokolle müssen im Confluence abgelegt sein
224 +** Protokolle müssen im Wiki abgelegt sein
215 215  * Zu Beginn jeder Gruppensitzung („Daily Scrum“):
216 216  ** findet ein kurzes „Briefing“ („Blitzlicht“) statt, in der jede/r berichtet, was sie/er in der letzten Woche für das Projekt getan hat.
217 217  * Am Ende jeder Sitzung neue Aufgabenverteilung