htw saar Piktogramm QR-encoded URL
Zurück zur Hauptseite Version des Moduls auswählen:
Lernziele hervorheben XML-Code


[Lernergebnisse des Moduls anzeigen]

Advanced Software Engineering

Modulbezeichnung:
Bezeichnung des Moduls innerhalb des Studiengangs. Sie soll eine präzise und verständliche Überschrift des Modulinhalts darstellen.
Advanced Software Engineering
Studiengang:
Studiengang mit Beginn der Gültigkeit der betreffenden ASPO-Anlage/Studienordnung des Studiengangs, in dem dieses Modul zum Studienprogramm gehört (=Start der ersten Erstsemester-Kohorte, die nach dieser Ordnung studiert).
Praktische Informatik, Master, SO 01.10.2026
Code: PIM-ASE
SWS/Lehrform:
Die Anzahl der Semesterwochenstunden (SWS) wird als Zusammensetzung von Vorlesungsstunden (V), Übungsstunden (U), Praktikumsstunden (P) oder Projektarbeitsstunden (PA) angegeben. Beispielsweise besteht eine Veranstaltung der Form 2V+2U aus 2 Vorlesungsstunden und 2 Übungsstunden pro Woche.
2V+2PA (4 Semesterwochenstunden)
ECTS-Punkte:
Die Anzahl der Punkte nach ECTS (Leistungspunkte, Kreditpunkte), die dem Studierenden bei erfolgreicher Ableistung des Moduls gutgeschrieben werden. Die ECTS-Punkte entscheiden über die Gewichtung des Fachs bei der Berechnung der Durchschnittsnote im Abschlusszeugnis. Jedem ECTS-Punkt entsprechen 30 studentische Arbeitsstunden (Anwesenheit, Vor- und Nachbereitung, Prüfungsvorbereitung, ggfs. Zeit zur Bearbeitung eines Projekts), verteilt über die gesamte Zeit des Semesters (26 Wochen).
6
Studiensemester: 2
Pflichtfach: ja
Arbeitssprache:
Deutsch
Studienleistungen (lt. Studienordnung/ASPO-Anlage):
Übung
Prüfungsart:
Mündliche Prüfung 50%, Projektarbeit 50%

[letzte Änderung 21.11.2025]
Verwendbarkeit / Zuordnung zum Curriculum:
Alle Studienprogramme, die das Modul enthalten mit Jahresangabe der entsprechenden Studienordnung / ASPO-Anlage.

PIM-ASE Praktische Informatik, Master, SO 01.10.2026 , 2. Semester, Pflichtfach
Arbeitsaufwand:
Der Arbeitsaufwand des Studierenden, der für das erfolgreiche Absolvieren eines Moduls notwendig ist, ergibt sich aus den ECTS-Punkten. Jeder ECTS-Punkt steht in der Regel für 30 Arbeitsstunden. Die Arbeitsstunden umfassen Präsenzzeit (in den Vorlesungswochen), Vor- und Nachbereitung der Vorlesung, ggfs. Abfassung einer Projektarbeit und die Vorbereitung auf die Prüfung.

Die ECTS beziehen sich auf die gesamte formale Semesterdauer (01.04.-30.09. im Sommersemester, 01.10.-31.03. im Wintersemester).
Die Präsenzzeit dieses Moduls umfasst bei 15 Semesterwochen 60 Veranstaltungsstunden (= 45 Zeitstunden). Der Gesamtumfang des Moduls beträgt bei 6 Creditpoints 180 Stunden (30 Std/ECTS). Daher stehen für die Vor- und Nachbereitung der Veranstaltung zusammen mit der Prüfungsvorbereitung 135 Stunden zur Verfügung.
Empfohlene Voraussetzungen (Module):
Keine.
Als Vorkenntnis empfohlen für Module:
Modulverantwortung:
Prof. Dr.-Ing. Martin Burger
Dozent/innen:
Prof. Dr.-Ing. Martin Burger


[letzte Änderung 11.12.2025]
Lernziele:
- Die Studierenden gestalten Softwareentwicklung als empirischen Prozess, um in komplexen, dynamischen Umgebungen durch iteratives Experimentieren und Feedbackschleifen Hypothesen zu validieren und Risiken zu minimieren.
 
- Sie analysieren Wertströme (Value Streams) in der Softwareentwicklung, um durch die Senkung von Losgrößen und die Begrenzung paralleler Arbeit den Durchsatz zu maximieren und Wartezeiten zu eliminieren.
 
- Sie konstruieren Softwarearchitekturen und Bereitstellungsmechanismen, die eine Entkopplung von Deployment und Release bewirken, sodass Änderungen jederzeit verlässlich in Produktion gebracht werden können.
 
- Sie evaluieren die systemischen Wechselwirkungen zwischen Organisationsstruktur, Softwarearchitektur und Entwicklungsprozessen, um Engpässe im Gesamtsystem zu identifizieren.
 
- Sie leiten qualitäts- und geschäftsrelevante Metriken ab, um die Effektivität der Entwicklung objektiv zu messen und kontinuierliche Verbesserungsprozesse datengestützt zu steuern.
 
- Sie entwickeln Strategien zur Skalierung und Teamorganisation, die Autonomie fördern und gleichzeitig Koordinationsaufwände minimieren, ohne die Kohärenz des Gesamtsystems zu gefährden.

[letzte Änderung 10.12.2025]
Inhalt:
In diesem Modul liegt der Fokus auf der ingenieurmäßigen Gestaltung von Softwaresystemen und -organisationen. Es vermittelt, wie durch die Anwendung wissenschaftlicher Prinzipien und technischer Exzellenz auch in komplexen Umgebungen nachhaltig wertvolle Software mit hohem Durchsatz geliefert werden kann.
 
1. Engineering Foundations und Empirie
 
- Softwareentwicklung als Lernprozess: Design als Hypothese
- Umgang mit Komplexität: Cynefin-Framework und systemisches Denken
- Modularität, Kohäsion und Separation of Concerns als Treiber für Anpassungsfähigkeit
- Wissenschaftliche Methode in der Softwareentwicklung: Iteration, Feedback, Validierung
 
2. Flow und Lean Product Development
 
- Ökonomie der Softwareentwicklung: Cost of Delay und Opportunitätskosten
- Warteschlangentheorie (Queuing Theory) und Little’s Law
- Management von Work-in-Progress (WIP), Losgrößen (Batch Sizes) und Durchlaufzeiten
- Identifikation und Beseitigung von Verschwendung in Wertströmen (Value Stream Mapping)
 
3. Architektur für Continuous Delivery
 
- Deployment Pipeline als zentrales Artefakt der Softwareproduktion
- Muster zur Entkopplung von Deployment und Release (Feature Toggles, Blue-Green Deployments, Canary Releases)
- Testbarkeit und Testautomatisierung als Architekturtreiber
- Infrastruktur als Code und Konfigurationsmanagement
 
4. Organisationsdesign und Skalierung
 
- Conway’s Law und das Inverse Conway Maneuver
- Interaktionstopologien für Teams (z. B. Stream-Aligned, Platform, Enabling Teams)
- Prinzipien der Skalierung: Descaling und Entkopplung statt bürokratischer Koordination
- Führung in autonomen Systemen: Mission Command vs. Command and Control
 
5. Metriken und Steuerung
 
- Abgrenzung von Vanity Metrics (z. B. Velocity) und Outcome Metrics
- Messung der Software Delivery Performance (Lead Time, Deployment Frequency, MTTR, Change Failure Rate)
- Nutzung von Telemetrie und Monitoring für Feedback aus dem Betrieb

[letzte Änderung 10.12.2025]
Weitere Lehrmethoden und Medien:
Lernmanagementsystem, Tafel, Whiteboard, Projektor, Präsentationsfolien, Videos, Workshopformat, Serious Games

[letzte Änderung 10.12.2025]
Literatur:
Farley, D. (2021). Modern Software Engineering: Doing What Works to Build Better Software Faster. Pearson Education.
 
Forsgren, N., Humble, J., Kim, G. (2018). Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations. IT Revolution Press.
 
Kim, G., Humble, J., Debois, P., Willis, J., Forsgren, N. (2021). The DevOps Handbook: How to Create World-Class Agility, Reliability, & Security in Technology Organizations. IT Revolution Press.
 
Larson, W. (2019). An Elegant Puzzle: Systems of Engineering Management. Stripe Matter Incorporated.
 
Meadows, D. (2008). Thinking in Systems: International Bestseller. Chelsea Green Publishing.
 
Poppendieck, M., Poppendieck, T. (2006). Implementing Lean Software Development: From Concept to Cash. Pearson Education.
 
Reinertsen, D. G. (2009). The Principles of Product Development Flow: Second Generation Lean Product Development. Celeritas.
 
Reupke-Sieroux, S., Roock, S., Wolf, H. (2025). Agile Leadership: Führungsmodelle, Führungsstile und das richtige Handwerkszeug für die agile Arbeitswelt. dpunkt.verlag.
 
Skelton, M., Pais, M. (2025). Team Topologies, 2nd Edition. IT Revolution Press.

[letzte Änderung 10.12.2025]
[Tue Jan  6 21:46:05 CET 2026, CKEY=pase, BKEY=pim3, CID=PIM-ASE, LANGUAGE=de, DATE=06.01.2026]