Beim Praktikum Software Engineering ist es notwendig, dass die Teilnehmer häufig anwesend sind, um das Scrum-Vorgehen und das Arbeiten im Team möglich und überprüfbar zu machen!

Im Praktikum Software Engineering lernen die Teilnehmer Software im Team zu entwickeln. Es werden die in der Vorlesung Software Engineering kennen gelernten Methoden und Verfahren vertieft, indem die Teilnehmer komplexe Projektaufgaben in Gruppen bearbeiten. Sämtliche Tätigkeiten eines Softwareprojekts von der Projektidee bis zur fertigen Software werden ausgeführt und dokumentiert.

Die folgenden Kompetenzen werden vermittelt:
o Das Scrum-Rahmenwerk und ergänzende agile Vorgehensweisen bei der Softwareentwicklung auf eine komplexe Projektaufgabe praktisch anwenden und bewerten können.
o Erfahrungen bei der intensiven Zusammenarbeit in einem Software-Entwicklungsteam sammeln.
o Analyse, Entwurf, Implementierung und Test einer Software mit geeigneten Methoden des Software-Engineering eigenständig ausführen können.
o Moderne Techniken und Werkzeuge des Software Engineering zielgerichtet und reflektiert anwenden können.
o Eine komplexe Software nach einer selbst zu entwickelnden Projektidee als Team konzipieren und umsetzen können.

Im Vordergrund stehen also nicht die Programmierung und die zu erstellende Software, sondern Methoden des Software Engineering wie agile Planung, iteratives Vorgehen, Team-Organisation, Soft-Skills, Anforderungsmodellierung, Softwarearchitektur und Testverfahren sowie die Nutzung von Werkzeugen bei der Softwareentwicklung beispielsweise für Anforderungsermittlung, Modellierung, Entwicklung, Code-Generation, Code-Analyse, Test, Planung, Teamarbeit, Versionsverwaltung, Buildmanagement und Continous Integration.

Nach der Veranstaltung sollen die Teilnehmer in der Lage sein, kleine Softwareprojekte selbstständig zu planen und zu bearbeiten. In größeren Projekten sollen sie anspruchsvolle Teilaufgaben entsprechend qualifiziert bearbeiten können.

Die Teilnehmer werden in Gruppen eingeteilt. Jede Gruppe führt ein eigenes Software-Entwicklungsprojekt durch. Eine geeignete Projektidee soll die Gruppe selbst entwickeln. Das Projekt kann in Kombination mit dem Fach Computergrafik bearbeitet werden.

Das Vorgehen bei der Softwareentwicklung soll sich an Scrum anlehnen. Hierzu bestimmt jede Gruppe einen Scrum Master und einen Product Owner. Jedes Teammitglied, auch der Scrum Master und der Product Owner, soll als Entwickler bei der Erstellung der Software mitarbeiten. Die Entwicklung soll in Sprints geplant werden. Die Gruppen arbeiten dabei selbstorganisierend.