Übung
Inhalt
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.
Übungsbetrieb
Zur jeder Übungsaufgabe werden zu Beginn des Bearbeitungszeitraums Videos und die dazugehörigen Foliensätze veröffentlicht, in denen die Aufgabe vorgestellt sowie relevante Hintergründe näher beleuchtet werden. Die Bearbeitung der Übungsaufgaben erfolgt in 3er-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.
Nr. | Titel | Ausgabe | Abgabe |
---|---|---|---|
0 | Grundlagen (freiwillig) | - | - |
1 | Java RMI | 17.04. | 03.05. |
2 | Stubs & Skeletons | 01.05. | 24.05. |
3 | Fernaufrufsemantiken | 22.05. | 07.06. |
4 | Papierdiskussion | 07.06. | 21.06. |
5 | Replikation | 19.06. | 05.07. |
6 | Verteilte Synchronisation | 03.07. | 19.07. |
Für die digitalen Rechnerübungen wird die Online-Warteschlange Adora Belle verwendet, die hier erreicht werden kann.
Materialien
Für die Übungsaufgaben werden Vorgaben und Hilfen im Verzeichnis /proj/i4vs/pub
(erreichbar über den Informatik-CIP) 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.
Aufgabe 0: Organisation / Grundlagen
Hinweise
- Das Aufgabenblatt 0 ist kein verpflichtender Teil des Übungsbetriebs, die Bearbeitung wird aber als Vorbereitung auf die Veranstaltung empfohlen.
- Aufgabe 0 ist im Gegensatz zu den späteren Übungsaufgaben als Einzelaufgabe konzipiert.
Materialien
Thema | Video | Foliensatz | Aufgabenblatt |
---|---|---|---|
Organisatorisches | Folgt in Kürze | ||
Grundlagen (kumulierter Foliensatz) | |||
Java -- Collections/Threads | Video | ||
Verteilte Ausführung | Video | ||
Versionsverwaltung mit Git | Video | ||
Git in Eclipse | Video |