Departement Mathematik und Informatik, Universität Basel
Dozent: Marcel Lüthi ([email protected])
Tutor: Clemens Büchner ([email protected])
Tutor: Jan Schönholz ([email protected], Github: https://github.com/schoenja)
Die Vorlesung gibt eine erste Einführung in das Software Engineering. Das Hauptziel der Vorlesung ist die Studierenden mit den Grundprinzipien der Softwaretechnik, sowie, zu einem gewissen Grad, auch mit der Geschichte des Gebiets vertraut zu machen. Aktuelle Methoden und Tools werden im Rahmen eines vorlesungsbegleitenden Projekts eingeführt.
Das Open Source Projekt Jabref (Fork des Github Repositories) dient als Grundlage für die praktischen übungen. Die Studierenden bringen kleine Änderungen am Projekt an, studieren den Source Code und implementieren dann eigene Erweiterungen.
Einen Überblick über die einzelnen Projektschritte finden Sie hier.
Themen | Bemerkungen | |
---|---|---|
Woche 1 | Einführung / Administratives | |
Was ist Software engineering | ||
Woche 2 | Kurze Geschichte des Software Engineerings | |
Eigenschaften von Software | ||
Software Qualitätsmerkmale | ||
Woche 3 | Prinzipien des Software engineerings | |
Software design - Übersicht und Einführung | ||
Woche 4 | Modulstruktur | |
ModulDesign | ||
Woche 5 | OO Design | |
UML (statische Diagramme) | ||
Woche 6 | Anforderungsanalyse | |
Woche 7 | Softwarespezifikation | |
UML (dynamische Diagramme) | ||
Woche 8 | Konstruktive und Deskriptive Softwarespezifikation | |
Woche 9 | Verifikation (Überblick) | |
Theoretische Grundlagen des Testens | ||
Woche 10 | Testen im Kleinen | |
Testen im Grossen | ||
Woche 11 | Softwareprozesse | |
Agile Softwareentwicklung | ||
Woche 12 | Scrum | |
Continuous delivery | ||
Woche 13 | Projektpräsentationen | |
Woche 14 | Zusammenfassung / Prüfungsvorbesprechung |
Abgabetermin | Beschreibung | Abgabeart | Anmerkung |
---|---|---|---|
09. Oktober | Praktische Übung Woche 3 | Pull request | |
15. Oktober | Theorieübung Woche 4 | Adam | Nur wer nicht in der Vorlesung vom 09.10 war |
15. Oktober | Vorschläge für Projektthemen einreichen | Siehe Slides für Details | |
16. Oktober | Selbsttest Woche 5 | Adam | Muss bis vor der Vorlesung (08.00) gelöst werden |
-
C. Ghezzi, M. Jazayeri und D. Mandrioli, Fundamentals of Software Engineering
-
S. L. Pfleeger, und J. M. Atlee. Software engineering: theory and practice
- The mythical man month, Fred Brooks: (pdf)
- Software Engineering Klassiker. Einfach und unterhaltsam zu lesen aber voller wertvoller Informationen.
- The Good, the Hype and the Ugly, Bertrand Mejer (Amazon)
- Sehr gute Einführung in Agile Methoden, die Agile Methoden auch in Kontext mit traditionellen Software Engineering Ansätzen setzt.
- Seminal papers in Software Engineering, The Carnegie Mellon Canonical Collection (pdf)
- Annotierter Katalog von klassischen Software Engineering Paper