Departement Mathematik und Informatik, Universität Basel
Dozent: Marcel Lüthi (marcel.luethi@unibas.ch)
Tutor: Michael Plüss (m.pluess@unibas.ch, Github: https://github.com/MichaelPluess)
Tutor: Jan Schönholz (jan.schoenholz@unibas.ch, 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 Ganttprojekt (Fork des Github Repositories) dient als Grundlage für die praktischen übungen. Die Studierenden implementieren in Gruppen kleine Änderungen am Projekt, studieren den Source Code und implementieren eigene Erweiterungen.
Klicken Sie auf eine Woche um zu den entsprechenden Ressourcen zu gelangen.
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 | Softwarearchitektur | |
Modulstruktur | ||
Woche 5 | Moduldesign | |
OO Design | ||
UML (statische Diagramme) | ||
Woche 6 | OO Design Prinzipien (SOLID) | |
OO Design Heuristiken | ||
Woche 7 | Requirement Engineering | |
Requirements | ||
Woche 8 | Softwarespezifikation | |
Konstruktive Softwarespezifikation | ||
Woche 9 | Deskriptive Softwarespezifikation | |
Woche 10 | Verifikation (überblick) | |
Testen (Einführung) | ||
Testen im Kleinen | ||
Woche 11 | Testen im Grossen | |
Softwareprozesse | ||
Woche 12 | Agile Softwareentwicklung | |
Scrum | ||
Woche 13 | Entwurfsmuster |
Abgabetermin | Beschreibung | Abgabeart |
---|---|---|
26. September, 08:00 | Individueller Test | Adam |
2. Oktober, 23.59 | Übungsblatt Woche 2 (Theorie) | Adam |
2. Oktober, 23.59 | Übungsblatt Woche 2 (Praxis) | Github |
-
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