3 Konfigurationsmöglichkeiten von Software
3.2.3.1 GenVoca
Die GenVoca Methode entstand 1988 aus den beiden Projekten Genesis und Avoca von Don
Batory und O’Malley, die sich mit der Anwendung von Data Container Libraries beschäftigten.
Im Bereich der Generativen Programmierung wird GenVoca als formale Beschreibung
von Schichtenarchitekturen und Grammatik für die Entwicklung eines Generators zum Austausch
von Komponenten mit gleicher Schnittstelle verwendet, und fokussiert ebenso Wiederverwendung
und Systemfamilien. Ein Generator hat das Ziel, Softwaresysteme automatisch
zu erstellen. Don Batory dazu: „Given a GenVoca model, we can create a family of applications
by composing features”97.
Er schließt die Lücke zwischen der Systembeschreibung und der Implementierung des Systems,
und muss spezifische Anforderungen an Geschwindigkeit, Speicherbelegung, Ressourcenverwaltung
etc. erfüllen. GenVoca löst das Problem der Erstellung eines Generators mittels
eines kompositionellen Ansatzes als Schichten-orientiertes Modell. Jeder abstrakte Datentyp
oder eine Eigenschaft wird in einer eigenen Schicht dargestellt. Jede Schicht enthält dabei
eine Anzahl von Klassen, die die untergeordnete Schicht weiter mit Klassen und Methoden
verfeinern. Die Klassen verdeutlichen parametrisierbare Komponenten, die sich aus Komponentensicht
in einer Baumstruktur darstellen lassen. Das Konfigurationswissen aus der Domänenanalyse
wird dabei Schicht für Schicht weiter getragen98.
Ein fertiger Generator muss
im Bereich der Systemfamilienentwicklung eine Anforderungsspezifikation prüfen, vervollständigen,
optimieren und die Implementierung generieren. Dies können fertige Softwareprodukte
und ebenso Halbprodukte sein99.
Ein beispielhafter Ausschnitt verdeutlicht dies:100
Die Komponenten einer Schicht werden in einer Kategorie (realm) zusammengefasst. Eine
Kategorie kann so als eine Bibliothek von austauschbaren Komponenten verstanden werden,
die über eine einheitliche Schnittstelle nach außen hin repräsentiert wird.
Über Parameter wird
dann der oberen Schicht übergeben, welche Komponente der untergeordneten Schicht bei der
Realisierung verwendet werden soll. Der Aufbau der Schichten und deren Kategorien wird in
eine kontextfreie GenVoca Grammatik überführt, die mit Hilfe der Komponentenkategorien
und Entwurfsregeln aus dem Konfigurationswissen besagt, welche Kombinationen an obligatorischen
oder wahlpflichtigen Teilen möglich sind. Jeder Ausdruck entlang der Grammatik
ist ein realisierbares Familienmitglied101.
Der in der Grammatik hinterlegte Aufbau wird mittels einer geeigneten Sprache als Templates
umgesetzt. Ein solcher entwickelter Generator kann nun alle Schichten Schritt für Schritt
durchlaufen und Mitglieder der beschriebenen Systemfamilie entwickeln.
Bewertung des GenVoca-Modells102
Vorteile
Nachteile
Tabelle 16: Bewertung des GenVoca-Modells
.
Top|
Home|
<< Zurück |
Nächste >>
" TARGET="_blank"> >> Home Page << |