Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

Verteilte Systeme (VS) - Übung (SS 2021)

Weitere Details zum Ablauf von Verteilte Systeme im Corona-Modus finden sich auf dieser Informationsseite.

Inhalt der Übungen

Im Rahmen der ersten drei Übungsaufgaben wird ein plattformunabhängiges Fernaufrufsystem schrittweise entwickelt und parallel dazu getestet. Als Vorlage und Orientierungshilfe dient dabei das in der Praxis weit verbreitete Java RMI. In den weiteren Übungsaufgaben stehen klassische Problemstellungen von verteilten Systemen wie fehlertolerante Replikation und verteilte Synchronisation im Mittelpunkt.

Die Bearbeitung der Übungsaufgaben erfolgt in Gruppen und überwiegend in der Programmiersprache Java. Für die erfolgreiche Abgabe einer Aufgabe ist es erforderlich, die eigene Implementierung einem Übungsleiter zu präsentieren.

Übungsbetrieb

Zur jeder Übungsaufgabe werden zu Beginn des Bearbeitungszeitraums Videos und die dazugehörigen Foliensätze veröffentlicht, in denen die Aufgabe vorgestellt wird, sowie relevante Hintergründe näher beleuchtet. Die Bearbeitung der Übungsaufgaben erfolgt in 3er-Gruppen, für die Zusammenarbeit sind keine persönlichen Treffen notwendig.

Bei Fragen zu den Übungen stellt diese über eine der dafür eingerichteten Mailinglisten oder schaut in unserer virtuellen Rechnerübung vorbei.

Eine ausführlichere Beschreibung des Übungsablaufs im Corona-Modus findet sich auf dieser Informationsseite.

Übungsmaterialien

Für die Übungsaufgaben werden Vorgaben und Hilfen im Verzeichnis /proj/i4vs/pub bereitgestellt.

Es ist empfehlenswert, die jeweilige Aufgabenstellung vor der Bearbeitung einer Aufgabe vollständig zu lesen, um von Beginn an einen Überblick über das zu erstellende System zu haben.

Hinweis: Dieser Plan ist vorläufig. Änderungen können sich noch vor oder während des laufenden Semesters ergeben.

Organisation / Grundlagen
Live-Konferenz am 15.04.2021, 12:15 - 13:45 Uhr

Thema Folien Video Aufgabenblatt
Organisatorisches
Versionsverwaltung mit Git*
Git in Eclipse*
Java - Collections / Threads*
Verteilte Ausführung*
* Die Grundlagenvideos und -folien sind aus der Veranstaltung Middleware aus dem Wintersemester 2020/21

Hinweise:
  • Hier wird es zusätzliche Hinweise zur jeweiligen Übungsaufgabe und deren Abgabe geben
  • Die Aufgabestellung sollte vor Bearbeitung einer Aufgabe vollständig gelesen werden, um von Beginn an einen Überblick über das zu erstellende System zu haben.

Aufgabe 1: Java RMI
Bearbeitungszeitraum: 19.04.2021 - 04.05.2021

Thema Folien Video Aufgabenblatt
Aufgabe 1: Java RMI
Java Remote Method Invocation
Marshalling und Unmarshalling
Hinweis:
  • Dienste und Clients müssen bei der Abgabe auf verschiedenen Rechnern laufen

Aufgabe 2: Stubs & Skeletons
Bearbeitungszeitraum: 03.05.2021 - 18.05.2021

Thema Folien Video Aufgabenblatt
Aufgabe 2: Stubs & Skeletons
Java Reflection API
Stubs & Skeletons
Rückrufe
Evaluation von Systemen
Hinweise:
  • Dienste und Clients müssen bei der Abgabe auf verschiedenen Rechnern laufen
  • Eine Methode besitzt mehrere Parameter und einen Rückgabewert

Aufgabe 3: Fernaufrufsemantiken
Bearbeitungszeitraum: 17.05.2021 - 01.06.2021

Aufgabe 4: Papierdiskussion
Bearbeitungszeitraum: 31.05.2021 - 15.06.2021

Aufgabe 5: Replikation
Bearbeitungszeitraum: 14.06.2021 - 29.06.2021

Aufgabe 6: Verteilte Synchronisation
Bearbeitungszeitraum: 28.06.2021 - 13.07.2021

Fragen zur Prüfung, Besprechung der Evaluation
Live-Konferenz am 15.07.2021, 12:15 - 13:45 Uhr