|
|
 |
 |
Betriebssystemtechnik (OSE) - SS 2005
Aufgabe 4: Domänenentwurf
In dieser Aufgabe soll die Implementierung der Programmfamilie
weitgehend geplant werden. Ergebnis des Domänenentwurfs soll eine Referenzarchitektur sein, beschrieben durch geeignete Hilfsmittel wie Klassendiagramme und Spezifikation der wichtigsten Schnittstellen. Beim Domänenentwurf wird auch festgelegt, welche Features aus der Analyse tatsächlich implementiert werden sollen.
| Ausgabetermin |
Vorgabe |
(spätester) Abgabetermin |
| 19.05.2005 |
-- |
30.05.2005 (Teil 1: Belanghierachie)
02.06.2005 (Teil 2: Vollständige Referenzarchitektur) |
Lernziele
- Umgang mit Belanghierachien
- Ein Gefühl für funktionale Abhängigkeiten bekommen
- Anwenden des "Prinzip der minimalen Ergänzung"
- Anwenden der aus der Vorlesung bekannten Entwurfstechniken für BS-Produktlinien
Bearbeitung und Abgabe
Die Bearbeitung erfolgt wieder in der Gruppe. Damit es diesmal etwas besser läuft als bei der Domänenanalyse habe ich beschlossen die Aufgabe in 2 Teile zu zerlegen:
Teil 1: Erstellen einer Belanghierachie
Wie in der Übung am 19.5. gezeigt, sollt ihr zunächst eine Belanghierachie des jeweiligen Subsystems erstellen. Belanghierachien wurden in der Vorlesung behandelt. Sie zeigen
die zu implementierenden "Funktionen" (nicht im Sinne von C/C++,
sondern allgemein) und deren Abhängigkeiten. Die Struktur ist per
Definition nicht zyklisch, meistens ein Baum. Wenn doch zyklische
Beziehungen zwischen den identifizierten Funktionen auftauchen, hilft
meist Verfeinerung und das Bilden eines "Sandwiches" (siehe Vorlesungsfolien).
Die Belanghierarchie wird schrittweise verfeinert, bis die
Implementierung jeder Funktion durch eine oder wenige Klassen, Aspekte oder C
Funktionen realisitisch erscheint.
Für die Abgabe erwarte ich ein PDF Dokument mit der funktionalen
Hierachie, wobei man die Verfeinerungen komplexer Funktionen in separate
Bilder auslagern kann. Die Funktionen sollten kurze Namen haben und
nachfolgend in wenigen Sätzen erläutert werden.
Idealerweise hängt fügt ihr die Ergebnisse des Entwurfs als neues Hauptkapitel dem Analysedokument hinzu. Falls ihr jedoch in den letzten Wochen zu dem Schluss gekommen seit, dass LyX, LaTeX und Konsorten einfach nix für euch ist, dann könnt ihr auch gerne ein anderes Tool nehmen und den Entwurf als eigenes PDF einchecken (unter demselben Namen mit einem angehängten -design).
Die Abgabe von Teil 1 erfolgt gruppenweise zusammen mit der Abgabe von Aufgabe 3, die ja um eine Woche verlängert worden war. Bei der Gelegenheit könnt ihr dann eure Belanghierachie mit mir diskutieren. Es ist nicht erforderlich, dass die jeweiligen Gruppen in Vollbesetzung erscheinen, die Abgabe kann auch stellvertretend durch ein Mitglied der Gruppe erfolgen. Da am 26.5. Feiertag ist und ich am 27.5. nicht da bin, ist der späteste Abgabetermin Montag, der 30.5. 17:00. Bedenkt aber bitte, dass auch für Teil 2 dann noch einiges zu tun sein wird, daher empfehle ich dringend die Abgabe von Teil 1 bis Mittwoch den 25.5 (ich bin bis ca. 18:00 da).
Teil 2: Erstellen der Referenzarchitektur
Im nächsten Schritt sollt ihr dann aus der Belanghierachie die Modulstruktur (bestehend aus Klassen und Aspekten) für eure jeweilige Teildomäne herleiten und spezifizieren. Näheres zur Vorgehensweise dabei erfahrt ihr in der Vorlesung am 23.5.
Für die Abgabe soll das PDF-Dokument aus Teil 1 um eine Beschreibung der Architektur ergänzt werden. Dabei sollen die Beziehungen zwischen den einzelnen Modulen (Klassen und Aspekte) über UML-Diagramme dargestellt werden und textuell erläutert werden. Dazu gehört auch eine Aufstellung der jeweils angebotenen Methoden und ihrer Signatur.
Des weiteren soll jede Gruppe auflisten, was sie an Funktionalität von den anderen Gruppen braucht.
Die Abgabe von Teil 2 erfolgt elektronisch (durch einchecken) bis spätestens Donnerstag, 2.6. 16:00. Um die Koordination zwischen den Gruppen zu erleichtern ist es jedoch erforderlich, dass früh und oft eingecheckt wird. Also bitte nicht bis zum Abgabtermin warten mit der ersten Version!
|
 |
 |
|