Software Engineering
Covid-19 Information:
Die Veranstaltung findet statt und ist zunächst als Präsenzveranstaltung geplant. Die Gastvorlesungen werden als Online-Veranstaltungen via Zoom durchgeführt (Links werden im Moodle-Kurs bereitgestellt).
Wann und Wo
Vorlesung: Montag, 13-15 Uhr; RUD 25, 3.001 / Mittwoch, 13-15 Uhr; RUD 25, 3.001
Übung: Freitag, 11-13 Uhr; RUD 26, 0'115
Moodle-Kurs: Details zum Moodle-Kurs werden an alle via Agnes registrierten Teilnehmer*innen versendet.
Wer
Dozent: Prof. Grunske
Übung: Marc Carwehl, M.Sc. / Dipl.Inf. Simon Heiden
Beschreibung und Aufbau der Lehrveranstaltung
Die Teilnehmer bekommen tiefe und umfassende Kenntnisse auf dem Gebiet des Software Engineerings, wie zu Methoden der systematischen Entwicklung komplexer Software; Vorgehensmodelle und Software-Entwicklungsstandards; Qualitätskriterien, Metriken und Aufwandsabschätzung; Anforderungsanalyse: Pflichtenheft und Produktmodell; Objektorientierte (UML) und strukturierte Analyse; Software-Architekturen, Entwurfsmuster und Modularisierung; Einsatz formaler Methoden; Validierung, Verifikation und Test; Produktzyklen, Weiterentwicklung und Reverse Engineering; Konfigurationsmanagement und Entwicklungswerkzeuge; Einführung in die Software-Ergonomie.
Terminplanung bis Semesterende (Änderungen möglich)
Mo, 13.00-15.00 | Thema | Mi, 13.00-15.00 | Thema | |||
---|---|---|---|---|---|---|
18.10.21 |
20.10.21 | V | Einführung | |||
25.10.21 | V | Vorgehensmodelle / Prozessmodelle I |
27.10.21 | V | Vorgehensmodelle / Prozessmodelle II |
|
01.11.21 | V | Planung und Management von Softwareprojekten | 03.11.21 | V |
Anforderungsanalyse und Anforderungsspezifikation I |
|
08.11.21 | V | Anforderungsanalyse und Anforderungsspezifikation II | 10.11.21 | V | Architekturmodellierung I | |
15.11.21 | V |
Gastvorlesung: „Automotive Requirements Engineering – Ein Blick in die Lastenhefterstellung der Mercedes-Benz PKW Entwicklung“Frank Houdek, Daimler AG |
17.11.21 | V | Architekturmodellierung II | |
22.11.21 | V | Systementwurf I | 24.11.21 | V | Systementwurf II | |
29.11.21 |
V | Implementierung I | 01.12.21 | V | Implementierung II | |
06.12.21 | V | Entwurfsmuster | 08.12.21 | V | Refactoring | |
13.12.21 | V | Modellgetriebene Softwareentwicklung | 15.12.21 | V |
Werkzeuge der Modellgetriebenen Softwareentwicklung Modeltransformationen und Meta-Modellierung |
|
03.01.22 | Ü |
Besprechung Musterlösungen |
05.01.22 | Ü | Repetitorium | |
10.01.22 | V | Systemtest - Funktionsorientierter Test |
12.01.22 | V | Modultest - Kontrollflussorientierter Test | |
17.01.22 | V |
Modultest - Datenflussorientierter Test |
19.01.22 | V | Fehlerfindung und Debugging | |
24.01.22 | V | Statische Code-Analyse | 26.01.22 |
V |
Integration und Integrationstest |
|
31.01.22 | V |
Wiederverwendung und Dokumentation |
02.02.22 | V |
Konfigurationsverwaltung und Wartung |
|
07.02.22 | V | Gastvorlesung „Vom Wiegen allein wird die Sau nicht fett - Erfahrungen aus 10 Jahren Qualitätsanalyse in Forschung und Praxis“ Elmar Jürgens, CQSE GMBH | 09.02.22 | V |
Gastvorlesung „Continuous Delivery in the cloud in agile development.“ Henning Jacobs, Zalando AG |
|
14.02.22 | Ü | Repetitorium | 16.02.22 | V |
Zusammenfassung und Q&A |
Übungstermine
- 22.10.2021: Digital: Gastvortrag von Christoph Hecht, Adesso AG,
"Nicht-technische Aspekte des Software Engineering für soziotechnische Systeme" - 29.10.2021: Organisatorisches zum Übungsbetrieb und Gruppenfindung
- 05.11.2021: Übungsblatt 01 - Planung
- 12.11.2021: Übungsblatt 02 - Anforderungsanalyse
- 19.11.2021: Übungsblatt 03 - Architekturmodellierung
- 26.11.2021: Übungsblatt 04 - Systementwurf
- 03.12.2021: Übungsblatt 05 - Hoare-Logik
- 10.12.2021: Übungsblatt 06 - Entwurfsmuster
- 17.12.2021: Diskussion der Lösungen zu den Blättern 02 und 03
- 03.01.2022: Diskussion der Lösungen zu den Blättern 04 und 05
- 07.01.2022: Diskussion der Lösungen zu den Blättern 06
- 14.01.2022: Übungsblatt 07 - Funktionsorientierter Test
- 21.01.2022: Übungsblatt 08 - Kontrollflussorientierter Test
- 28.01.2022: Übungsblatt 09 - Datenflussorienterter Test
- 04.02.2022: Übungsblatt 10 - Statische Code-Analyse
- 10.02.2022: Besprechung der Lösung zu Blatt 10 und Q&A zur Klausur
- 18.02.2022: Q&A zur Klausur (unter Vorbehalt)
Links zu Berufsgemeinschaften für Informatiker/Softwaretechniker:
- Gesellschaft für Informatik (GI)
- Forum InformatikerInnen für Frieden und gesellschaftliche Verantwortung
- IEEE Computer Society
- Association for Computing Machinery (ACM)
Software Engineering Links:
Voraussetzungen und Prüfung
Erfolgreicher Abschluss des Moduls „Grundlagen der Programmierung“ oder vergleichbare Kenntnisse.
Für die Zulassung zur Prüfung ist ferner die Teilnahme am Übungsbetrieb verpflichtend.
Die Lehrveranstaltung wird mit einer 120-Minuten-Klausur geprüft (online). Zugelassenes Hilfsmittel ist ein beidseitig handschriftlich beschriebener DIN A4 Zettel.
Klausurtermin (120 min): Fr, 04.03.2022 um 09.00
Wiederholungstermin: Mi, 13.04.2022 um 12.00
Skript und Übungsaufgaben
Alle Materialien zur Vorlesung werden in Moodle zur Verfügung gestellt. Das Passwort zum Kursbeitritt wird in der ersten Veranstaltung bekanntgegeben.
Änderungen an den Terminen und am genauen Inhalt sind (auch kurzfristig) möglich, werden aber im Normalfall auf dieser Webseite und in der Vorlesung bekanntgegeben.
Die Übungsblätter werden spätestens in der dem Übungstermin vorausgehenden Woche in Moodle zur Verfügung gestellt. Dort befinden sich auch die Folien zu den Übungen.
Literatur
- Jochen Ludewig, Horst Lichter, Software Engineering – Grundlagen, Menschen, Prozesse, Techniken. 2. Aufl., dpunkt.verlag Heidelberg, 2010.
-
Peter Liggesmeyer, Software-Qualität. Testen, Analysieren und Verifizieren von Software. Spektrum Akademischer Verlag, 2002.