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

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Web</strong>formular oder eine Suchfunktionalität, bei der die Suchparameter vom Benutzer aus einer<br />

sich über die Zeit verändernden Menge frei ausgewählt werden können. Die serverseitige<br />

Formularvalidierung samt feldbezogener Anzeige der Validierungsfehler passt zwar nicht<br />

ganz in diese Kategorie, da sie bei der Entwicklung datenbankbasierter <strong>Web</strong>anwendungen<br />

schon zum Standard gehört; aber dennoch kann sie in ähnlichem Maße als Prüfstein für <strong>UWE</strong><br />

dienen, da sie bisher in <strong>UWE</strong>-Modellierungen noch nicht zu finden war und insofern neues<br />

'Modellierungsmaterial' darstellt, an dem sich <strong>UWE</strong> bewähren kann.<br />

In unseren Augen kann Erfolg vermeldet werden - auch auf 'unbekanntem Terrain' konnte<br />

<strong>UWE</strong> überzeugen. Wie in dem entsprechenden Abschnitten vermerkt, gab es hier und da<br />

gewisse Schwierigkeiten beim Versuch, unter Ausschöpfung aller formaler Mittel eine<br />

möglichst präzise Modellierung zu erreichen. Doch häufig betraf dies nur technische Details.<br />

Alles in allem konnten auch für die ungewöhnlicheren der zu modellierenden Funktionalitäten<br />

und Merkmale ausdrucksstarke Modelle erstellt werden.<br />

Drei Aspekte und Charakteristika von <strong>UWE</strong> seien genannt, die uns in diesem Kontext<br />

besonders positiv aufgefallen sind: erstens sind dies einige Sprachkonstrukte, die im aktuellen<br />

<strong>UWE</strong>-Profil 1.8 (im Gegensatz zu der alten 1.7-Version) neu hinzugekommen sind. Dazu<br />

zählen z.B. diverse Tagged Values von Stereotypen im Navigationsmodell (wie z.B. guard<br />

oder selectionExpression für «link») und im Präsentationsmodell (wie z.B.<br />

visibilityCondition für «uiElement» oder valueExpression für<br />

«valuedElement»). Sie erlauben es dem Modellierer, gezielt Zusatzinformationen für<br />

einzelne Modellelemente zu spezifizieren (z.B. wann ein Link durchlaufen werden darf oder<br />

unter welchen Bedingungen ein UI-Element angezeigt werden soll), die oftmals intuitiv klar<br />

sind und deswegen nicht extra angegeben werden müssen – manchmal aber eben auch nicht<br />

(oder nicht beim ersten Betrachten des Modells). Und gerade für solche Stellen im Modell,<br />

die in dieser Hinsicht nicht ganz eindeutig sind, sind diese Sprachkonstrukte extrem hilfreich.<br />

Zweitens hat sich gezeigt, dass die <strong>UWE</strong>-Modellierungssprache über 'natürliches'<br />

Erweiterungspotential verfügt, um ihre Ausdrucksstärke zu erhöhen. Damit beziehen wir uns<br />

speziell auf die Definition der Semantik für Vererbungshierarchien im Navigations-, Prozess-<br />

und Präsentationsmodell. Es ist klar, dass in diesen Modellen Generalisierung als klassisches<br />

<strong>UML</strong>-Konstrukt verfügbar ist. Nicht ganz so klar war allerdings, dass dessen Semantik für<br />

den Einsatz in diesen Modellen so natürlich definiert werden konnte, ohne neue<br />

Sprachkonstrukte einführen zu müssen.<br />

Drittens hat sich <strong>UWE</strong> bisweilen als flexibel genug erwiesen, um in Anbetracht der konkreten<br />

Erfordernisse jeweils angemessene 'Ersatzkonstrukte' für die Modellierung zur Verfügung zu<br />

stellen. Als Beispiel für diese Flexibilität kann die Modellierung der Suchfunktionalität im<br />

PVS dienen. Dass das übliche Sprachelement für die Modellierung einer <strong>Web</strong>suche (ein<br />

«query»-Knoten) nicht ausreichte, um die Komplexität der Suchbedingungen angemessen<br />

zu beschreiben, stellte kein Hindernis dar – die beiden Recherche-Varianten wurden<br />

stattdessen als Prozesse modelliert, deren Workflow-Aktivitäten für die hinreichend genaue<br />

Beschreibung des jeweiligen Suchvorgangs vollkommen ausreichten. Hier zahlt es sich<br />

übrigens auch aus, wenn ein Modellierungsansatz auf der <strong>UML</strong> aufbaut und die gesamte<br />

Ausdruckskraft der Lingua Franca der objektorientierten Software-Entwicklung nutzen kann.<br />

4.7.2 Verständlichkeit<br />

Verständlichkeit ist das Kriterium, dessen Beurteilung uns mit Abstand am schwersten fiel.<br />

Dafür gibt es drei Gründe. Zunächst ist der Begriff der Verständlichkeit notwendigerweise<br />

43

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!