08.12.2012 Aufrufe

2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...

2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...

2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

mittels 'plain HTML' oder durch Ruby-Methoden codiert, die das View-Modul von Ruby on<br />

Rails zur Verfügung stellt und die beim Rendern des jeweiligen Templates zu HTML-Code<br />

ausgewertet werden. Schließlich betrifft die dritte Richtlinie den dynamischen Inhalt, der von<br />

solchen UI-Eigenschaften dargestellt werden soll und der auf Modellebene über den jeweils<br />

zugrunde liegenden Navigationsknoten spezifiziert wird. In Rails werden diese Inhalte durch<br />

Rückgriff auf Instanzvariablen implementiert, die im Controller mit geeigneten<br />

Modellobjekten besetzt wurden und danach in dem zu rendernden Template zur Verfügung<br />

stehen. (Dieser Punkt wurde schon im Abschnitt über die Umsetzung des Navigationsmodells<br />

angesprochen.)<br />

Die Wahl des HTML-Elements, mit Hilfe dessen eine <strong>UWE</strong>-UI-Element implementiert wird,<br />

ist durch die <strong>UWE</strong>-Semantik häufig nicht eindeutig vorgegeben – manchmal kommen<br />

mehrere HTML-Elemente in Frage, welche die Semantik des Modellelements angemessen<br />

realisieren. Dies ist z.B. bei «selection»-Elementen der Fall, mit denen eine<br />

Auswahlmöglichkeit des Benutzers zwischen verschiedenen Werten modelliert wird 72 . Die<br />

Vorkommen dieses Stereotyps in der PVS-Präsentationsmodellierung wurden auf<br />

verschiedene Arten umgesetzt: Bei einer größeren Zahl an Auswahlmöglichkeiten, z.B. bei<br />

der Selektion der Suchparameter im erweiterten Suchmodus, wurde ein (HTML-)-<br />

Element verwendet. Standen nur einige wenige Werte zur Auswahl (wie z.B. bei der Auswahl<br />

der Publikationstext-Option im Publikationsformular: Angabe einer URL, Dateiupload oder<br />

keine der beiden Optionen), so kamen Radiobuttons zum Einsatz. Eine einfache 'Ja-nein'-<br />

Entscheidungsmöglichkeit schließlich wurde mit Hilfe einer Checkbox realisiert. Usability-<br />

Überlegungen gaben in diesen und ähnlichen Situationen den Ausschlag für die Wahl einer<br />

bestimmten Implementierungsvariante.<br />

Im Folgenden soll an zwei kurzen Code-Ausschnitten beispielhaft illustriert werden, wie bei<br />

der Umsetzung des Präsentationsmodells vorgegangen wurde, und welche Rails-Konstrukte<br />

dabei eingesetzt wurden.<br />

Das erste Beispiel betrifft die Implementierung eines Layouts für die <strong>Web</strong>seiten des PVS.<br />

Häufig sollen bestimmte UI-Elemente auf jeder Seite eines <strong>Web</strong>systems angezeigt werden.<br />

Während sich der Inhalt der Hauptregion der <strong>Web</strong>oberfläche in Abhängigkeit von<br />

Benutzeraktivitäten ändert, ist es z.B. sinnvoll, eine Navigationsleiste immer anzuzeigen,<br />

damit der Benutzer stets alle wichtigen Navigationsmöglichkeiten der Anwendung aufrufen<br />

kann. In <strong>UWE</strong> wird ein solches Seitenlayout mit Hilfe eines<br />

«presentationAlternatives»-Elements realisiert, das neben den festen Layout-<br />

Komponenten in eine «presentationPage» eingebettet ist (siehe Abbildung 51 auf der<br />

nächsten Seite).<br />

72 Siehe dazu auch [23], S. 18<br />

86

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!