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.

auftreten können, weil der Programmierer die Intentionen des Modellierers nicht vollständig<br />

erfasst, bleiben möglicherweise unentdeckt, wenn der System-'Designer' selbst die<br />

Realisierung seiner Modelle durchführt.<br />

Zweitens muss klar sein, dass im Rahmen dieser Arbeit nur die Umsetzbarkeit bzgl. eines<br />

bestimmten <strong>Web</strong>-Frameworks (Ruby on Rails in unserem Fall) bewertet werden konnte.<br />

Darüber, wie gut <strong>UWE</strong> mit anderen Implementierungstechnologien zusammenspielt, müssen<br />

andere Fallstudien Aufschluss geben.<br />

Drittens wird keine Evaluierung der Umsetzbarkeit der RIA-Modellierung erfolgen, aus dem<br />

einfachen Grund, weil sie schon in Kapitel 5.1 vorweggenommen wurde. Diese Kritik betraf<br />

die Umsetzbarkeit der RIA-Modelle, die mit den 'alten' Modellierungstechniken für RIAs<br />

erstellt wurden. Die Verbesserungsvorschläge, die wir daraufhin unterbreitet haben, können<br />

als direktes Resultat der Evaluation des ursprünglichen Ansatzes betrachtet werden. Wir sind<br />

natürlich der Meinung, dass mit dem erweiterten Ansatz, den wir vorgeschlagen haben, die<br />

Probleme, die wir bei der ursprünglichen Version ausgemacht haben, beseitigt sind. Doch für<br />

eine Validierung dieser These sind neue Praxistests notwendig, die PVS-Fallstudie konnte nur<br />

zur Bewertung des alten Ansatzes dienen.<br />

Nach dieser zugegebenermaßen langen Vorrede nun zur Bewertung:<br />

Das <strong>UWE</strong>-Inhalts- und Präsentationsmodell wurden in ihren plattformspezifischen<br />

Entsprechungen der Rails-Architektur, dem Modell- und der View-Komponente, umgesetzt.<br />

Bei der Implementierung des Inhaltsmodells gab es zwar, wie schon ausführlich dargelegt,<br />

Komplikationen bei der Abbildung der Publikations-Vererbungshierarchie auf<br />

Datenbankebene, die uns zu nicht unwesentlichen Modifikationen des Modells zwangen. Aber<br />

diese Schwierigkeiten können kaum <strong>UWE</strong> als dem verwendeten Modellierungsansatz<br />

angelastet werden. Verantwortlich war vielmehr die in Rails integrierte Persistenzschicht: Für<br />

unseren Geschmack bewirkt das ActiveRecord-Modul von Rails einfach eine zu starke<br />

Koppelung von Objekt- und Persistenzebene.<br />

Die Realisierung des Präsentationsmodells können wir als reibungslos beschreiben. Die<br />

<strong>Web</strong>oberfläche des PVS konnte ohne Probleme so realisiert werden, dass alle Modellvorgaben<br />

bzgl. der Struktur der <strong>Web</strong>seiten und ihrer dynamischen Inhalte eingehalten wurden.<br />

Allerdings war hier auch am meisten 'eigenständige' Arbeit zu leisten, die über die Umsetzung<br />

der im Modell spezifizierten Informationen hinausging, da in der <strong>UWE</strong>-Methodologie eine<br />

detaillierte Spezifikation des Erscheinungsbilds von <strong>Web</strong>seiten nicht vorgesehen ist.<br />

Am wenigsten geradlinig verlief die Realisierung von Navigations- und Prozessmodell. Dies<br />

liegt daran, dass bei der <strong>UWE</strong>-Modellierung der Navigationsstruktur eines <strong>Web</strong>systems keine<br />

expliziten Angaben darüber gemacht werden, an welchen Stellen ein HTTP-Request zu<br />

lancieren ist, der auf Serverseite der Anwendung zu verarbeiten ist. Gerade diese<br />

Informationen werden aber für die Implementierung der Rails-Controller-Klassen benötigt.<br />

Zwar finden sich diese Informationen durchaus im Navigationsmodell, allerdings müssen sie<br />

etwas mühsam extrahiert werden: Hierzu haben wir im entsprechenden Abschnitt über die<br />

Umsetzung (Kapitel 7.3.2) einige Regeln formuliert, mit denen Navigationslinks identifiziert<br />

werden können, deren Durchlaufen keinen HTTP-Request impliziert, der von einer<br />

Controller-Action verarbeitet werden muss. Diese Regeln mögen trivial erscheinen, und bei<br />

der Implementierung des PVS haben wir sie sicher nicht bewusst angewendet: Dies war<br />

schlichtweg nicht nötig, da wir das gesamte System ja selbst entworfen hatten und daher<br />

wussten, für welche Übergänge eine eigene Action benötigt wird. Einem Software-Entwickler,<br />

dem die <strong>UWE</strong>-Modelle zur Implementierung vorgelegt werden, bleibt aber nichts anderes<br />

übrig, als durch Anwendung dieser Regeln die Request-Response-Struktur der Anwendung zu<br />

erfassen. In diesem Zusammenhang ist es besonders wichtig, dass bei der Modellierung nicht<br />

92

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!