Software Engineering

About this course

Software Engineering (im deutschsprachigen Raum auch Softwaretechnik) zielt auf die ingenieurmäßige Entwicklung, Wartung, Anpassung und Weiterentwicklung großer Softwaresysteme unter Verwendung bewährter systematischer Vorgehensweisen, Prinzipien, Methoden und Werkzeuge. Die Diversifikation der unterschiedlichen Softwaresysteme und Anwendungsbereiche erfordert ein Portfolio anzuwendender Techniken, vergleichbar mit einem Werkzeugkasten. Ziel der Lehrveranstaltung ist es, diesen Werkzeugkasten mit den wichtigsten Techniken zu bestücken.

Organisation

Prerequisites

Empfohlen wird der erfolgreiche Abschluss der Module Programmieren 1 und Programmieren 2 oder vergleichbare Kenntnisse.

Learning outcomes

Die Studierenden erlangen die Fähigkeit, große Softwaresysteme zu entwerfen und systematisch korrekt zu realisieren.

Wie entwickle ich Software unter wirtschaftlichen Aspekten für realistische Projektgrößen?

Wie entwickle ich qualitativ hochwertige Software?

Schedule

DateTopicTopic focus
16-09-26Einführung
23-09-26keine Vorlesung
30-09-26Vorgehensmodelleklassische Software Engineering Themen
07-10-26Anforderungsanalyseklassische Software Engineering Themen
14-10-26Systemmodellierungklassische Software Engineering Themen
21-10-26Systementwurfklassische Software Engineering Themen
28-10-26Software-Prüfungklassische Software Engineering Themen
04-11-26Continous PracticesEinblicke in Software Engineering Praxis und Forschung
11-11-26Search-based Software TestingEinblicke in Software Engineering Praxis und Forschung
18-11-26Automated DebuggingEinblicke in Software Engineering Praxis und Forschung
25-11-26Automated RepairEinblicke in Software Engineering Praxis und Forschung
02-12-26Agentic WorkflowsEinblicke in Software Engineering Praxis und Forschung
09-12-26GastvorlesungEinblicke in Software Engineering Praxis und Forschung
16-12-26Q&AEinblicke in Software Engineering Praxis und Forschung

Exam

Repetition exam