Einleitung
1
Auto
- UML472
1.x bot nicht ausreichend Möglichkeiten zur Modellierung Multimedialer
Daten
- Es entwickelten sich eigene multimediale Modellierungssprachen
zur Modellierung von:
- Zeit und Raum
- Interaktion
- Layout
- Navigation und Präsentation
- Die meisten bauen unter Verwendung des General
Extension Mechanism auf UML472
auf
2
Auto
Da UML472
1.x nicht ausreichend Möglichkeiten zur Modellierung Multimedialer
Daten bot, entwickelten sich im Laufe der Zeit zahlreiche eigene multimediale
Modellierungssprachen. Die meisten bauen unter Verwendung des General
Extension Mechanism auf UML472
auf. Diese Verfahren bieten unter anderem Möglichkeiten zur Modellierung
von Zeit und Raum, Interaktion, Layout, Navigation und Präsentation.
Modellierung von Zeit und Raum
1
STUML
- STUML (Spatio Temporal UML472)
PRS99 präsentiert, eine Erweiterung
von UML472
zur Modellierung von Zeit und Raum
- Benützt Abwandlung des UML472
Stereotypenmechanismus um zeitliche und räumliche Semantik in UML472
Klassendiagramme zu integrieren
Drei neue Symbole zur Markierung von Klassenattributen:
- S (Spatial):
- Das Attribut kann zwischen verschiedenen räumlichen Bereichen
variieren
Bsp.: Postleitzahl (district#)
- T (Temporal):
- Der zeitliche Verlauf dieses Attributs soll aufbewahrt werden
Bsp.: Sammlung historischer Daten der Bevölkerungsdichte (populationDensity)
- G (Group):
- Zur Gruppierung mehrerer Attribute mit gemeinsamen zeitlichen
und räumlichen Eigenschaften
Group Label dient vor allem der Übersichtlichkeit
Bsp.: Gruppieren von Bevölkerungsdichte und mittlerer Lebenserwartung
(avgLifespan)
Auto PC
Auto PDA_Phone
2
STUML
In PRS99 wird STUML (Spatio Temporal
UML472) präsentiert,
eine Erweiterung von UML472
zur Modellierung von Zeit und Raum. Da die Basiskonzepte von UML472
für die zeitliche und räumliche Modellierung nicht ausreichen, wird
eine Abwandlung des UML472
Stereotypenmechanismus (siehe Einführung in die
Unified Modeling Language) benützt, um zeitliche und räumliche
Semantik in UML472
Klassendiagramme zu integrieren.
Dies geschieht durch die Einführung von drei neuen Symbolen zur Markierung
von Klassenattributen:
- S (Spatial):
- Wird ein Attribut mit dieser Markierung gekennzeichnet so bedeutet
dies, dass das Attribut zwischen verschiedenen räumlichen Bereichen
variieren kann. Zum Beispiel kann die mittlere Lebenserwartung (siehe
folgende Abbildung: avgLifespan)
in verschiedenen Regionen unterschiedliche Werte annehmen. Ebenso
ist natürlich auch die Postleitzahl (district#)
raumbezogen.
- T (Temporal):
- Dieses Symbol kennzeichnet, dass der zeitliche Verlauf dieses
Attributs aufbewahrt werden soll. Im folgenden Beispiel wird die
Bevölkerungsdicht (populationDensity)
mit diesem Symbol gekennzeichnet, um historische Daten zu sammeln.
- G (Group):
- Wird benützt, um mehrere Attribute mit gemeinsamen zeitlichen
und räumlichen Eigenschaften zu gruppieren. Da jedem Symbol normalerweise
eine "Specification Box" mit genaueren Beschreibungen
der Modelle zugeordnet wird, dient das Group Label vor allem der
Übersichtlichkeit. Im folgenden Beispiel werden z.B. die Bevölkerungsdichte
und die mittlere Lebenserwartung gruppiert und mit Hilfe der "Specification
Box" State T näher beschrieben.
Wobei z.B. spezifiziert wird, das die Werte jährlich zu synchronisieren
sind.
Die folgende Abbildung zeigt die beschriebenen Symbole in einem Beispiel
aus PRS99.
Auto PC
Auto PDA_Phone
Modellierung von Multimediaanwendungen
1
OMMMA-L
- OMMMA481-L
SE99a, SE99b
ist Erweiterung von UML472
zur Modellierung von Multimediaanwendungen
- UML472-Sequenzdiagramm,
-Kollaborationsdiagramm, -Zustandsdiagramm sowie -Aktivitätsdiagramm
sind für die zeitliche Modellierung nicht
ausreichend SE99a
- Für die räumliche Modellierung
bietet UML472
gar keine Möglichkeiten
- OMMMA-L orientiert sich an Sprachen zur Modellierung von Benutzungsschnittstellen
Es gliedert sich in die folgenden vier Teile:
- Anwendungsmodell:
- Stellt die logische Struktur der Anwendung dar und erlaubt die
Modellierung von Assoziationen
- Medienhierarchie:
- Generalisierungshierarchie verschiedener Medientypen bzgl. ihrer
Zeitabhängigkeit
- Präsentation:
- Räumliche Präsentation legt visuellen Teil der Benutzungsschnittstelle
festlegt
Zeitliche Präsentation sichert zeitlichen Zusammenhang der einzelnen
Komponenten
- Steuerung:
- Zur Festlegung des zeitlichen Verhalten des Systems bei Benutzerinteraktionen
und anderen Ereignissen
OMMMA-L Diagramme
Vier verschieden Diagrammtypen (teils von UML472
übernommen und teils modifiziert)
- Klassendiagramm:
- Von UML472
übernommen zur Modellierung von Medienhierarchien und logischen
Modellen
- Layoutdiagramm:
- Neues Diagramm zur graphischen Modellierung einer Benutzungsschnittstelle
zur:
- frühzeitige Einbeziehung des Layouts in den Entwicklungsprozess
- Ermöglichung von Konsistenz zwischen verschiedenen Benutzungsschnittstellen
- Zustandsdiagramm:
- Erweiterung der internen Transitionen
aus UML472
um Sequenzdiagramme innerhalb eines Zustandes zu platzieren
- Sequenzdiagramm:
- Modifikation von UML472
Sequenzdiagrammen zur Modellierung des Ablaufverhaltens von Multimediaanwendungen:
- Definition von Zeitmarken zur
Präzisierung der Zeitachse
- Parametrisierung von Sequenzdiagrammen,
um die Wiederverwendbarkeit zu erhöhen
- Aktivierungs- und Deaktivierungsverzögerungen
zur exakten Modellierung von Toleranzen bei der Objektsynchronisation
- Parallele Aktivierung von Komponenten
- Medienfilter zur Überlagerung
von Aktivierungen
- Animationsaktivierung beschreibt
eine sequentielle Verkettung von Aktivierungen (Vermeidung expliziter
Nachrichten an alle einzelnen Aktivierungen)
Modellierung interaktiver Multimediaanwendungen
- Erweiterung der oben vorgestellte Modellierungsmethode OMMMA481-L
SE01
- Fokus auf die Modellierung der Interaktion
- UML472
mit Hilfe der integrierten Erweiterungsmechanismen angepasst
- Klassendiagramm:
- Struktur der Multimediaanwendung (sowohl semantischer Teil der
Multimediaanwendung, wie auch anzuzeigende Mediendateien)
Anwendung von Stereotypen auf Mediendateien zur genauen Spezifikation:
- scenario: kennzeichnet z.B.
komplexe Szenarien, die mehrere application
Objekte umfassen
- application: um Multimediaanwendungen
von "normalen" Anwendungen zu unterscheiden
- media: kennzeichnet die Medientypen
die eingesetzt werden, um die Inhalte der Multimediaobjekte
zu repräsentieren
- Kollaborationsdiagramm:
- Zur Darstellung des Verhaltens:
- Benutzer kommuniziert mit Objekten vom Stereotyp interaction
- Darstellung der Ergebnisse durch Objekte vom Stereotyp presentation
- Behandlung von Eingabeereignisse durch scenario
Objekte
- Ausgabe durch Verbindung von presentation
Objekten mit den application
Objekten und ihren zugehörigen media
Objekten
- Zustandsdiagramme:
- Benutzerinteraktion mit dem System ereignisbasiert
UML472 stellt
für die Modellierung von ereignisbasierten Abläufen Zustandsdiagramme
(bzw. Zustandsautomaten in UML472
2) zur Verfügung
- Sequenzdiagramme:
- Verwendung für zeitlich fix festgelegte Abläufe
Es können sowohl Zeitpunkt-, als auch Zeitintervallbeziehungen dargestellt
werden
2
OMMMA-L
OMMMA481-L
SE99a, SE99b
ist eine Erweiterung von UML472
zur Modellierung von Multimediaanwendungen. Während sich die statische
Struktur von multimedialen Anwendungen in UML472
mit Hilfe von Klassendiagrammen beschreiben lässt, stößt man bei der
Beschreibung des dynamischen Verhaltens laut SE99a
an die Grenzen von UML472.
Während Sequenzdiagramm, Kollaborationsdiagramm, Zustandsdiagramm
sowie Aktivitätsdiagramm nach Meinung von SE99a
für die zeitliche Modellierung nicht ausreichend sind, bietet UML472
für die räumliche Modellierung gar keine Möglichkeiten.
OMMMA481-L
orientiert sich an Sprachen zur Modellierung von Benutzungsschnittstellen
und gliedert sich in die folgenden vier Teile:
- Anwendungsmodell:
- Das Anwendungsmodell stellt die logische Struktur der Anwendung
dar und erlaubt die Modellierung von Assoziationen zwischen Klassen,
Strukturierungen, Kompositionsbeziehungen und Navigationsstrukturen.
- Medienhierarchie:
- Die Medienhierarchie stellt eine Generalisierungshierarchie verschiedener
Medientypen bzgl. ihrer Zeitabhängigkeit dar.
- Präsentation:
- Während die räumliche Präsentation den visuellen Teil der Benutzungsschnittstelle
festlegt, sichert die zeitliche Präsentation den zeitlichen Zusammenhang
der einzelnen Komponenten.
- Steuerung:
- Mit Hilfe der Ablaufsteuerung wird das zeitliche Verhalten des
Systems bei Benutzerinteraktionen und anderen Ereignissen, die durch
das Eventmodell ausgelöst werden, festgelegt.
OMMMA-L Diagramme
Um alle notwendigen Aspekte von Multimediaanwendungen modellieren
zu können, bietet OMMMA481-L
vier verschieden Diagrammtypen an. Dabei handelt es sich sowohl um
Diagramme, die von UML472
übernommen und modifiziert werden, als auch um neue Diagrammtypen.
- Klassendiagramm:
- Das Klassendiagramm wird von UML472
übernommen und eignet sich zur Modellierung der oben besprochenen
Medienhierarchien und von logischen Modellen.
- Layoutdiagramm:
- Das Layoutdiagramm wird neu eingeführt und dient der graphischen
Modellierung einer Benutzungsschnittstelle. Dadurch soll eine frühzeitige
Einbeziehung des Layouts in den Entwicklungsprozess und Konsistenz
zwischen verschiedenen Benutzungsschnittstellen ermöglicht werden.
Das Layout erfolgt durch graphische Anordnung von Rahmen (engl.:
bounding boxes), die die vorgesehen Bereiche der Präsentationsobjekte
reservieren. OMMMA-L unterscheidet zwischen passiven
Objekten (schmale Umrandung), welche reine Visualisierungskomponenten
sind, und den aktiven Interaktionskomponenten
(fette Umrandung).
- Zustandsdiagramm:
- Zustandsdiagramme werden nahezu unverändert aus UML472
übernommen. Die einzige Änderung erlaubt es, Sequenzdiagramme innerhalb
eines Zustandes zu platzieren. Dies geschieht durch Erweiterung
der internen Transitionen aus UML472.
So kann den Aktionen innerhalb eines Zustandes ein Sequenzdiagramm
zugeordnet werden.
- Sequenzdiagramm:
- In OMMMA481-L
werden für die Modellierung des Ablaufverhaltens von Multimediaanwendungen
UML472 Sequenzdiagramme
modifiziert. Dabei handelt es sich um die folgenden Änderungen:
- Definition von Zeitmarken zur
Präzisierung der Zeitachse
- Parametrisierung von Sequenzdiagrammen
, um die Wiederverwendbarkeit zu erhöhen
- Aktivierungs- und Deaktivierungsverzögerungen
zur exakten Modellierung von Toleranzen bei der Objektsynchronisation.
- Parallele Aktivierung von Komponenten
- Medienfilter zur Überlagerung
von Aktivierungen
- Animationsaktivierung beschreibt
eine sequentielle Verkettung von Aktivierungen zur Vermeidung
expliziter Nachrichten an alle einzelnen Aktivierungen
Beispieldiagramme werden in einer Folienpräsentation
von Stefan Sauer vorgestellt.
OMMMA481-L
erweitert also das zur Modellierung von Multimediaanwendungen nicht
ausreichend geeignete UML472
1.x. Da mit UML472
2 aber auch bestimmte Diagrammtypen, wie das Sequenzdiagramm, erweitert
und auch neue Typen, wie das Timing Diagramm und das Interaktionsdiagramm
, eingeführt wurden, würde OMMMA-L aus heutiger Sicht wahrscheinlich
anders angelegt werden.
Modellierung interaktiver Multimediaanwendungen
Die in SE01 vorgestellte Modellierungsmethode
erweitert die oben vorgestellte OMMMA481-L,
indem sie noch mehr Wert auf die Modellierung der Interaktion legt.
Im Gegensatz zu OMMMA481-L
wird jedoch keine neue Modellierungssprache entwickelt, sondern UML472
mit Hilfe der integrierten Erweiterungsmechanismen angepasst.
- Klassendiagramm:
- Die Struktur der Multimediaanwendung, die sowohl den semantischen
Teil der Multimediaanwendung, als auch die Mediendateien, die angezeigt
werden sollen, enthält, wird im Klassendiagramm dargestellt. Hierfür
wird das "normale" UML472
Klassendiagramm durch die Anwendung von Stereotypen erweitert. Sowohl
auf den semantischen Teil, als auch auf die Mediendateien werden
Stereotype zur genaueren Spezifikation angewendet: scenario
, application bzw. media.
Das application Stereotyp wird verwendet,
um Multimediaanwendungen von "normalen" Anwendungen zu
unterscheiden. Das scenario Stereotyp
kennzeichnet z.B. komplexe Szenarien, die mehrere application
Objekte umfassen. Das media Stereotyp
kennzeichnet die Medientypen die eingesetzt werden, um die Inhalte
der Multimediaobjekte zu repräsentieren.
- Kollaborationsdiagramm:
- Das Verhalten der Anwendung wird in einem Kollaborationsdiagramm
dargestellt. Dabei wird von der grundlegenden Annahme ausgegangen,
dass der Benutzer des Systems bei der Verwendung des Interfaces
seinerseits mit Objekten vom Stereotyp interaction
kommuniziert und Ergebnisse durch Objekte vom Stereotyp presentation
dargestellt werden. Eingabeereignisse werden von den scenario
Objekten behandelt. Zur Ausgabe werden die presentation
Objekte mit den application Objekten
und ihren zugehörigen media Objekten
verbunden.
- Zustandsdiagramme:
- Im Gegensatz zu zeitlich fixen Abläufen ist die Benutzerinteraktion
mit dem System ereignisbasiert. UML472
stellt für die Modellierung von ereignisbasierten Abläufen Zustandsdiagramme
(bzw. Zustandsautomaten in UML472
2) zur Verfügung. Mit ihnen kann sowohl das Gesamtverhalten des
Systems auf einem hohen Abstraktionsniveau, wie auch das Verhalten
der scenario Objekte modelliert werden.
- Sequenzdiagramme:
- Im Gegensatz zum Zustandsdiagramm, wo ereignisorientierte Abläufe
zeitlich modelliert wurden, werden die Sequenzdiagramme für zeitlich
fix festgelegte Abläufe verwendet. Sowohl Zeitpunkt-, als auch Zeitintervallbeziehungen
(siehe Modellierung der Struktur von Multimedia-Daten
- Zeitliche und räumliche Modelle) können in Sequenzdiagrammen
dargestellt werden. Um die Diagramme verständlicher und weniger
komplex zu gestalten, wurden Erweiterungen entwickelt. Hierzu zählt
ein neuer Synchronisationsbalken wie auch eine Möglichkeit zur parallelen
Aktivierung. Außerdem wird die Möglichkeit geboten, zeitlich hintereinander
liegende Animationen auf einmal zu aktivieren. Des Weiteren ist
es durch Verknüpfung der presentation
Objekte mit den sich ändernden räumlichen Eigenschaften möglich,
zeitliche und räumliche Eigenschaften zu verbinden.
Im Gegensatz zu OMMMA481-L
wurde hier keine neue Sprache entwickelt sondern eine allgemein bekannte
und akzeptierte Modellierungssprache wie UML472
erweitert um Multimediaanwendungen zu modellieren.
Beispieldiagramme werden in einer Folienpräsentation
von Stefan Sauer vorgestellt.
Modellierung von Web Anwendungen
1
Modellierung von Navigation und Präsentation
- Erweiterung zur Modellierung von Webanwendungen (KBH+00)
unter Verwendung des in UML472
integrierten Erweiterungsmechanismus
- Modellierung von Multimediaanwendungen gliedert sich in drei Teile
(siehe Modellierung von Web-Anwendungen):
- Contentmodell: mit Hilfe von
UML472
Klassendiagrammen
- Hypertextmodell:
- räumliche Modelle (gibt an welche Klassen des konzeptuellen
Modells durch Webnavigation besucht werden können):
Modellierung durch UML472
Klassendiagramme, die durch die Stereotype Navigational
Class und Direct Navigability, erweitert sind
- Navigationsstrukturmodell (basiert auf dem räumlichen
Modell):
Verwendet die Stereotype: Menus, Indexes, Guided Tours,
Queries, External Nodes und Navigational Contexts
- Präsentationsmodell:
- statisches Modell:
- Repräsentation durch Kompositionsstrukturdiagramme
- Beschreiben Aufbau der Benutzungsschnittstellen
- Verwendung von Stereotypen (siehe Tabelle Stereotype
im Präsentationsmodell)
- dynamisches Modell
Stereotype im Hypertextmodell
Stereotypname |
Beschreibung |
Icon |
Navigational Class |
Ein Objekt der Navigational Class
wird durch den Benutzer während des Navigierens besucht. |
|
Direct Navigability |
Gerichtete Assoziationen zur Modellierung von Navigation. |
|
Index |
Zusammengesetzes Objekt, das eine Vielzahl von Indexeinträgen
enthält, die wiederum aus Name und Link auf eine Instanz einer
Navigational Class bestehen. |
|
Guided Tour |
Bietet sequentiellen Zugriff auf die Instanzen einer
Navigational Class. |
|
Query |
Eine Query wird durch ein Objekt
repräsentiert, das einen Anfragestring als Parameter hat. |
|
Menu |
Zusammengesetztes Objekt, das eine fixe Anzahl von Menueinträgen
enthält, die wiederum aus einem Namen sowie einem Link auf eine
Instanz der Navigational Class,
einen Index , eine
Guided Tour oder einer Query, bestehen. |
|
Context |
Ein Context repräsentiert eine
geordnete Zusammenstellung aus einer Sequenz von Instanzen der
Navigational Class. |
|
Stereotype im Präsentationsmodell
Stereotypname |
Beschreibung |
Text |
Sequenz von Buchstaben |
Anchor |
Klickbarer Text, der den Anfangspunkt einer Navigation darstellt |
Button |
Klickbarer Bereich, dem eine Aktion zugeordnet ist |
Image, Audio und Video |
Multimedia Objekte |
Form |
Formular wird zum Abfragen von Informationen vom Benutzer verwendet |
Collection |
Liste von Textelementen |
Anchored Collection |
Liste von Anchor-Elementen |
2
Modellierung von Navigation und Präsentation
In KBH+00 wird eine UML472-Erweiterung
zur Modellierung von Webanwendungen präsentiert, wobei der in UML472
integrierte Erweiterungsmechanismus verwendet wird.
Die Modellierung von Multimediaanwendungen gliedert sich in drei
Teile: Contentmodell, Hypertextmodell und Präsentationsmodell (siehe
Modellierung von Web-Anwendungen).
Die Modellierung des Contentmodells
kann mit Hilfe von UML472
Klassendiagrammen erfolgen.
Die Modellierung des Hypertextmodells
bzw. des Navigationsdesigns wird in zwei Schritten durchgeführt. Während
im ersten Schritt das räumliche Navigationsmodell definiert wird,
erzeugt man im zweiten Schritt ein Navigationsstrukturmodell. Das
räumliche Modell gibt an welche Klassen
des konzeptuellen Modells durch Webnavigation besucht werden können
und lässt sich mit Hilfe von UML472
Klassendiagrammen modellieren, die durch die Stereotype Navigational Class
und Direct Navigability,
erweitert sind. Das Navigationsstrukturmodell
basiert auf dem räumlichen Modell und verwendet zusätzlich noch die
folgenden Stereotype (siehe untenstehende Tabelle): Menus,
Indexes, Guided Tours,
Queries, External Nodes
und Navigational Contexts.
Stereotype im Hypertextmodell
Stereotypname |
Beschreibung |
Icon |
Navigational Class |
Ein Objekt der Navigational Class
wird durch den Benutzer während des Navigierens besucht. |
|
Direct Navigability |
Gerichtete Assoziationen zur Modellierung von Navigation. |
|
Index |
Zusammengesetzes Objekt, das eine Vielzahl von Indexeinträgen
enthält, die wiederum aus Name und Link auf eine Instanz einer
Navigational Class bestehen. |
|
Guided Tour |
Bietet sequentiellen Zugriff auf die Instanzen einer
Navigational Class. |
|
Query |
Eine Query wird durch ein Objekt
repräsentiert, das einen Anfragestring als Parameter hat. |
|
Menu |
Zusammengesetztes Objekt, das eine fixe Anzahl von Menueinträgen
enthält, die wiederum aus einem Namen sowie einem Link auf eine
Instanz der Navigational Class,
einen Index , eine
Guided Tour oder einer Query, bestehen. |
|
Context |
Ein Context repräsentiert eine
geordnete Zusammenstellung aus einer Sequenz von Instanzen der
Navigational Class. |
|
Auto
Die Modellierung des Präsentationsmodells
umschließt ein statisches und ein dynamisches Modell. Das statische
Präsentationsmodell wird durch Kompositionsstrukturdiagramme repräsentiert,
welche den Aufbau der Benutzungsschnittstellen beschreiben. Für die
am meisten verwendeten Komponenten eines Interfaces werden wieder
Stereotype definiert (siehe Tabelle Stereotype im Präsentationsmodell):
Anchor, Text,
Image, Audio,
Video, Form,
Button, Collection
und Anchored Collection.
Stereotype im Präsentationsmodell
Stereotypname |
Beschreibung |
Text |
Sequenz von Buchstaben |
Anchor |
Klickbarer Text, der den Anfangspunkt einer Navigation darstellt |
Button |
Klickbarer Bereich, dem eine Aktion zugeordnet ist |
Image, Audio und Video |
Multimedia Objekte |
Form |
Formular wird zum Abfragen von Informationen vom Benutzer verwendet |
Collection |
Liste von Textelementen |
Anchored Collection |
Liste von Anchor-Elementen |
Auto
Diese Methode nutzt einerseits die Vorteile von UML472
und bietet andererseits aber auch durch sinnvolle Erweiterungen in
Form von Stereotypen die Möglichkeit der Modellierung von Webanwendungen.
Beispieldiagramme werden in einer Folienpräsentation
von Nora Koch vorgestellt.
Bibliographie
2
Auto
SE99a
SE99b
SE01
KBH+00
PRS99
|