Current Page: Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: m06 » Learning Units » Unit ID: 4_2_07
Last Modified:Tuesday, 2015-05-05 - 08:09:02
 
Tools: ValidatePreview XML Preview HTML Preview PDF
Alternative: Printable HTML

 

Learning Unit ID: 4_2_07
Title: Modellierung von Web-Anwendungen
Abstract: In dieser LU werden die Grundlagen der Modellierung von Web-Anwendungen erläutert. Zuerst werden die drei Dimensionen der Webmodellierung (Ebenen, Aspekte und Phasen) erläutert um anschliessend auf die Modellierung der verschiedenen Ebenen näher einzugehen. Abschließend werden die Kontextualitätsmodellierung sowie die verschiedenen Modellierungsmethoden präsentiert.
 
Status:

 

 

Version: 7.0
History:

acronyme done.

MH1 gecheckt.

Rechtschreibung gecheckt (LOD 1+2)

Unbekannte Character ersetzt.


Author
Author 1: Bernhard Tatzmann E-Mail: bernhard@isys.uni-klu.ac.at
Author 2: (empty) E-Mail: (empty)
Author 3: (empty) E-Mail: (empty)
Author 4: (empty) E-Mail: (empty)
Author 5: (empty) E-Mail: (empty)
Organization: Universität Klagenfurt - Institut für Informatik-Systeme

Content

Anforderungen an die Modellierung von Web-Anwendungen

1

Ebenen

  • Bei traditionellen Anwendungen wird üblicherweise zwischen den Ebenen Anwendungslogik und Benutzungsschnittstelle unterschieden.
  • Webanwendungen werden auf drei Ebenen modelliert:
    • Contentmodell:
      • Ähnelt dem konzeptuellen Modell einer traditionellen Anwendung
    • Hypertextmodell:
      • Stellt die Navigationsmöglichkeiten dar
    • Präsentationsmodell:
      • Bildet das Hypertextmodell auf Webseiten und Verlinkungen ab
  • Schichten müssen sich auf einander abbilden lassen.

Aspekte

(Modellierungs-) Aspekte:

  • Zweite Modellierungsdimension
  • Gibt an worauf bei der Modellierung besonders Wert gelegt wird
  • Man unterscheidet zwischen den beiden Aspekten Struktur und Verhalten

Phasen

Phasen des Entwicklungszyklus:

  • Dritte Modellierungsdimension
  • Man unterscheidet: Analyse, Entwurf und Implementierung
  • Es wird offen gelassen mit welcher der Ebenen begonnen wird

KPR04 PC

Dimensionen der Modellierung von Webanwendungen

KPR04 PDA_Phone

Dimensionen der Modellierung von Webanwendungen

2

Ebenen

Im Gegensatz zur Modellierung traditioneller Anwendungen, wo üblicherweise zwischen den beiden Ebenen Anwendungslogik und Benutzungsschnittstelle unterschieden wird, werden Webanwendungen auf drei Ebenen modelliert: Content, Hypertext und Präsentation. Das Contentmodell ähnelt dem konzeptuellen Modell einer traditionellen Anwendung, das Hypertextmodell stellt die Navigationsmöglichkeiten dar und das Präsentationsmodell bildet das Hypertextmodell auf Webseiten und Verlinkungen ab. Um die Vorteile einer solchen Trennung in Schichten voll ausnützen zu können, ist es nötig, dass sich die Schichten auf einander abbilden lassen. Dadurch wird es möglich, dass sich auf ein und dasselbe Contentmodell verschiedene Hypertextmodelle aufsetzen lassen.

Aspekte

Neben der Unterteilung der Modellierung in Ebenen existieren noch zwei weitere Dimensionen der Modellierung. Eine davon ist die der (Modellierungs-) Aspekte, die angibt worauf bei der Modellierung besonders Wert gelegt wird. In dieser Dimension unterscheidet man zwischen den beiden Aspekten Struktur und Verhalten, wobei besonders bei interaktiven Systemen gerade der Aspekt des Verhaltens stark ausgeprägt ist.

Phasen

Die dritte Dimension stellt die Phasen des Entwicklungszyklus dar, für die die Modellierung durchgeführt wird: Analyse, Entwurf und Implementierung. Dabei wird jedoch offen gelassen, mit welcher der Ebenen begonnen wird. Es ist sowohl ein Vorgehen vorstellbar, das mit der Modellierung des Inhalts beginnt, wie auch eines, das sich zunächst mit der Präsentationsebene beschäftigt.

Die folgende Abbildung zeigt die vorgestellten Dimensionen der Modellierung von Web-Anwendungen.

KPR04 PC

Dimensionen der Modellierung von Webanwendungen

KPR04 PDA_Phone

Dimensionen der Modellierung von Webanwendungen

Content-Modellierung

1

Auto

  • Ebene der Content-Modellierung ist der klassischen Datenmodellierung, von allen drei Ebenen am ähnlichsten.
  • Besonderer Schwerpunkt muss hier allerdings auf die Berücksichtigung der verschiedenen Medientypen gelegt werden.
  • Zu modellieren sind:
    • Statische Struktur des Contents (UML472 Klassendiagramme)
    • Zugehörige Verhaltensaspekte (UML472 Zustands- und Aktivitätsdiagramme)

2

Auto

Von den einzelnen Ebenen der Webmodellierung ist die Modellierung des Contents der klassischen Datenmodellierung am ähnlichsten. Analog zur klassischen Datenmodellierung müssen hier die Strukturen der zugrunde liegenden Daten beachtet werden. Im Gegensatz zur klassischen Datenmodellierung muss bei der Webmodellierung ein besonderer Schwerpunkt auf die Berücksichtigung der verschiedenen Medientypen der einzubeziehenden Dokumente gelegt werden.

Ziel der Contentmodellierung muss es also sein, sowohl die statische Struktur des Contents, als auch zugehörige Verhaltensaspekte zu modellieren. Beides lässt sich in Form von UML472 Diagrammen festhalten. Während die Struktur z.B. mit Hilfe von Klassendiagrammen dargestellt werden kann, können UML472 Zustands- und Aktivitätsdiagramme für die dynamischen Aspekte verwendet werden. In dieser Phase der Modellierung werden die Navigationsstruktur sowie der Präsentationsaspekt noch außer Acht gelassen.

Hypertextmodellierung

1

Auto

  • Ziel: Erstellung eines Hypertextstrukturmodells:
    • Dieses beschreibt Navigationsstruktur und besteht aus:
      • Knoten:
        • Stellen den Inhalt dar
        • Entsprechen den Objekten im Content-Modell
      • Verlinkungen:
        • Verbinden Knoten

 

  • Meist wird bei der Hypertextmodellierung nur die Struktur modelliert
  • Verhalten wird beim Entwurf eher selten berücksichtigt.
  • Zwei Vorgangsweisen zur Modellierung von Hypertextmodellen:
    • Struktur wird direkt vom Content-Modell abgeleitet
    • Modellierung auf der Grundlage der Anforderungen von Anwendungsfällen

Zugriffsmodellierung

Zugriffsstrukturen müssen ebenfalls modelliert werden.

Entwurfsmuster für Zugriffsstrukturen ("Navigations-Patterns"):

Index:
Zugriff auf Knoten der gleichen Klasse.
Menü:
Zugriff auf Knoten verschiedener Klassen.
Guided Tour:
Sequentielles durchlaufen mehrerer Knoten.
Query:
Suche eines bestimmten Knotens.
Home:
Zugriff auf den Knoten der Startseite.
Landmark:
Zugriff auf Knoten der von allen Seiten erreichbar ist.

Modellierung von Zugriffsstrukturen mit Hilfe von UML472 Stereotypen möglich.

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

Auto PC

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

Auto PDA_Phone

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

2

Auto

Das Ziel der Hypertextmodellierung ist die Erstellung eines Hypertextstrukturmodells, das die Navigationsstruktur beschreibt. Diese Struktur besteht im Wesentlichen aus Knoten, die den Inhalt darstellen und deren Verlinkungen miteinander. Die Knoten entsprechen den Objekten im Content-Modell.

In den meisten Fällen wird bei der Hypertextmodellierung nur die Struktur modelliert. Das Verhalten wird beim Entwurf eher selten berücksichtigt. Prinzipiell gibt es zwei Vorgangsweisen zur Modellierung von Hypertextmodellen. Eine Möglichkeit ist, die Struktur direkt vom Content-Modell abzuleiten, indem man die Beziehungen der Objekte in der Content-Ebene berücksichtigt. Die zweite Option ist die Modellierung auf der Grundlage der Anforderungen, die in den Anwendungsfällen beschrieben werden. Auf diese Art und Weise können somit auch mehrere verschiedene Strukturmodelle für ein und dasselbe Content-Modell geschaffen werden.

Zugriffsmodellierung

Da es verschiedene Möglichkeiten der Navigation gibt, um auf einen Knoten zuzugreifen, ist es neben dem reinen Hypertext-Strukturmodell ebenso nötig, Zugriffsstrukturen zu modellieren, mit denen auf die Knoten zugegriffen werden kann. Entwurfsmuster für Zugriffsstrukturen werden auch "Navigations-Patterns" genannt. Bekannte Vertreter für Navigations-Patterns sind z.B.:

Index:
Mit Hilfe eines Index ist es möglich, auf einen Knoten zuzugreifen, der eine Instanz einer bestimmten Klasse repräsentiert.
Menü:
Ein Menü erlaubt den Zugriff auf Knoten verschiedener Klassen.
Guided Tour:
Mittels einer Guided Tour können Knoten sequentiell durchlaufen werden.
Query:
Mit einer Query (Abfrage) kann ein bestimmter Knoten gesucht werden und auf diesen zugegriffen werden.
Home:
Home dient zum Zugriff auf den Knoten, der die Startseite repräsentiert.
Landmark:
Landmark erlaubt den Zugriff auf eine von allen Knoten erreichbare Seite.

In UML472 können die verschiedenartigen Zugriffsstrukturen mit Hilfe von Stereotypen (siehe UML - Anwendungen und Erweiterungen für die Multimediale Datenmodellierung) modelliert werden. Die folgende Abbildung zeigt das Zugriffsmodell des Hypertext-Modells einer Online-Zeitung.

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

Auto PC

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

Auto PDA_Phone

Zugriffsmodell des Hypertext-Modells einer Online-Zeitung

Auto

Die Onlinezeitung im obigen Beispiel besitzt ein Menü, welches einen Index aller Printausgaben, eine Artikelabfrage, sowie einen Index mit allen Themen enthält. Das Menü bietet folgedessen Zugriff auf drei Instanzen dreier verschiedener Klassen. Die Indizes PrintAusgabenIndex und ThemenIndex erlauben hingegen jeweils den Zugriff auf verschiedene Knoten der gleichen Klassen. Mit Hilfe der Query SucheArtikel wird ein Index aller passenden Suchergebnisse generiert, der wiederum den Zugriff auf verschiedene Knoten der Klasse Artikel erlaubt.

Präsentationsmodellierung

1

Auto

Man unterscheidet auch bei der Präsentationsmodellierung zwischen:

Strukturelle Modellierung:

  1. Modellierung der graphischen Gestaltung der Präsentationselemente
  2. Modellierung der Zusammensetzung der Seiten:
  • Erfolgt durch Übertragen der Knoten des Hypertextmodells auf die darzustellenden Seiten
  • Man unterscheidet zwischen drei Präsentationsebenen:
    • Präsentationsseite:
      • Umfasst eine komplette dem Benutzer angezeigte Seite
      • Kann sich in mehrere Präsentationseinheiten gliedern
    • Präsentationseinheit:
      • Entspricht einem Knoten im Hypertextmodell
      • Umfasst alle logisch zusammengehörenden Elemente einer Seite
    • Präsentationselement:
      • Kleinste Einheit im Präsentationsmodell
        • z.B. Text, Bilder, Audio usw.
  • Modellierung mit Hilfe von UML472 Kompositionsstrukturdiagrammen
  • Verwendung von Stereotypen für Strukturelemente wie Präsentationsseite, -einheit und -element

Entwurf einer Onlinezeitung

Auto PC

Beispielentwurf einer Onlinezeitung

Auto PDA_Phone

Beispielentwurf einer Onlinezeitung

Auto

Dynamischer Entwurf:

  • Modellierung der Interaktivität des Systems
    • z.B. die Reaktion auf das Betätigen von Schaltflächen

2

Auto

Wie bei der Content-Modellierung wird auch bei der Präsentationsmodellierung wieder zwischen strukturellem und dynamischem Entwurf unterschieden. In diesem Fall handelt es sich bei der strukturellen Modellierung um die Zusammensetzung der Seiten sowie die graphische Gestaltung der Präsentationselemente, die jedoch zurzeit noch separat modelliert wird. Die eigentliche strukturelle Modellierung erfolgt durch Übertragen der Knoten des Hypertextmodells auf die darzustellenden Seiten. Unter dem dynamischen Entwurf versteht man die Interaktivität des Systems, wie z.B. die Reaktion auf das Betätigen von Schaltflächen.

Bei der strukturellen Modellierung unterscheidet man zwischen drei Ebenen:

Präsentationsseite:
Die Präsentationsseite umfasst eine komplette dem Benutzer angezeigte Seite. Sie kann sich in mehrere Präsentationseinheiten gliedern.
Präsentationseinheit:
Die Präsentationseinheit entspricht einem Knoten im Hypertextmodell. Sie umfasst alle logisch zusammengehörenden Elemente einer Seite.
Präsentationselement:
Das Präsentationselement ist die kleinste Einheit im Präsentationsmodell, wie z.B. Text, Bilder, Audio usw..

Diese verschachtelte Struktur lässt sich am besten mit Hilfe von UML472 Kompositionsstrukturdiagrammen modellieren. Für die einzelnen Strukturelemente wie Präsentationsseite, -einheit und -element werden Stereotype verwendet. Standardpräsentationselemente können ebenfalls durch Stereotype gekennzeichnet werden. Die folgende Abbildung zeigt einen Beispielentwurf einer Onlinezeitung.

Entwurf einer Onlinezeitung

Auto PC

Beispielentwurf einer Onlinezeitung

Auto PDA_Phone

Beispielentwurf einer Onlinezeitung

Auto

Das obige Beispiel zeigt eine Präsentationsseite mit dem Namen OnlineZeitung, die sich in zwei Präsentationseinheiten Artikelliste und ArtikelAnzeige gliedert. Diese beiden Präsentationseinheiten repräsentieren jeweils einen Knoten im Hypertextmodell, der graphisch durch mehrere Präsentationselemente aufgegliedert wird.

Kontextualitätsmodellierung

1

Auto

Kontextualitätsmodellierung: Berücksichtung der Kontextinformationen bereits bei der Modellierung

  • Kontextinformationen:
    • Beschreiben die Nutzugsbedingungen der Webanwendungen
      • z.B. Informationen über die verschiedenen benötigten Benutzerprofile oder Endgeräteprofile
    • Kontextinformationen müssen bereits zum Zeitpunkt der Modellierung bekannt sind.

Arten von Kontextinformation:

  • Physische Kontextinformationen:
    • Lassen sich aus den aktuellen Nutzungsgegebenheiten des Systems ableiten
  • Logischer Kontext:
    • Bringt zusätzliche Informationen ein
      • Bsp.: persönliche Daten eines Benutzers

Anpassung auf den Kontext:

  • Statische Adaptierung:
    • Entwicklung eines separaten Modells für jede Eventualität
    • Vorteil: Vorliegen aller Modelle zur Laufzeit
  • Dynamische Adaptierung:
    • Hinzufügen von Regeln zum Content-, Hypertext-, und Präsentationsmodell, die den Umgang mit einem bestimmten Kontext bestimmen
    • Vorteil: Geringere Anzahl notwendiger Modelle

2

Auto

Unter Kontextualitätsmodellierung versteht man die Berücksichtung der Kontextinformationen bereits bei der Modellierung. Kontextinformationen beschreiben die Nutzugsbedingungen der Webanwendungen. Dies können z.B. Informationen über die verschiedenen benötigten Benutzerprofile oder Endgeräteprofile sein, die dann entsprechend in die Modellierung mit einbezogen werden. Es kann sich immer nur um Kontextinformationen handeln, die bereits zum Zeitpunkt der Modellierung bekannt sind.

Prinzipiell kann zwischen physischem und logischem Kontext unterschieden werden. Während sich physische Kontextinformationen aus den aktuellen Nutzungsgegebenheiten des Systems ableiten lassen, bringt der logische Kontext zusätzliche Informationen, wie z.B. persönliche Daten eines Benutzers, ein.

Die Anpassung auf den Kontext kann auf zwei verschiedene Arten erfolgen. Eine Möglichkeit ist es, für jede Eventualität ein separates Modell zu entwickeln. Diese Art der Anpassung wird auch statische Adaptierung genannt. Bei der dynamischen Adaptierung werden dem Content-, Hypertext-, und Präsentationsmodell Regeln hinzugefügt, die den Umgang mit einem bestimmten Kontext bestimmen. Während der Vorteil der statischen Adaptierung das Vorliegen aller Modelle zur Laufzeit ist, ist der Vorteil der dynamischen Adaptierung die geringere Anzahl notwendiger Modelle.

3

Auto

In Sachen Kontextmodellierung sei auch auf Hitz et. al (2002) HKR02 verwiesen, die e in UML472-basiertes Framework zur Modellierung ubiquitärer Web-Anwendungen präsentieren.

Modellierungsmethoden

1

Auto

Modellierungssprachen für Webanwendungen unterteilen sich in vier Kategorien:

Datenorientierte Methoden:

  • Leiten sich von den Modellierungssprachen der Datenbankensysteme ab
  • Basieren auf Entity-Relationship Modellen
  • Eignen sich zur Modellierung von datenbasierten Webanwendungen
  • Bsp.: RMM492 (Relationship Management Methodology) und WebML491 (Web Modeling Language)

Hypertext-orientierte Methoden:

  • Fokussieren auf den hypertextuellen Charakter der Webanwendungen
  • Bsp.: HDM490 (Hypertext-Design Model)

Objektorientierte Methoden:

  • Basieren auf UML472
  • Bsp.: UWE489 (UML-based Web Engineering)

Software-orientierte Methoden:

  • Orientieren sich an traditioneller Softwareentwicklung
  • Bsp.: WAE4882 (Web Application Extension)

2

Auto

Prinzipiell unterteilen sich die Modellierungssprachen für Webanwendungen auf Basis ihres Schwerpunkts bzw. ihrer geschichtlichen Entwicklung in vier Kategorien: Datenorientierte Methoden, Hypertext-orientierte Methoden, objektorientierte Methoden und Software-orientierte Methoden.

Datenorientierte Methoden leiten sich von den Modellierungssprachen der Datenbankensysteme ab. Sie basieren auf Entity-Relationship Modellen und eignen sich zur Modellierung von Datenbasierten Webanwendungen. Vertreter davon sind: RMM492 (Relationship Management Methodology) IKK98 und WebML491 (Web Modeling Language) CFB03.

Hypertext-orientierte Methoden fokussieren auf den hypertextuellen Charakter der Webanwendungen. Ein Vertreter dieser Kategorie ist z.B. das HDM490 (Hypertext-Design Model) GMP95.

Ein Vertreter der objektorientierten Methoden, die hauptsächlich auf UML472 (siehe Einführung in die Unified Modeling Language) basieren, ist UWE489 (UML-based Web Engineering) KK02.

Software-orientierte Methoden orientieren sich an traditioneller Softwareentwicklung, wie z.B. WAE4882 (Web Application Extension) Con03.

Bibiliographie

2

Auto

CFB03

Con03

GMP95

HKR02

IKK98

KK02

KPR04


Notes
(empty)