Praxis der Software-Entwicklung
im Sommersemester 2016
- Teilnahme: Die Teilnehmerzahl ist auf zwei Teams zu je 5-6 Personen beschränkt. Die Anmeldung erfolgt zentral während der ersten Vorlesungswochen.
Termine
Am Mittwoch, dem 20. April 2016, um 15:45 Uhr im Hörsaal am Fasanengarten (Geb. 50.35) findet die Auftaktveranstaltung statt. Dort werden die verschiedenen Aufgaben vorgestellt und erklärt, wie die Gruppen eingeteilt werden.
Die Einführungsveranstaltung findet am Freitag, dem 29. April 2016, um 9:45 Uhr in Raum 301 im Informatik Hauptgebäude (Geb. 50.34) statt. (Achtung: Termin geändert wegen voraussichtlich späterer Einteilung der Gruppen.)
Es wird ein wöchentliches Treffen geben. Der Termin dafür wird in der Einführungsveranstaltung abgesprochen.
Aufgabenstellung
Ziel dieser Veranstaltung ist die Planung und Implementierung einer Routingsoftware für den KIT-Campus. Für einen Benutzer soll es dabei möglich sein, ein Gebäude oder auch einen Raum innerhalb eines Gebäudes als Start- bzw. Zielpunkt festzulegen. Ihre Routingsoftware soll dann in der Lage sein, eine kürzeste Route vom Start- zum Zielpunkt zu berechnen und anzuzeigen. Außerdem sollte Ihre Software eine komfortable Möglichkeit bereit stellen, die zugrunde liegenden Kartendaten zu bearbeiten.
Ablauf und vorläufiger Zeitplan
Neben der Qualität des von Ihnen erstellten Systems, steht das Vorgehen nach einem Prozessmodell der Softwaretechnik bei diesem Projekt genauso im Vordergrund. Zu jeder Projektphase ist ein Dokument zu erstellen, das den Ablauf der jeweiligen Phase bzw. deren Ergebnisse beschreibt.
- Erstes Gruppentreffen: 29. April 2016
- Abgabe des Pflichtenhefts: 24. Mai 2016, kurz danach müssen Sie ihr Pflichtenheft im Rahmen eines Kolloquiums erläutern (Termin nach Vereinbarung).
- Abgabe des Entwurfs: 21. Juni 2016, kurz danach müssen Sie ihren Entwurf im Rahmen eines Kolloquiums verteidigen (Termin nach Vereinbarung).
- Abgabe Implementierungsbericht: 19. Juli 2016, kurz danach findet das Implementierungskolloquium statt (Termin nach Vereinbarung).
- Klausurpause: Individuelle 2 Wochen nach eigenem Ermessen während Validierung
- Abgabe des Testberichtes und Systemabnahme: 23. August 2016
- Abschlusspräsentation: 31. August 2016
Die Abgabetermine sind verbindlich, die Kolloquien finden nach Vereinbarung statt.
Materialien
- Folien der Auftaktveranstaltung vom 20. April 2016
- Folien der Einführungsveranstaltung
- Phase 1: Pflichtenheft
- Phase 2: Entwurf
- Phase 3: Implementierung
- Phase 4: Validierung
Software
Die im Folgenden vorgestellten Werkzeuge und Frameworks sind Empfehlungen unsererseits. Sofern nicht anders abgesprochen soll Java als Programmiersprache verwendet werden. Wenn alle einverstanden sind und entsprechende Vorkenntnisse vorhanden sind kann auch C++ verwendet werden. Sollten Sie eine andere Programmiersprache bevorzugen, dann sprechen Sie dies bitte mit den Betreuern ab.
Entwicklungsumgebungen
Versionsverwaltung
git ist eine freie Versionsverwaltungssoftware für Dateien. Kostenfreie Repositories für private Nutzer sind z.B.: GitHub und Bitbucket. Der Lehrstuhl ITI Wagner bietet euch für euer Projekt ein Account auf einem institutseigenen Server an.
Validierungswerkzeuge
- Automatisiertes Messen der Unit Test Qualität (Mutation Tests): Judy (Testen der Tests)