2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Abbildung 13: Ausschnitt aus dem Prozessstruktur-Modell<br />
Die Klassen EditPublication und CreatePublication repräsentieren die beiden<br />
Geschäftsprozesse des Editierens einer bereits persistierten bzw. des Hinzufügens einer neuen<br />
Publikation. Sie sind in das Navigationsmodell des PVS integriert (siehe Abbildung 10) und<br />
dienen dort als Einstiegspunkte in den jeweiligen Prozess. Die Definition und Verwaltung der<br />
Daten, welche der Benutzer mit der Anwendung über die <strong>Web</strong>oberfläche austauscht, ist in<br />
verschiedene 'DataInput'-Klassen ausgelagert worden (die in heller Farbe markierten Klassen<br />
im Diagramm). Die beiden Hauptprozessklassen aggregieren über die abstrakte Klasse<br />
PublicationFormProcess zunächst die Klasse PublicationDataInput, welche<br />
für rein 'publikationsspezifische' Daten verantwortlich ist. Diese Klasse ist die Superklasse<br />
einer Vererbungshierarchie, die sich in analoger Form schon im Inhalts- und<br />
Navigationsmodell findet: Für jeden Publikationstyp sollen gemäß Bedingung 2) teilweise<br />
unterschiedliche Daten im Formular angegeben werden können, und dementsprechend muss<br />
die Datengrundlage des Formulars entsprechend flexibel gestaltet werden: Für jeden<br />
Publikationtyp existiert eine entsprechende DataInput-Subklasse mit typspezifischen<br />
Prozesseigenschaften.<br />
Die 'zweite' Ebene des geschachtelten <strong>Web</strong>formulars (Bedingung 1) wird auf<br />
Prozessstrukturebene durch die Klassen TagDataInput und PersonDataInput<br />
repräsentiert. Sie definieren die Daten, welche für Autoren, Editoren und zusätzliche Tags<br />
angegeben werden können und sind über Aggregationsbeziehungen mit der<br />
PublicationDataInput-Klassenhierarchie verbunden. Für den Datenaustausch mit dem<br />
Benutzer über das UI-Formular ist also nicht nur eine einzelne Klasse<br />
(PublicationDataInput), sondern ein ganzes Aggregat von Prozessklassen zuständig.<br />
Bei der Festlegung der Aggregationen wurde berücksichtigt, dass die Angabe von<br />
Personendaten für Autoren und Editoren einer Publikation nur für bestimmte<br />
Publikationstypen möglich sein soll. Nur PublicationDataInput-Subklassen, die von<br />
AuthorPublictionDataInput bzw. EditorPublicationDataInput erben,<br />
besitzen eine entsprechende Aggregationsbeziehung zu PersonDataInput.<br />
34