2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Knoten des Navigationsmodells verbunden sein, dessen Inhalt im Kontext der<br />
Präsentationsgruppe angezeigt wird. Valued Elements werden dagegen einerseits, wie z.B.<br />
Instanzen der (Meta-)Subklasse «text», als Ausgabe-Elemente zur Anzeige von Daten<br />
verwendet; andererseits dienen sie, wie z.B. «textInput», «anchor» oder «button»,<br />
zur Modellierung von Elementen der <strong>Web</strong>oberfläche, die dem Benutzer eine Interaktion mit<br />
dem <strong>Web</strong>system wie z.B. der Eingabe von Daten, dem Folgen eines Hyperlinks oder dem<br />
Abschicken eines <strong>Web</strong>formulars ermöglichen.<br />
Die Beziehung zwischen einer Präsentationsgruppe und den Präsentationselementen, die sie<br />
enthält, ist die der Komposition. Da eine Präsentationsgruppe nicht nur aus Valued Elements,<br />
sondern auch aus anderen Präsentationsgruppen zusammengesetzt sein kann, kann sich eine<br />
komplexe Baumstruktur ergeben, deren Blätter durch Valued Elements gegeben sind. Die<br />
Rolle der Wurzel eines solchen Baumes, die eine in sich abgeschlossene und vollständige<br />
<strong>Web</strong>seite repräsentiert, übernimmt in der Regel eine spezielle Präsentationsgruppe, die<br />
«page». Es liegt nahe, dass zur graphischen Darstellung solcher Präsentationsbäume ein<br />
<strong>UML</strong>-Kompositionsstrukturdiagramm verwendet wird.<br />
Liegt eine Schachtelung von Präsentationsgruppen vor, so bedeutet dies, dass die<br />
Navigationsknoten, die mit den jeweiligen Gruppen verknüpft sind, auf ein und derselben<br />
<strong>Web</strong>seite angezeigt werden. Sind zwei solcher Knoten im Navigationsmodell über<br />
Navigationslinks verbunden, so werden diese gewissermaßen automatisch durchlaufen, ohne<br />
dass der Benutzer dies explizit auslösen müsste. Möchte man dagegen, dass von mehreren<br />
Präsentationsgruppen, die sich auf derselben Baumebene befinden, stets nur eine angezeigt<br />
wird, so sind diese Präsentationsgruppen in einer «presentationAlternatives»-<br />
Klasse zu sammeln. Benutzerinteraktionen bestimmen in einer solchen Konstellation in der<br />
Regel, welche der Klassen zu einem bestimmten Zeitpunkt darzustellen ist.<br />
2.2.7 <strong>UWE</strong> und Model Driven Architecture<br />
Mit der Erstellung der in den letzten Abschnitten vorgestellten Modelle ist nur ein Teil des<br />
von <strong>UWE</strong> vorgeschlagenen modellgetriebenen Prozesses zur Entwicklung von<br />
<strong>Web</strong>anwendungen durchlaufen. Die weiteren Schritte dieses Prozesses, die über die<br />
plattformunabhängige Modellierung des zu entwickelnden Systems hinausgehen, dienen im<br />
Wesentlichen dem Zweck der (semi-)automatischen Generierung der Anwendung. Da die<br />
Aufgabenstellung vorsah, dass die plattformunabhängigen Modelle manuell implementiert<br />
werden sollten, verzichten wir im Folgenden auf eine detaillierte Vorstellung dieser Schritte<br />
und beschränken uns darauf, einen Überblick über den Gesamtprozess zu geben und die<br />
bereits behandelten Modelle in den Gesamtzusammenhang einzuordnen.<br />
Der <strong>UWE</strong>-Prozess zur systematischen und semi-automatischen Entwicklung von<br />
<strong>Web</strong>anwendungen basiert auf dem von der OMG formulierten Prozessmodell der<br />
modellgetriebenen Architektur (MDA). Kernaspekt dieses Ansatzes zur modellgetriebenen<br />
Softwareentwicklung ist die strikte Trennung der Spezifikation der Geschäftsfunktionalitäten<br />
und des Verhaltens eines Systems von der Plattform und den Technologien, welche zur<br />
Realisierung des Systems eingesetzt werden 8 . Zur Beschreibung der Funktionalitäten des zu<br />
entwickelnden Systems wird ein plattformunabhängiges Modell (PIM) erstellt. Dieses Modell<br />
enthält keinerlei technologische Details, welche die Implementierung betreffen. Ein PIM wird<br />
durch Modelltransformation in ein plattformspezifisches Modell (PSM) umgewandelt, in dem<br />
der abstrakten Spezifikation des Systemverhaltens plattformspezifische Informationen<br />
8 [34]<br />
13