185.226 Verteiltes Programmieren mit Space Based Computing Middleware
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2018S, VU, 4.0h, 6.0EC

Merkmale

  • Semesterwochenstunden: 4.0
  • ECTS: 6.0
  • Typ: VU Vorlesung mit Übung

Ziele der Lehrveranstaltung

Bewertung und Klassifikation aktueller Werkzeuge und Technologien für verteiltes Programmieren. Erlernen der Grundkonzepte verteilter Programmierung mit speziellem Fokus auf innovativen Space Based Computing (SBC) Technologien. Design von GRID, P2P und Blockchain basierten verteilten und skalierbaren Anwendungsarchitekturen. Vertiefende praktische Erfahrung mit Sprachanbindungen für Java. Erlernen von Spracherweiterungen für SBC: Allgemeine Einführung: Erweiterung einer Programmiersprache um SBC-basierende P2P Koordinationseigenschaften. SBC Application Programming Interface (sprachunabhängig). Coordination Design Patterns. Sprachanbindungen zu Java. Verteiltes Programmieren mit der Sprachanbindung Java im Detail. Anwendungsbeispiele. Design von GRID-Architekturen mit SBC.

Inhalt der Lehrveranstaltung

Entwicklung des Internet Richtung Peer-to-Peer (P2P) und GRID Computing: Die 3. Generation des Internet wird P2P basiert sein. Echte P2P Technologien und Modelle. Kritische Betrachtungen. Vorteile von P2P gegenüber Client/Server Technologien. P2P-Einsatzszenarien im Enterprise Application Integration Bereich. Space Based Computing (SBC) Plattformen: Überblick und Grundkonzepte: Computernetze und P2P ermöglichen neue Anwendungsbereiche (mobile eCommerce, eCollaboration etc.) und stellen komplexe technische Herausforderungen an Software-EntwicklerInnen. Bedeutung von Middleware-Plattformen. Klassifikation von Technologien für verteiltes Programmieren: Internet Protokolle, Standards, Middleware, Frameworks. Message Passing versus SBC. Zuverlässige Kommunikation basierend auf gemeinsamen Objekten ("Virtual Shared Memory"). Software-Fehlertoleranz durch Replikation. Java Spaces & API. Extensible Virtual Shared Memory & API. Relevanz von SBC für GRID Computing und heutige Internet-Technologien. Bsp: P2P Datenbankreplikation. Praktische Erfahrung im Design und in der Erstellung von fehlertoleranten, verteilten P2P Anwendungen: Laborübung: Lösen von Aufgabenstellungen für ein verteiltes System Java: Concurrency Control, sichere Kommunikation, on/off-line Modus, Name-Services, event-basierte Notifikation, Skalierbarkeit und Caching. Didaktikkonzept: Die LV besteht aus einem Theorieteil mit einer schriftlichen Prüfung über den Vorlesungsstoff und einem praktischen Übungsteil. Die Laborübung wird in 2er-Gruppen absolviert und beinhaltet Programmieraufgaben, die mithilfe unterschiedlicher Middleware-Systeme gelöst werden sollen. Als Programmiersprachen stehen Java und C# zur Verfügung. Neben der eigentlichen Implementierung sollen die verwendeten Technologien auch miteinander verglichen und bewertet werden. Die Lösungen werden im Rahmen von Feedback- und Abgabeterminen präsentiert. Homepage: http://www.complang.tuwien.ac.at/eva/.

Weitere Informationen

ECTS Breakdown:

6 ECTS = 150 Stunden

Stunden / Inhalt:

  •  14 / Vorlesung Anwesenheit 
  •   1 / Prüfung
  •  17 / Prüfungsvorbereitung
  •   6 / Vorbereitung Abschlusspräsentation
  •   1 / Abgabegespräche
  • 111 / Ausarbeitung der Übungsbeispiele


Für Vorbesprechungstermine, Vorlesungstermine, weitere Informationen siehe http://www.complang.tuwien.ac.at/eva.

Vortragende

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Di.13:00 - 16:0013.03.2018EI 3 Sahulka HS Vorlesung
Di.13:00 - 16:0020.03.2018EI 3 Sahulka HS Vorlesung
Di.13:00 - 16:0003.04.2018EI 3 Sahulka HS Ersatztermin (entfällt)
Di.13:00 - 16:0017.04.2018EI 3 Sahulka HS Vorlesung
Di.13:00 - 16:0024.04.2018EI 3 Sahulka HS Vorlesung
Di.13:00 - 16:0008.05.2018EI 3 Sahulka HS Prüfungstermin
Di.13:00 - 16:0012.06.2018EI 3 Sahulka HS Ersatztermin
Di.16:00 - 18:0019.06.2018EI 3 Sahulka HS Abschlußpräsentation
Di.13:00 - 16:0026.06.2018EI 3 Sahulka HS Prüfungstermin

LVA-Anmeldung

Von Bis Abmeldung bis
28.01.2018 00:00 30.04.2018 00:00 30.04.2018 00:00

Anmeldemodalitäten:

Anmeldung

Curricula

Literatur

Es wird kein Skriptum zur Lehrveranstaltung angeboten.

Vorkenntnisse

* Programmierkenntnisse in Java * Verteilte Systeme VO * Verteilte Systeme LU

Sprache

Deutsch