Bachelorpraktikum: netlab

Gruppenprojekt zur agilen Entwicklung einer Software, die Netzwerktopologien generieren kann

Erik Borowski

Erik Borowski

Go

Im Rahmen meines Informatikstudiums an der TU Darmstadt stand auch ein sogenanntes »Bachelorpraktikum« an. Hierbei sollte in einer Gruppe von fünf Personen eine Software so umgesetzt werden, wie sich eine andere Fachgruppe an der Uni das wünscht. In unserem Projekt ging es darum, das Erstellen von Netzwerksimulationen zu vereinfachen. Die auf den Namen »netlab« getaufte Software nimmt hierbei eine einzelne TOML-Datei entgegen und generiert daraus korrekte Konfigurationsdateien für die Simulationssoftwares CORE, coreemu-lab und The ONE. Die Nutzerin beziehungsweise der Nutzer soll mit möglichst wenig Aufwand an eine lauffähige und portable Experimentkonfiguration gelangen. Irrelevante Daten wie beispielsweise IP- und MAC-Adressen einzelner Netzwerkknoten werden daher automatisch generiert oder zumindest mit Standardwerten belegt, die bei Bedarf dann überschrieben werden können. Auch Bewegungsmuster der Netzwerkknoten kann die Software automatisch generieren, in dem BonnMotion angesprochen und mit den korrekten Angaben aufgerufen wird.

Aufgabe war die Umsetzung der Software von der ersten Anforderungsanalyse über die agile Umsetzung mit regelmäßigen Sprint-Reviews hin zur Übergabe der fertigen Software samt Dokumentation an den Auftraggeber. Neben der eigentlichen Software musste auch ein Prozess der Dokumentation und Qualitätssicherung eingerichtet werden. Wir haben daher Code Reviews durchgeführt, eine automatische Testing-Pipeline eingerichtet und eine Nutzungsstudie mit 5 Teilnehmenden durchgeführt. Ebenso musste das Projekt und die Qualitätssicherung pitch-artig vorgestellt werden.

Mein Part in dieser Gruppenarbeit war sehr vielfältig. Ich habe das Projektmanagement und die Rolle der SCRUM-Leitung übernommen. Auch der Architekturentwurf sowie ein Großteil des entwickelten Codes (laut Git rund 87 %, also etwa 11.000 Zeilen) sind von mir. Darüber hinaus habe ich natürlich auch an der Projektdokumentation mitgearbeitet, die Testing-Pipeline eingerichtet und häufig die Kommunikation mit unserem Auftraggeber übernommen. Insgesamt sind von meiner Seite etwa 260 Stunden in das Projekt geflossen und ich konnte es mit der Note 1,0 abschließen.