Advanced Software Architecture

Advanced Software Architecture

SWS 4
ECTS 5
Sprache(n) Deutsch (Standard)
Englisch
Lehrform SU mit Praktikum
Angebot nach Ankündigung
Aufwand

60 Präsenzstunden, 90 Stunden Eigenarbeit zur Vor-/Nachbereitung und Prüfungsvorbereitung

Voraussetzungen

Grundlagen des objektorientierten Softwareentwurfs (Modellierung, Entwurfsmuster, Konzepte der Modularisierung), Grundlagen verteilter Anwendungen, Überblick über die Disziplinen des Software Engineerings

Ziele

Das Modul soll Studierende qualifizieren, in der (Weiter-)Entwicklung kleiner und mittlerer Softwaresysteme die Rolle des/der SoftwarearchitektIn einzunehmen und Verantwortung für die technische Konzeption zu übernehmen. Dazu sind die Studierenden in der Lage,

  • die Aufgaben und Anforderungen eines/einer Software-ArchitektIn und die Ziele der Softwarearchitektur zu benennen,
  • eigenständig Architekturen zu entwerfen und dabei gängige Methoden und Ansätze auf ihre Eignung insbesondere im Hinblick auf nichtfunktionale Anforderungen zu bewerten,
  • Architekturen in geeigneten Formen zu beschreiben bzw. zu dokumentieren und zu bewerten,
  • Entwicklungsteams in der (Weiter-)Entwicklung von Softwaresystemen und zu begleiten
  • Vorgehen und den Einsatz von Werkzeugen zu bewerten und zu verbessern.
Inhalt

Das Modul umfasst die folgenden Inhalte:

  • Definitionen und Ziele der Softwarearchitektur und Rolle des Softwarearchitekten
  • Notationen und Frameworks zur Dokumentation und Kommunikation von Softwarearchitekturen, Nutzung von Architektursichten
  • Entwurfsprinzipien und Architekturstile
  • Methodische Ansätze und Best Practices zur Zerlegung und Verteilung von Softwaresystemen
  • Querschnittliche Architekturkonzepte und Bewertungen verfügbarer Lösungen (z.B. Workflows, Persistenz, Authentifizierung)
  • Qualitative und Quantitative Bewertung von Softwarearchitekturen, Qualitätsmodelle
  • Werkzeugauswahl
  • Integration von Architekturaspekten in agile Vorgehensweisen
  • Umgang mit technischen Schulden und systematische Verbesserung von Legacy-Software
  • Architekturebenen und Zusammenspiel zwischen Software- und Unternehmensarchitekturen

Ergänzend können ausgewählte Themen zu methodischen, technischen oder sozialen Kompetenzen behandelt werden, z.B. Domain Driven Design, Cloud-native, Moderation in Entwicklungsteams

Medien und Methoden

Folien, Tafel/Whiteboard, Live-Übungen, Fallstudien, Aufgabenorientierte Arbeit in Kleingruppen

Literatur
  • Bass, L., Clements, P. und Kazman, R.: Software Architecture in Practice. 3rd edition, Addison-Wesley, 2012.
  • Reussner R. (Hrsg.), Hasselbring W. (Hrsg.): Handbuch der Software-Architektur. 2. Auflage 2008, dpunkt Verlag.
  • Buschmann F., Meunier R, Rohnert H., Sommerlad P.:A System of Patterns:Pattern-Oriented Software Architecture: 1. 1st edition 1996, Wiley.
  • Gorton, I.: Essential Software Architecture. 2nd edition, Springer, 2011.
  • Starke G.: Effektive Softwarearchitekturen. 7. überarbeitete Auflage, Carl Hanser Verlag, 2015
  • Siedersleben J.: Moderne Software-Architektur: Umsichtig planen, robust bauen mit Quasar. 1., Aufl. (Juli 2004), Dpunkt Verlag.
  • Toth, S.: Vorgehensmuster für Softwarearchitektur - Kombinierbare Praktiken in Zeiten von Agile und Lean. 2. Auflage, Hanser Verlag2015
  • Zörner, St.: Softwarearchitekturen dokumentieren und kommunizieren. 2. Auflage, Hanser Verlag,2015.
Zuordnungen Curricula
SPO Fachgruppe Code ab Semester Prüfungsleistungen

IG Version 2019

SWE: Schwerpunkt

1

mündliche Prüfung

IG Version 2019

VCML: Fachliche u. persönliche Profilbildung

1

mündliche Prüfung

IG Version 2019

EC: Fachliche u. persönliche Profilbildung

1

mündliche Prüfung

IG Version 2024

EC: Fachliche u. persönliche Profilbildung

1

mündliche Prüfung

IG Version 2024

SWE: Schwerpunkt

1

mündliche Prüfung

IG Version 2024

VCML: Fachliche u. persönliche Profilbildung

1

mündliche Prüfung

IG Version 2024

ITSEC: Fachliche u. persönliche Profilbildung

1

mündliche Prüfung