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

 

Learning Unit ID: 4_2_08
Title: UML - Anwendungen und Erweiterungen für die Multimediale Datenmodellierung
Abstract: Diese LU präsentiert die Anwendungs und Erweiterungsmöglichkeiten der Unified Modeling Language (UML) zur Modellierung von Multimediadaten. Es werden sowohl Beispiele zur Modellierung von Zeit und Raum, wie auch zur Modellierung von Multimedia- und Webanwendungen besprochen.
 
Status:

 

Version: 7.0
History:

Acronyme done.

Rechtschreibfehler ausgebessert (LOD1+LOD2).

Sourcecode repariert.


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

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

STUML Beispiel

Auto PDA_Phone

STUML Beispiel

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

STUML Beispiel

Auto PDA_Phone

STUML Beispiel

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. Navigational Class
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. Index
Guided Tour Bietet sequentiellen Zugriff auf die Instanzen einer Navigational Class. Guided Tour
Query Eine Query wird durch ein Objekt repräsentiert, das einen Anfragestring als Parameter hat. Query
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. Menu
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. Navigational Class
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. Index
Guided Tour Bietet sequentiellen Zugriff auf die Instanzen einer Navigational Class. Guided Tour
Query Eine Query wird durch ein Objekt repräsentiert, das einen Anfragestring als Parameter hat. Query
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. Menu
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


Notes
(empty)