Software Architektur verteilter Anwendungen
- Fakultät
Fakultät Ingenieurwissenschaften und Informatik (IuI)
- Version
Version 1 vom 24.03.2026.
- Modulkennung
11M0633
- Niveaustufe
Master
- Unterrichtssprache
Deutsch
- ECTS-Leistungspunkte und Benotung
5.0
- Häufigkeit des Angebots des Moduls
nur Wintersemester
- Dauer des Moduls
1 Semester
- Kurzbeschreibung
Die Software-Architektur beschreibt die Organisation einer Software, konkret die Struktur von Software-Bausteinen, die Beziehungen der Software-Bausteine zueinander und zur Umgebung, sowie das erwartete Laufzeitverhalten unter Einhaltung definierter Qualitätsmerkmale. In verteilten Anwendungen stellen die Komposition einer Anwendung aus verteilten Software-Bausteinen, sowie deren prozessübergreifende Kommunikation eine Herausforderung dar. Studierende lernen Ansätze und Methoden zur Definition und Bewertung von Software-Architekturen verteilter Anwendungen kennen.
- Lehr-Lerninhalte
- Software-Architektur verteilter Anwendungen im Überblick
- Software-Architektur-Stile, -Muster und –Prinzipien
- Erfassen, analysieren und dokumentieren architekturrelevanter Anforderungen
- Entwerfen, dokumentieren und bewerten von Software-Architekturen
- Referenzarchitekturen
- Gesamtarbeitsaufwand
Der Arbeitsaufwand für das Modul umfasst insgesamt 150 Stunden (siehe auch "ECTS-Leistungspunkte und Benotung").
- Lehr- und Lernformen
Dozentengebundenes Lernen Std. Workload Lehrtyp Mediale Umsetzung Konkretisierung 15 Vorlesung - 15 betreute Kleingruppen - 15 Seminar - Dozentenungebundenes Lernen Std. Workload Lehrtyp Mediale Umsetzung Konkretisierung 70 Arbeit in Kleingruppen - 15 Referatsvorbereitung - 20 Erstellung von Prüfungsleistungen -
- Benotete Prüfungsleistung
- Referat (mit schriftlicher Ausarbeitung) oder
- Projektbericht (schriftlich) oder
- Hausarbeit
- Bemerkung zur Prüfungsart
Die Auswahl der benoteten Prüfungsarten aus den vorgegebenen Optionen obliegt der jeweiligen Lehrperson. Diese hält sich dabei an die jeweils gültige Studienordnung.
Die Prüfungsformen der benoteten Prüfungsleistung sind a) Referat (mit schriftl. Ausarbeitung), b) Projektbericht (schriftl.), sowie c) Hausarbeit und werden in der jeweils gültigen Studienordnung beschrieben.
- Prüfungsdauer und Prüfungsumfang
Referat (mit schriftl. Ausarbeitung): ca. 20 - 30 Minuten, dazugehörige Ausarbeitung: ca. 8 - 12 Seiten
Projektbericht (schriftl.): ca. 15 - 20 Seiten, dazugehörige Erläuterung: ca. 15 Minuten
Hausarbeit: ca. 20 Seiten, ggf. dazugehörige Erläuterung: ca. 10 Minuten
- Empfohlene Vorkenntnisse
- Kenntnisse des Software-Engineerings, insbesondere der Methoden und Prozesse der systematischen Softwareentwicklung
- Grundlegende Fähigkeiten in der Anforderungsanalyse und der Erhebung, Dokumentation und Bewertung funktionaler sowie nicht-funktionaler Anforderungen
- Kenntnisse im Software-Design, einschließlich gängiger Entwurfsmuster und Designprinzipien
- Fundierte Kenntnisse der objektorientierten Programmierung sowie sicherer Umgang mit mindestens einer objektorientierten Programmiersprache
- Grundlegendes Verständnis verteilter Systeme, insbesondere hinsichtlich Kommunikationsmechanismen, Nebenläufigkeit und Konsistenzmodellen
- initiale Kenntnisse grundlegender Konzepte und Anwendungen von Software-Architekturen
- Grundkenntnisse im Bereich Datenbanken, insbesondere in der Datenmodellierung und im Umgang mit relationalen Datenbanksystemen
- Wissensverbreiterung
Die Studierenden können:
- Aufgaben der Software-Architektur als Disziplin verstehen und von anderen Aufgaben im Software-Engieering abgrenzen
- Software-Architektur Prinzipien und Muster einordnen
- den Einfluss nicht-funktionaler Anforderungen auf die Software-Architektur darlegen
- ein methodisches Vorgehen zur Anforderungsanalyse, dem Entwurf, der Bewertung und der Umsetzung einer Software-Architektur beschreiben
- eine Software-Architektur für eine verteilte Anwendung entwerfen und die Tragfähigkeit nachweisen
- Wissensvertiefung
Studierende die dieses Modul erfolgreich absolviert haben können verteilte Software-Anwendungen anhand definierter Ziele und angeforderter Merkmale angemessen organisieren.
- Wissensverständnis
Die Studierenden können:
- sich selbstständig das Wissen aneignen, um auf dem aktuellen Stand der Entwicklung zu bleiben
- aus einem Portfolio von Möglichkeiten die geeignete Architektur für eine konkrete verteilte Anwendung auswählen sowie diese Entscheidung vertreten und verteidigen
- Nutzung und Transfer
Die Studierenden können die Software-Architektur für eine verteilte Anwendung prototypisch entwerfen und tragfähige Entscheidungen zur Einhaltung definierter Qualitätsmerkmale treffen.
- Kommunikation und Kooperation
Die Studierenden können:
- architekturrelevante Anforderungen und deren Auswirkungen auf die Software-Architektur mit Peers, erfahreneren Kollegen und Spezialisten diskutieren
- Probleme verstehen, Problemlösungen ermitteln, mit Peers und Spezialisten besprechen, eine geeignete Entscheidung argumentativ veranschaulichen und die Tragfähigkeit der Entscheidung demonstrieren
- können den Software-Architektur Entwurf dokumentieren und kommunizieren, sowie die Umsetzung begleiten
- Wissenschaftliches Selbstverständnis / Professionalität
Die Studierenden können:
- Anforderungen, speziell Qualitätsmerkmale und deren Auswirkungen auf die Software-Architektur reflektieren
- bestehende Herausforderungen beim Entwurf einer Software-Architektur beurteilen
- Literatur
Bass L., Clements P., Kazman R. (2021): Software-Architecture in Practice, Addison-Wesley
Daigneau R. (2012): Service Design Patterns, Addison Wesley
Dunkel J., et al. (2008): System-Architekturen für verteilte Anwendungen, Hanser-Verlag
Goll J. (2014): Architektur- und Entwurfsmuster der Softwaretechnik, Springer Verlag
Hohpe G., Woolf B. (2003): Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions, Addison Wesley
Khononov V. (2022): Einführung in Domain-Driven Design, O'Reilly
Martin R.C. (2018): Clean Architecture - Gute Softwarearchitekturen, mitp
Posch T., Birken K., Gerdom M. (2011): Basiswissen Softwarearchitektur: Verstehen, entwerfen, wiederverwenden, dpunkt.verlag
Richards M., Ford N. (2020): Fundamentals of Software-Architecture: An Engineering Approach, O'Reilly
Rupp, C.. et al (2020): Requirements-Engineering und -Management, 7. Auflage, Carl Hanser-Verlag
Schmidt D.C. (2002): Pattern-orientierte Software-Architektur: Muster für nebenläufige und vernetzte Objekte, dpunkt.verlag
Starke G. (2020): Effektive Software-Architekture: Ein praktischer Leitfaden, Hanser-Verlag
Toth S. (2019): Vorgehensmuster für Softwarearchitektur, 3. Auflage, Hanser-Verlag
Vogel O., et al, (2008): Software-Architektur, Spektrum Verlag
Wolff E. (2015): Microservices: Grundlagen flexibler Architekturen, dpunkt.verlag
Zörner S. (2021): Software-Architekturen dokumentieren und kommunizieren, Hanser-Verlag
Zimmermann O., et al. (2022): Patterns for API Design, Addison-Wesley Professional
- Verwendbarkeit nach Studiengängen
- Informatik
- Informatik M.Sc. (01.09.2025)
- Mechatronic Systems Engineering
- Mechatronic Systems Engineering M.Sc. (01.09.2025)
- Modulpromotor*in
- Roosmann, Rainer
- Lehrende
- Thiesing, Frank
- Roosmann, Rainer
- Eikerling, Heinz-Josef