Zum Inhalt

Teamorganisation

Kommunikation und Organisation

Stasa Lukic

Einleitung

Für das Projekt wurden verschiedenste Programme genutzt, um eine gute Kommunikation und Organisation innerhalb der Teammitglieder zu halten. Für eine effektive und effiziente Kommunikation und Organisation wurde für jeden Bereich ein Programm verwendet, die folgend angesprochen wird.

Notion

Für Notizen, Protokolle, Timelines und Dokumentierungen benutzen wir Notion. Dieses Programm erlaubt es uns schnell und einfach verschiedenste Sachen aufzuschreiben, egal ob es sich um eine Tabelle, Aufgaben, Timeline oder anderes handelt.   Der Vorteil von Notion ist, dass man einen Workspace erschafft, den man sich wie ein großes Dokument vorstellen kann, aber mehrere Leute können gleichzeitig auf dieses Dokument zugreifen. Dies nutzen wir, um eine Timeline mit wichtigen Terminen oder ein Gantt Chart für das Projekt aufzubauen, wo wir sehen können, wie wir im Zeitplan stehen, sind wir einem Arbeitspunkt der Zeit voraus oder zu spät. Updates können wir uns aufschreiben, um uns gegenseitig den Stand der Dinge zu kommunizieren ohne auf eine Antwort warten zu müssen.

Nextcloud

Nextcloud ist die Hochschule eigene kostenlose Cloud, diese nutzen wir, um wichtige Dokumente zu sichern und für später einfach zugänglich zu machen.

Zoom, Discord und Whatsapp

Zoom, Discord und WhatsApp waren unsere Programme für eine direkte Kommunikation.   Über WhatsApp kann man schnell ein Projektmitglied etwas fragen, Termine vereinbaren oder anderes.   Zoom und Discord wurden für wöchentliche Meetings genutzt, aber auch für längere Arbeitssessions. Der Vorteil hierbei liegt, dass man von verschiedensten Orten eine direkte Kommunikation aufbauen kann und so gleichzeitig miteinander weiter arbeiten kann.

Github

Um unseren Programmcode miteinander zuteilen, nutzen wir Github. Github lässt mehrere Personen an einem Programmcode schreiben, mithilfe von sehr einfachen und schlauen Verfahren.  Gedownloadete Projekte von Github können direkt bearbeitet werden. Branches lassen mehrere Personen an einem Projekt arbeiten. Wir nutzen einen Dev Branch von Main wo wir persönliche Feature-Branche gemerged haben, sobald sie geschrieben und getestet wurden. Sobald das jedes Feature fertig ist und alles auf dem Dev Branch gemerged ist, kann man den Dev Branch auf Main mergen und hat somit einen fertigen Code.  

Commits sind Codeupdates, die man auf die Github "Cloud" hochlädt. Sie erlauben die Möglichkeit ältere Commits anzusehen und mit dem neu geschrieben Code zu vergleichen, dies hat den Vorteil, dass wenn ein Fehler im Code nicht gefunden werden kann, man auch den Stand des älteren Commits wiederzuverwenden.     Issues erleichtert die Organisation von Fehler im Code. Github besitzt ein System, das es flexibel erlaubt sogenannte Issues zu eröffnen. Diese Issues werden dann genutzt, um Arbeitspakete zu verfolgen, Probleme anzusprechen oder Feedback zu erhalten.

MkDocs

Für unsere technische Abgabe nutzen wir MkDocs in Verbindung mit Github. MkDocs ist ein benutzerfreundliches Programm, das mithilfe von Markdown gut strukturierte Dokumentationen erstellt. Die MkDocs Dokumentation kann einfach konfiguriert werden, indem man in der Konfigurationsdatei mkdocs.yml gewollte Einstellungen reinschreibt. In dieser Datei können auch Plugins hinzugefügt werden, einer dieser Plugins ist "with-pdf", die es uns erlaubt, aus der Dokumentation eine PDF zu exportieren.

Rollenaufteilung

Stasa Lukic

Unsere Teammitglieder wurden jeweils in Teams aufgeteilt, in diesen Teams haben sie die zugehörigen Aufgaben dann bearbeitet. Wir haben von unseren 7 Mitgliedern (später 6) 2 Personen ins Softwareteam eingetragen, 2 Personen ins Hardwareteam und 3 Personen ins Firmwareteam. Jedes Team hat auch einen Teamleader ausgewählt, diese Person kann in Meeting Updates geben und fürs Team sprechen. Die sorgt für eine sehr effiziente und organisierte Kommunikation zwischen den Teams.     Teamleader können diese Rolle auch nutzen, um klare Ziele zu setzen. Rollenaufteilung innerhalb der Teams macht auch dann Sinn, um Stärken einzelner Teammitglieder, in einem Themenbereich zu nutzen. So erhält man nicht nur bessere Resultate, die Person selbst kann ihre Stärken noch einmal feinschleifen.   Arbeitspackete können fair auf ein Team verteilt werden, um eine unfaire Arbeitsaufteilung zu verhindern.

Zeitplan

Stasa Lukic

Zeitpläne können über verschiedene Arten erstellt werden, es gibt die Gantt-Diagramme, Pfad-Diagramme, Meilensteinziele und weiteres.   Wir haben uns für die Gantt-Diagramme entschieden. Gantt-Diagramme erstellen Balken auf einer Timeline mit einem Start- und Enddatum. Diese Balkan können Aufgaben zugewiesen bekommen oder sub Aufgaben / Balken.   Zur Organisationen müssen die Balken klar gekennzeichnet werden und einem Plan folgen, sie müssen aufeinander aufbauen. Dies können wir in der Abbildung 4.1 sehen.

Abbildung 4.1: Timeline Beispiel Projekt

Diese Timeline kennzeichnet klare Ziele und visualisiert den Plan von Projektanfang zu Ende. Natürlich ist es schwer genau zusagen, wie lange eine Aufgabe dauern wird zu erledigen, Probleme können auch nicht vorausgesagt werden, dadurch bauen wir am Ende einen Zeitpuffer ein. Dauert eine Aufgabe länger als angegeben, können wir diese Zeit vom Puffer "klauen". Durch die Visualisierung und Struktur können Projektmitglieder ihre Zeit besser einplanen und haben Eigenverantwortung, diese Deadlines zu erreichen, dadurch haben wir einen durchgehenden Fortschritt am Projekt.