Changes for page Projektarbeit
Last modified by Marco Grawunder on 2026/08/26 10:15
From version 7.1
edited by Marco Grawunder
on 2026/08/25 14:53
on 2026/08/25 14:53
Change comment:
Uploaded new attachment "Sexualisierte Diskriminierung und Gewalt.pdf", version 1.1
To version 10.1
edited by Marco Grawunder
on 2026/08/25 16:30
on 2026/08/25 16:30
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,7 +1,13 @@ 1 -= Teilaufgabe 1 - Projektmanagement organisieren = 1 +{{info}} 2 +Diese Seite beschreibt die **Organisation und Zusammenarbeit innerhalb der Projektgruppe**. Dazu gehören Projektmanagement, gemeinsame Arbeitsregeln, individuelle Verantwortungsbereiche, Projekttagebuch, wechselnde Sitzungsaufgaben und das gruppenweite Code-Review. 3 +{{/info}} 2 2 5 +{{toc/}} 6 + 7 += Projektmanagement organisieren = 8 + 3 3 * Organisieren Sie Ihr Projekt bzw. Team, 4 -** verteilen Sie in der zweiten Woche die [[Einzelaufgaben>>doc:Main.Projektarbeit.WebHome||anchor="H Anforderungen:EinzelleistungenundEinzelaufgaben"]],10 +** verteilen Sie in der zweiten Woche die [[Einzelaufgaben>>doc:Main.Projektarbeit.WebHome||anchor="HIndividuelleVerantwortungsbereicheundEinzelaufgaben"]], 5 5 ** definieren Sie eine Reihenfolge für die Übernahme der Moderation und des Protokolls (z.B. nach Alphabet) 6 6 ** die Tagesordnung ist vom Moderator mindestens einen Tag vorher zu erstellen (dafür ggf. die Gruppe nach weiteren TOPs fragen) 7 7 ** definieren Sie Standards für Dokumente (LaTeX, UTF-8, ...) ... ... @@ -17,9 +17,9 @@ 17 17 * Überlegen Sie sich für Ihre Aufgaben eine "Definition of Ready" und eine "Definition of Done", d.h. was muss für eine Aufgabe erledigt sein, bevor sie als erledigt angesehen werden kann. (siehe z.B. [[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]]) 18 18 * Erstellen Sie basierend auf den Vorgaben der Veranstaltung eine Produktvision. (vgl. z.B. [[https:~~/~~/www.wibas.com/scrum/product-vision/de)>>url:https://www.wibas.com/scrum/product-vision/de]] 19 19 20 -S crum hatdenNachteil, dass manlange "vor sichhin iterieren" kann. Definieren Sie zusätzliche **Meilensteine**zu denenbestimmteFunktionenfertigsein sollen. Einige sind vorgegeben (vgl. [[Meilensteine>>doc:Main.Softwareentwicklung.WebHome||anchor="HAnforderungen:DievordefiniertenMeilensteine"]]). Verwenden Sie zur Meilensteindefinition nicht nur die Präsentationstermine!26 +Sprints allein gewährleisten noch keine langfristige Orientierung. Definieren Sie deshalb zusätzliche **Meilensteine**, zu denen konkrete fachliche Ergebnisse erreicht sein sollen. Einige sind vorgegeben (vgl. [[Meilensteine>>doc:Main.Softwareentwicklung.WebHome||anchor="HVorgegebeneMeilensteine"]]). Verwenden Sie zur Meilensteindefinition nicht nur die Präsentationstermine! 21 21 22 -= Anforderungen: Spielregelninnerhalb derGruppe =28 += Zusammenarbeit und Verhaltensregeln = 23 23 24 24 * **Allgemeine Regeln innerhalb der Gruppe** 25 25 ** alle ... ... @@ -29,8 +29,8 @@ 29 29 *** beachten Gruppenstandards 30 30 *** sind bereit, ihre Arbeit auf Fehler untersuchen zu lassen 31 31 **** Grundsätzliche Kritik bitte zunächst unmittelbar an eine Person, dann Gruppe, dann Tutor, dann Dozent 32 -**** Es gibt in jeder Gruppe einen Konfliktbeauftragten (siehe [[Anforderungen Einzelleistungen>>doc:Main.Projektarbeit.WebHome||anchor="H Anforderungen:EinzelleistungenundEinzelaufgaben"]]) geben33 -*** Diskriminierung wird in keinster Form geduldet! (siehe [[Spielregeln>>doc:Main.Projektarbeit.WebHome||anchor="H Anforderungen:SpielregelninnerhalbderGruppe"]])38 +**** Es gibt in jeder Gruppe einen Konfliktbeauftragten (siehe [[Anforderungen Einzelleistungen>>doc:Main.Projektarbeit.WebHome||anchor="HIndividuelleVerantwortungsbereicheundEinzelaufgaben"]]) geben 39 +*** Diskriminierung wird in keinster Form geduldet! (siehe [[Spielregeln>>doc:Main.Projektarbeit.WebHome||anchor="HZusammenarbeitundVerhaltensregeln"]]) 34 34 *** Konsequenzen bei Nichterfüllung von übertragenen Aufgaben festlegen? 35 35 ** Jeder übernimmt Teile bei 36 36 *** Dokumentation und ... ... @@ -84,20 +84,21 @@ 84 84 * Erstanlaufstelle Antidiskriminierung des AStA: Donnerstags: 10:30 - 13:30 Uhr de/eng/farsi im AStA Trakt, Raum M1-157, [[beratung@asta-uol.de>>mailto:beratung@asta-uol.de||style="background-color: rgb(255, 255, 255);"]], 85 85 * conTakt: [[https:~~/~~/uol.de/contakt-beratungsstelle>>url:https://uol.de/contakt-beratungsstelle]] 86 86 87 -= Anforderungen: Einzelleistungenund Einzelaufgaben =93 += Individuelle Verantwortungsbereiche und Einzelaufgaben = 88 88 89 -Neben der eigentlichen Softwareentwicklung gibt es spezielle Aufgaben, die von den Teammitglieder als Querschnittsaufgaben übernommen werden müssen. Diese Spezialisten und Verantwortlichen arbeiten sich in das Thema ein, beraten die Mitglieder der Gruppe und sorgen dafür, dass die Anforderungen an diese Aufgabe eingehalten werden. Die Aufgaben können dabei von einzelnen Personen oder auch zu zweit übernommen werden. Die Rollen sind dabeials Serviceleistungen zu verstehen, d.h.wenn eskeinen Bedarfgibt,muss die "Rolle"auchnicht krampfhaft versuchen,Inhalt zu finden, mit denendieRollegefülltwerden kann,dann lieberauf dasProjektfokussierenoder andereRollenunterstützen. DieIdeeisti.d.R.eher:Hiergibteseine Person, die sichfürdie Aufgabeverantwortlichfühltund im Zweifelsfallweiterhelfen kannbzw.dafürsorgt, dass dieDingeerfüllt werden (wiebeim ScrummasteroderTestbeauftragten). In den Einschätzungen der Tutoren gibt es dafür auch ein Feld, welche die Felder "erfüllt", "nicht erfüllt" oder "war nicht notwendig" enthält.95 +Neben der eigentlichen Softwareentwicklung gibt es spezielle Aufgaben, die von den Teammitglieder als Querschnittsaufgaben übernommen werden müssen. Diese Spezialisten und Verantwortlichen arbeiten sich in das Thema ein, beraten die Mitglieder der Gruppe und sorgen dafür, dass die Anforderungen an diese Aufgabe eingehalten werden. Die Aufgaben können dabei von einzelnen Personen oder auch zu zweit übernommen werden. Die Rollen sind als **Querschnitts- und Serviceaufgaben** zu verstehen. Wenn in einem Zeitraum für einen Verantwortungsbereich wenig Bedarf besteht, soll nicht künstlich Arbeit erzeugt werden; die Person unterstützt dann die reguläre Projektarbeit oder andere Verantwortungsbereiche. Entscheidend ist, dass es für das jeweilige Thema eine klar benannte Person gibt, die sich zuständig fühlt, bei Fragen unterstützen kann und darauf achtet, dass die vereinbarten Anforderungen berücksichtigt werden. In den Einschätzungen der Tutoren gibt es dafür auch ein Feld, welche die Felder "erfüllt", "nicht erfüllt" oder "war nicht notwendig" enthält. 90 90 91 -Die Vorträge für dieEinzelaufgaben des ersten Blocksmüssenauf jeden Fallim ersten Semester,ambesteninnerhalb der ersten7Wochen durchgeführt wordensein!97 +Die kurzen Einführungen zu den Verantwortungsbereichen des ersten Blocks sollen im ersten Semester, möglichst innerhalb der ersten sieben Wochen, durchgeführt werden. 92 92 93 93 Die Einzelaufgaben sollten **erst beim zweiten Treffen** vergeben werden. Vorher sollte sich jeder darüber informieren, was die Einzelaufgabe beinhaltet. 94 94 95 -== Einzelaufgaben/Rollen(müssen vergeben sein)==101 +== Verantwortungsbereiche / Rollen == 96 96 97 -Hinweis: Der Aufwand ist relativ zu sehen, d.h. Scrum-Master ist z.B. aufwändiger als Testbeauftragter 103 +{{info}} 104 +Der Aufwand der Verantwortungsbereiche ist unterschiedlich und kann sich im Projektverlauf verändern. Die Einstufungen sind daher nur als Orientierung zu verstehen. 105 +{{/info}} 98 98 99 -**Scrum-Master:** 100 - 107 +{{expandable summary="Scrum-Master"}} 101 101 * Sorgt dafür, dass der Scrum-Prozess am Laufen bleibt 102 102 * 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"]]. 103 103 * Es sollte auf jeden Fall einen Stellvertreter geben, der ggf. die Rolle übernehmen kann (z.B. bei Krankheit oder Beendigung des SWPs). ... ... @@ -105,28 +105,27 @@ 105 105 * Der Scrum-Master kann zu Beginn des Softwareprojekts an einem Workshop teilnehmen (Einladung erfolgt zu Beginn) - die Teilnahme ist empfohlen. 106 106 * 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. 107 107 * Aufwand: Sehr hoch 115 +{{/expandable}} 108 108 109 -**GitLab, Projektplanung und Productowner:** 110 - 117 +{{expandable summary="GitLab, Projektplanung und Product Owner"}} 111 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, sowaswieeinGant-Chartüber das komplette Semester zu erstellen.119 +* Projektplan/Meilensteinplan erstellen, aktualisieren und überwachen. Dabei ist es nicht notwendig, ein vollständiges Gantt-Diagramm über das komplette Semester zu erstellen. 113 113 * [[Projekttagebuch>>doc:Main.Projektarbeit.WebHome||anchor="HProjekttagebuch"]] führen 114 114 * Stundenzettelpflege überwachen 115 115 * 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. 116 -* Product Owner 117 -* 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. 118 -* NEU: Die Rolle sorgt dafür, dass in allen Tickets im Sprint Dod (Definition of Done) definiert sind 119 -* 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. 123 +* Die Person übernimmt gemeinsam mit dem Tutor wesentliche Aufgaben des Product Owners: Sie achtet darauf, dass ausreichend vorbereitete Einträge im Product Backlog vorhanden sind und unterstützt deren Priorisierung. 124 +* Sie achtet darauf, dass für die Arbeit im Sprint die vereinbarte Definition of Done berücksichtigt wird. 125 +* Sie organisiert das Backlog Refinement. Dazu können kleinere, wechselnd zusammengesetzte Teilgruppen (**Ticket-Task-Force**) neue Tickets formulieren und Beschreibungen verbessern. 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. 120 120 * Aufwand: Hoch 127 +{{/expandable}} 121 121 122 -**OpenAPI, REST und Spring** 123 - 129 +{{expandable summary="Client-Server-Kommunikation: OpenAPI, REST, WebSockets und Spring"}} 124 124 * Kennt sich mit den entsprechenden Technologien aus und dient als Ansprechpartner 125 125 * Aufwand: Kann sehr variieren 126 -* Hinweis: Es kann Sinn machen (bei mehr als 10 Teilnehmern), diese Rolle in "OpenAPI, REST, WebSockets" und "Spring" aufzuteilen. 132 +* Bei größeren Gruppen kann der Verantwortungsbereich sinnvoll in **API/Kommunikation (OpenAPI, REST, WebSockets)** und **Spring/serverseitige Architektur** aufgeteilt werden. 133 +{{/expandable}} 127 127 128 -**~ Git/Gitlab und Reviewbeauftragter:** 129 - 135 +{{expandable summary="Git/GitLab und Reviewbeauftragter"}} 130 130 * Der Inhaber kennt sich mit Git und Gitlab aus. 131 131 * Er kann in nicht Standard-Fällen helfen (z.B. wenn ein Mergen zu Konflikten führt) 132 132 * 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. ... ... @@ -134,43 +134,43 @@ 134 134 * Die Gruppe muss mindestens ein gruppenweites Code-Review durchführen 135 135 * Der Review-Beauftragte ist dafür zuständig, dieses Review anzuleiten und rechtzeitig zu initiieren. 136 136 * Zusammen mit dem Codequalitätsbeauftragtem für die sinnvolle Durchführung der Abarbeitung der Merge-Requests zuständig. 137 -* Aufwand: Geringer138 - * Aufwand: Mittel.143 +* Aufwand: Mittel 144 +{{/expandable}} 139 139 140 -**Codequalitätsbeauftragter und Patternbeauftragter:** 141 - 146 +{{expandable summary="Codequalitätsbeauftragter und Patternbeauftragter"}} 142 142 * Überwachung von Codierungsstandards 143 143 * Kennt sich mit Refactorings aus 144 144 * Kennt sich mit Code-Smells aus, also, was macht guten und was macht schlechten Code aus 145 -* Kennt sich mit Toolswie:FindBugs, Checkstyle und SonarLint/Sonarqube aus.150 +* Kennt sich mit Werkzeugen wie SpotBugs, Checkstyle und SonarLint/SonarQube aus. 146 146 * Soll sich in die wichtigsten Pattern (wie MVP, Observer, Command-Pattern) einarbeiten 147 147 * Die Gruppe bei der Anwendung der Pattern unterstützen 148 148 * Den Code darauf hin untersuchen, ob an bestimmten Stellen Pattern besser gewesen wären 149 149 * Aufwand: Mittel 155 +{{/expandable}} 150 150 151 -**Testbeauftragter:** 152 - 157 +{{expandable summary="Testbeauftragter"}} 153 153 * Der Testbeauftragte ist nicht dafür da, Tests zu schreiben! 154 154 * Die Person stellt ggf. Mockito und JUnit vor 155 -* Testbautragte hilft dabei, Testzuschreiben,d.h.bietetUnterstützungbei Fragen an156 -* Die Person mussdafürsorgen, dass Tests nicht vernachlässigt werden,hatalsoregelmäßigeinenBlickaufdieaktuelleTestabdeckung undweistggf. Personen daraufhin,dassbestimmteCodeabschnittenoch (besser) durchTestsabgedeckt werden müssen.160 +* Der Testbeauftragte unterstützt die Gruppe beim Schreiben von Tests und steht bei Fragen beratend zur Verfügung. 161 +* Die Person achtet darauf, dass Tests nicht vernachlässigt werden, betrachtet regelmäßig die vorhandene Testabdeckung und macht auf unzureichend getestete Bereiche aufmerksam. 157 157 * Die Person sorgt dafür, dass Tests, die nicht automatisiert erstellt werden (z.B. Test von Oberflächen) dokumentiert werden. 158 158 * Aufwand: Mittel 164 +{{/expandable}} 159 159 160 -**Dokumentations- und Backupbeauftragter, Wiki, LaTeX-Beauftragter:** 161 - 162 -* Sorgt dafür, dass die passenden Dokumente erstellt, mitgepflegt und gesichert werden (kein Doku Sklave!) 166 +{{expandable summary="Dokumentations- und Backupbeauftragter, Wiki, LaTeX-Beauftragter"}} 167 +* Achtet darauf, dass die erforderlichen Dokumente erstellt, kontinuierlich gepflegt und gesichert werden. Die Rolle ist **nicht** dafür zuständig, die gesamte Dokumentation allein zu schreiben. 163 163 * Erstellung/Anpassung von Vorlagen, Hilfe 164 164 * Musterdokumente, Standards, Ablagestrategie, Qualitätssicherung, Bereitstellungsstrategie 165 165 * Die Rolle achtet darauf, dass Dinge die fertig sind, auch bereits dann ausreichend dokumentiert werden. 166 166 * Aufwand: Mittel 172 +{{/expandable}} 167 167 168 -**Konfliktmanagement:** 169 - 174 +{{expandable summary="Konfliktmanagement"}} 170 170 * Es kommt ab und zu vor, dass im SWP gruppeninterne Konflikte auftreten. 171 171 * 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. 172 172 * 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. 173 173 * Aufwand: Hängt massiv von der Gruppe ab ... Kann sehr wenig, kann aber auch sehr komplex werden. 179 +{{/expandable}} 174 174 175 175 Falls alle Rollen vergeben sind, können noch folgende ergänzend dazu kommen. 176 176 ... ... @@ -177,8 +177,8 @@ 177 177 * Spielregeln 178 178 * Frontend (z.B. JavaFX oder Web-Frontends) 179 179 * Spezielle Rolle für REST, WebSockets und OpenAPI und dafür in der obigen Rolle (OpenAPI, REST und Spring) nur noch Spring 180 -* Progammierkonzepte 181 -** z.B. Dependency Injection mit Guice186 +* Programmierkonzepte 187 +** z. B. Dependency Injection mit Spring 182 182 * DB-Zugriff: 183 183 ** Installation/Überwachung der DB 184 184 * Spezialisten für verschiedene Teilthemen: ... ... @@ -204,7 +204,7 @@ 204 204 * Wann wurden andere wichtige Zwischenziele erreicht 205 205 * Welche besonderen Dinge hat es gegeben, die wesentlichen Einfluss auf das Projekt oder die Gruppe hatten 206 206 207 -== Anforderungen:Wechselnde Aufgaben innerhalb der Gruppe ==213 +== Wechselnde Aufgaben innerhalb der Gruppe == 208 208 209 209 Diese Aufgaben wechseln wöchentlich: 210 210 ... ... @@ -211,7 +211,7 @@ 211 211 * Sitzungsleitung und Moderation 212 212 ** Leitung der Gruppensitzung (Wichtig!!), Support durch Scrum-Master 213 213 ** Tagesordnung definieren (vorher)!! 214 -** 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.Projektarbeit.WebHome||anchor="H Anforderungen:SpielregelninnerhalbderGruppe"]]) halten, jeder Sprechzeit bekommt und eine Kommunikation möglich ist, d.h. im Zweifelsfall auch Diskussionen zu unterbrechen.220 +** 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.Projektarbeit.WebHome||anchor="HZusammenarbeitundVerhaltensregeln"]]) halten, jeder Sprechzeit bekommt und eine Kommunikation möglich ist, d.h. im Zweifelsfall auch Diskussionen zu unterbrechen. 215 215 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]] 216 216 * Protokollführung 217 217 ** Erstellung eines Protokolls der Gruppensitzung ... ... @@ -224,10 +224,15 @@ 224 224 ** Leitung/Protokoll (Liste!) 225 225 * Tutor ist nur Berater, leitet keine Sitzungen, kann aber um Rat gefragt werden (und greift (zu Beginn mehr und Ende weniger) ein, wenn es zu sehr „aus dem Ruder läuft“, erlaubt aber auch Fehler …) 226 226 227 -= Gruppenweites Code Review (Team-Review) =233 += Gruppenweites Code-Review (Team-Review) = 228 228 235 +{{info}} 236 +**Kurzfassung:** Mindestens einmal im Projekt wird ein nicht trivialer Codebereich gemeinsam reviewt. Der Kontext wird vorbereitet, die gesamte Gruppe beteiligt sich am Review, Ergebnisse werden dokumentiert und konkrete Verbesserungsmaßnahmen anschließend nachverfolgt. 237 +{{/info}} 238 + 229 229 Neben den üblichen Pull-Request-Reviews soll im Projekt mindestens ein **gruppenweites Code Reviews** durchgeführt werden. Dieses dienen nicht primär der Fehlersuche, sondern dem **gemeinsamen Verständnis, der Diskussion von Lösungsansätzen und dem Lernen im Team**. 230 230 241 +{{expandable summary="Detaillierte Anleitung zum Gruppenreview"}} 231 231 == Ziel des Gruppenreviews == 232 232 233 233 Das gruppenweite Review soll dabei helfen: ... ... @@ -383,4 +383,4 @@ 383 383 Man kann das auch mehrmals machen. Im SWP wird es aber nur einmal verlangt. 384 384 385 385 ---- 386 - 397 +{{/expandable}}