grundlegende Kenntnisse in Software-Architekturen und Software-Engineering
Drei-Schichten-Architekturen
Prinzip der losen Kopplung
grundlegende Kentnisse in Datenbanken
SQL
JDBC
grundlegende Kenntnisse in Netzwerken
IP
TCP/UDP
DNS
HTTP
SSH
grundlegende Kenntnisse in Linux
Umgang mit der Bash-Kommandozeile
grundlegende Kenntnisse im Versionsverwaltungssystem Git
Literatur
wird in Lehrveranstaltung bekanntgegeben
Dozenten
Prof. Dr. René Wörzberger
Wissenschaftliche Mitarbeiter
wird in Lehrveranstaltung bekannt gegeben
Zeugnistext
Large and Cloud-based Software Systems
Kompetenznachweis
Form
sMP
Regelfall (bei großer Prüfungszahl: sK)
Aufwand [h]
sMP
10
Intervall: 2/Jahr
Lehrveranstaltungselemente
Vorlesung / Übung
Lernziele
Lerninhalte (Kenntnisse)
gängige Architektur-Muster und -Stile (z.B. asychrone Kommunikation mittels Messaging, stärkere Verteilung durch Microservices, Betrieb in der Cloud, Verwendung georedundanter Datenreplikation) kennen
die Bestandteile und den Aufbau eines System-Clusters in beispielsweise der Google-Cloud kennen
Funktionsweisen von Continuous-Integration-Pipelines in GitLab kennen
gängige Architektur-Sichten, -Notationen und Werkzeuge kennen
verschiedene Stakeholder in einem komplexen Entwicklungsprojekt kennen und deren Interessen abwägen können
Fertigkeiten
architekturrelevante Anforderungen (z.B. niedrige Response Zeiten) von anderen Anforderungen (z.B. an das UX-Design) trennen können
innerhalb eines durchgängigen Beispiel-Projekts architekturrelevante Anforderungen, insbesondere Qualitätsanforderungen, erheben und mittels Szenarien schärfen können
Architekturen mit geeigneten Sichten, Notationen (z.B. UML) und Werkzeugen (z.B. Enterprise Architect oder PlantUML) Stakeholder-spezifisch darstellen können
zur Implementierung von Entwurfsentscheidungen geeignete Methoden (z.B. RESTful API-Design), Ansätze (z.B. API-Spezifikation mit OpenAPI in Microservice-Architekturen), Werkzeuge und Rahmenwerke (z.B. Swagger und Spring-Boot) einsetzen
ein System-Cluster in der Cloud aufbauen und ein vorgefertigtes System installieren können
Begleitmaterial
elektronische Vortragsfolien zur Vorlesung
elektronische Übungsaufgabensammlung
Besondere Voraussetzungen
keine
Besondere Literatur
keine
Besonderer Kompetenznachweis
Form
bÜA
Präsenzübung und Selbstlernaufgaben
Beitrag zum LV-Ergebnis
bÜA
unbenotet
Intervall: 1/Jahr
Praktikum
Lernziele
Fertigkeiten
die Architektur des individuellen Systems mit geeigneten Sichten, Notationen (z.B. UML) und Werkzeugen (z.B. Enterprise Architect oder PlantUML) Stakeholder-spezifisch darstellen können
das System prototypisch im Team implementieren
eine geeignete Cloud-basierte Umgebung entwerfen und realisieren können
das individuelle System in der Cloud installieren
und mittels eine Continuous-Delivery-Pipeline fortwärend aktualisieren können
innerhalb eines individuellen Projekts architekturrelevante Anforderungen, insbesondere Qualitätsanforderungen, erheben und mittels Szenarien schärfen
Handlungskompetenz demonstrieren
Spezifische architekturrelevante Anforderungen erheben und in geeigneten Architekturen umsetzen
Geeignete, Cloud-basierte Umgebungen Softwaresysteme mit hohen Qualitätsanforderungen aufsetzen und betreiben