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.
2.2 Der <strong>UWE</strong>-Entwicklungsprozess für <strong>Web</strong>-Systeme<br />
Der von <strong>UWE</strong> vorgeschlagene Prozess für die <strong>Web</strong>-Entwicklung hat den Anspruch, den<br />
gesamten Entwicklungszyklus eines <strong>Web</strong>systems abzudecken 3 . Im Folgenden soll dieser<br />
Prozess samt den vorgeschlagenen Modellierungstechniken und Notationen vorgestellt<br />
werden, allerdings mit einer deutlichen Akzentuierung derjenigen Phasen des Prozesses, die<br />
bei der Entwicklung des Publikationsverwaltungssystems tatsächlich durchlaufen wurden.<br />
Demzufolge wird besonderes Augenmerk auf die für <strong>UWE</strong> typische Vorgehensweise bei der<br />
Anforderungsanalyse und beim plattformunabhängigen Systementwurf einer <strong>Web</strong>anwendung<br />
gelegt 4 .<br />
2.2.1 Separation of Concerns<br />
Ein zentrales Prinzip der <strong>UWE</strong>-Methodologie beim Entwurf eines <strong>Web</strong>systems ist der<br />
Grundsatz der 'Separation of Concerns', der 'Trennung der Verantwortungsbereiche'. Für jeden<br />
Verantwortungsbereich ergibt sich ein spezifischer Blickwinkel, unter dem eine webbasierte<br />
Anwendung betrachtet werden kann. Jeder dieser Blickwinkel wird in einem eigenen<br />
(Teil-)Modell unter Verwendung <strong>UWE</strong>-spezifischer Modellelemente erfasst.<br />
Aufbauend auf einer detaillierten Anforderungsanalyse beginnt die Modellierung der<br />
Anwendung mit einer inhaltlichen Analyse, um im sogenannten Inhaltsmodell die zentralen<br />
Konzepte der Anwendungsdomäne und deren Beziehungen zueinander zu erfassen. Darauf<br />
aufbauend wird im Navigationsmodell die Navigationsstruktur der Anwendung festgelegt, um<br />
die Möglichkeiten des Benutzers zur Navigation zwischen verschiedenen<br />
Informationseinheiten anzugeben. Häufig erlaubt eine Anwendung dem Benutzer an<br />
bestimmten Stellen die Eingabe von Daten, die auf Serverseite im Rahmen von<br />
automatisierten Prozessen verarbeitet werden. Solche in der Regel transaktionsbasierten<br />
Vorgänge sind im Prozessmodell gesondert zu betrachten, zudem müssen Ein- und<br />
Austrittspunkte dieser Prozesse in die Navigationsstruktur des <strong>Web</strong>systems eingeflochten<br />
werden. Schließlich erfolgt im Präsentationsmodell eine abstrakte Festlegung des <strong>Web</strong>-<br />
Benutzerschnittstelle.<br />
Naturgemäß ist jeder dieser Bereiche der Anwendung mit einem Abstraktionsgrad zu<br />
modellieren, der die Plattformunabhängigkeit der Modelle garantiert. Gerade im Bereich der<br />
<strong>Web</strong>entwicklung ist eine rasante Entwicklung immer neuer Technologien und Frameworks zu<br />
beobachten, weshalb es wichtig ist, einen Systementwurf zu gewinnen, der unabhängig von<br />
Implementierungsdetails ist und somit als Ausgangspunkt für die Realisierung mit einer<br />
beliebigen Technologie dienen kann.<br />
Die <strong>UWE</strong>-Erweiterung des <strong>UML</strong>-Metamodells besteht im Wesentlichen darin, ein Top-Level-<br />
Paket 'Core' hinzuzufügen, dessen Paketstruktur sich aus der Umsetzung des Prinzips der<br />
'Seperation of Concerns' ergibt. Für jedes der oben aufgeführten Modelle sowie für das<br />
Anforderungsmodell wird ein Unterpaket definiert. Abbildung 1 (siehe nächste Seite) stellt<br />
die Abhängigkeiten dar, die zwischen diesen Unterpaketen bestehen 5 .<br />
3 [18], S.161<br />
4 Für eine ausführlichere Darstellung als die folgende, in der der <strong>UWE</strong>-Entwicklungsprozess auch anhand<br />
eines Beispiels veranschaulicht wird, siehe [18]; eine detaillierte Beschreibung des <strong>UWE</strong>-Metamodells<br />
findet sich in [23].<br />
5 Diese Abbildung ist Abbildung 1 in [23], S. 5 nachempfunden.<br />
9