Modulinformationssystem Informatik

 

Software Engineering für parallele und verteilte Systeme URL PDF XML

Modulcode: infSEPVS-01a
Englische Bezeichnung: Software Engineering for Parallel and Distributed Systems
Modulverantwortliche(r): Prof. Dr. Wilhelm Hasselbring
Turnus: unregelmäßig (WS19/20 WS20/21 WS21/22 WS22/23 WS23/24 WS24/25)
Präsenzzeiten: 4V 2Ü
ECTS: 8
Workload: 60 Std. Vorlesung, 30 Std. Präsenzübung, 60 Std. Softwareentwicklung, 90 Std. Selbststudium
Dauer: ein Semester
Modulkategorien: BSc-Inf-WP (BSc Inf (21)) WI (BSc Inf (15)) MSc-Inf-WP (MSc Inf (21)) 2F-MEd-Inf-WP (MEd-Hdl Inf (21)) 2F-MA-Inf-WP (2F-MA Inf (21)) MSc-WInf-WP-Inf (MSc WInf (21)) PI (MSc Inf (15)) WI (MSc Inf (15)) WI (MSc WInf (15)) WI (MEd Inf) WPI (MEd Inf) IS (SA) (MSc Inf (2-Fach))
Lehrsprache: Deutsch
Voraussetzungen: Info Inf-SP Inf-ST Inf-BSKS

Kurzfassung:

Basierend auf den Herausforderungen der nebenläufigen Programmierung werden etablierte Entwurfsmuster für parallele und verteilte Systeme vorgestellt. Praktische Softwareentwicklungsaufgaben vertiefen die präsentierten Architekturentwürfe.

Lernziele:

Die Studierenden rekapitulieren typische Herausforderungen in der nebenläufigen Programmierung und lernen den Entwurf und die Implementierung bewährter Entwurfsmuster für parallele und verteilte Systeme in Theorie und Praxis.

Lehrinhalte:

Einführung und Motivation. Nebenläufigkeit als Herausforderung (Abstraktionen, kritischer Abschnitt, Verifikation mit Model Checking, Kanalkommunikation, verteilte Algorithmen mit Nachrichtenkommunikation, generative Kommunikation, Konsensprobleme, CAP-Theorem). Muster für parallele Programmierung (Parallelität finden, Algorithmenstrukturen, unterstützende Strukturen, Implementierungsmechanismen). Muster für verteilte Systeme (Fehlertoleranz, EAI, SOA, Cloud, Big Data, Microservices, Migration).

Weitere Voraussetzungen:

Sehr gute Grundkenntnisse in Softwaretechnik, insbesondere aus den BSc-Modulen Softwaretechnik und Softwareprojekt; Betriebssysteme und verteilte Systeme.

Prüfungsleistung:

Mündliche Abschlussprüfung mit anteiliger Wertung der Ergebnisse aus dem vorlesungsbegleitenden Übungsbetrieb

Lehr- und Lernmethoden:

Vorlesung und vorlesungsbegleitender Übungsbetrieb

Verwendbarkeit:

MSc Informatik

Literatur:

M. Ben-Ari: Principles of concurrent and distributed programming. Second edition. Addison-Wesley, 2006.

Timothy G. Mattson, Beverly A. Sander, and Berna L. Massingill: Patterns for Parallel Programming. Addison-Wesley. Third edition, September 2007.

J. L. Ortega-Arjona: Patterns for Parallel Software Design. Wiley, Sept. 2009.

Gregor Hohpe, Bobby Woolf: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley, 2003.

T. Erl: SOA Design Patterns, Prentice Hall, 2008.

Christoph Fehling, Frank Leymann, Ralph Retter, Walter Schupeck, Peter Arbitter: Cloud Computing Patterns - Fundamentals to Design, Build, and Manage Cloud Applications, Springer, 2014.

Verweise:

http://se.informatik.uni-kiel.de/

Kommentar: