Modellierung interaktiver multimedialer Präsentationen

Projekt: Werkzeuge für die Entwicklung von Benutzungsoberflächen für Multimedia-Systeme

Projektleiter: Prof. Dr. H.-J. Appelrath

Abteilung Informationssysteme

Fachbereich Informatik

Mitarbeiter: Dr. Rainer Götze, Dietrich Boles

1. Projektübersicht

Ziel des XFantasy-Projektes [AG91,AG93] ist die Entwicklung von Software-Werkzeugen für den Entwurf und die Implementierung von graphischen und multimedialen Benutzerschnittstellen. Die dabei entstehende Software-Umgebung (siehe Abbildung 1) bietet einem Software-Entwickler ein objektorientiertes User-Interface-Managment-System (UIMS) für multimediale Benutzerschnittstellen (XFantasy-UIMS) und ein graphisch-interaktives Entwicklungswerkzeug für multimediale Präsentationsanwendungen FMAD ("XFantasy-based Multimedia Application Developer").

Abb.1: Software-Werkzeuge des XFantasy-Projektes

Das XFantasy-UIMS besteht aus einem objektorientierten User-Interface-Toolkit (XFantasy-UIT), das eine Klassenhierarchie für die Implementierung von multimedialen Benutzerschnittstellen zur Verfügung stellt, und der Dialogablaufbeschreibungssprache ODIS ("Object-Oriented Dialog Specification"), die eine abstrakte Beschreibung des Dialogablaufs unterstützt. Das interaktive Autorenwerkzeug FMAD wird mit dem XFantasy-UIMS implementiert und ermöglicht eine visuelle Entwicklung interaktiver multimedialer Präsentationsanwendungen ohne Programmiersprachenkenntnisse.

In diesem Bericht wird das IMRA-Modell vorgestellt, das einen abstrakten Formalismus sowie eine darauf aufbauende graphische Notation zur Beschreibung und Modellierung interaktiver multimedialer Präsentationsanwendungen zur Verfügung stellt. Das IMRA-Modell bildet die konzeptionelle Grundlage des Autorenwerkzeugs FMAD.

2. Interaktive multimediale Präsentationen

Definitionsgemäß sind multimediale Präsentationsanwendungen "Programme, die einen Benutzer durch eine gegebene Menge multimedialer Informationen führen" [AG93]. Multimediale Präsentationanwendungen werden interaktiv genannt, wenn der Benutzer den Kontrollfluß oder das Layout der Präsentation beeinflussen kann.

Wie der Name schon ausdrückt, werden multimediale Präsentationsanwendungen primär in der Produkt- bzw. Firmenpräsentation eingesetzt. Aber auch Applikationen anderer Anwendungsfelder weisen Merkmale multimedialer Präsentationsanwendungen auf. So können multimediale Lehr/Lern-Programme und Computerspiele durchaus als Präsentationsanwendungen angesehen werden, die sich durch einen hohen Grad an Interaktivität auszeichnen.

Multimediale Präsentationsanwendungen lassen sich als ein Netzwerk aus Knoten und Kanten modellieren [Bol94]. Dieses wird auch multimediales Beziehungsnetzwerk genannt. Die Knoten repräsentieren die elementaren Informationseinheiten. Sie werden als Medienobjekte bezeichnet. Über die Kanten werden Beziehungen zwischen den Medienobjekten hergestellt.

Medienobjekte

Multimediale Präsentationen bestehen aus einer Menge an Informationseinheiten. Texte, Zeichnungen, Musikstücke und Videos, in einen bestimmten Zusammenhang zueinander gebracht, werden einem Benutzer in einer zeitlichen Abfolge präsentiert. Die einzelnen Informationseinheiten kapseln jeweils bestimmte Informationen und können daher, angelehnt an die Terminologie der objektorientierten Programmierung, als Objekte betrachtet werden. Da die Objekte von einem bestimmten Typ, genauer gesagt Medientyp, sind, werden sie auch als (elementare) Medienobjekte bezeichnet. Von den Ausgabemedientypen, wie Text, Graphik, Audio, Video und Animation, können Eingabemedientypen, auch Interaktionstypen genannt, unterschieden werden, deren Instanzen bestimmte Interaktionstechniken kapseln. Buttons, Menüs, Schieberegler und Texteingabefelder sind Beispiele klassischer Interaktionsobjekte.

Beziehungen

Sinn und Zweck einer multimedialen Präsentation ist es, einen Benutzer über einen bestimmten Sachverhalt zu informieren. Dazu werden im allgemeinen viele einzelne voneinander unabhängige Informationseinheiten in einen bestimmten Zusammenhang zueinander gebracht. Dieser Zusammenhang läßt sich über Beziehungen herstellen. Im multimedialen Beziehungsnetzwerk repräsentieren die Kanten diese Beziehungen. Die Semantik der Kanten ist allerdings nicht einheitlich. Vielmehr existieren verschiedene Typen von Beziehungen:

Zeitliche Beziehungen

Über zeitliche Beziehungen wird die zeitliche Abfolge definiert, in der die einzelnen Medienobjekte einem Benutzer präsentiert werden sollen.

Gestalterische Beziehungen

Über gestalterische Beziehungen werden Eigenschaften von Medienobjekten, wie Position auf dem Bildschirm und Größe, aber auch Farbgebung, Präsentationsgeschwindigkeit oder Lautstärke, definiert bzw. manipuliert.

Gemischte Beziehungen

Beziehungen lassen sich dadurch charakterisieren, daß sie in Abhängigkeit des Eintretens einer bestimmten Bedingung eine bestimmte Auswirkung haben. Gemischte Beziehungen sind dadurch gekennzeichnet, daß sich der Typ der Bedingung (zeitlich oder gestalterisch) vom Typ der Auswirkung (zeitlich oder gestalterisch) unterscheidet.

Interaktionsbeziehungen

Interaktionsbeziehungen sind Beziehungen, die von Interaktionsobjekten ausgehen. Sie kennzeichnen die Auswirkungen, die eine Benutzereingabe mit Hilfe dieses Objektes nach sich zieht. Diese Auswirkung kann sich in Form einer zeitlichen oder gestalterischen Veränderung der Präsentation bemerkbar machen. Erstere werden auch Navigationsinteraktionen, letztere Gestaltungsinteraktionen genannt.

Entwicklungsprozeß

Die Gesamtentwicklung einer interaktiven multimedialen Präsentation kann in mehrere Entwicklungsphasen zerlegt werden, in denen verschiedene Entwicklergruppen mit geeigneten Entwicklungswerkzeugen bestimmte Teilaufgaben bearbeiten. Dieser Zusammenhang wird in Abbildung 2 verdeutlicht.

Abb. 2: Entwicklung interaktiver multimedialer Präsentationsanwendungen

In der Medienobjekterzeugungsphase werden die elementaren Medienobjekte erzeugt. Medienobjekterzeugungswerkzeuge sind beispielsweise Graphikeditoren, Texteditoren oder Editoren zur Videobearbeitung. Die noch voneinander unabhängigen Medienobjekte werden in einer Medienobjektsammlung abgelegt. Von dort werden sie in die Verbindungsphase eingelesen, die aus den drei Teilphasen Layout-Phase, Strukturierungsphase und Test-Phase besteht. In der Layout-Phase werden die initialen Eigenschaften der einzelnen Medienobjekte festgelegt, in der Strukturierungsphase werden die Beziehungen definiert, und in der Test-Phase, die einer Debugging-Phase entspricht, kann sich ein Entwickler Ausschnitte der Gesamtpräsentation anschauen und damit überprüfen, ob die Präsentation seinen Vorstellungen entspricht. In der Verbindungsphase werden häufig graphisch-interaktive Werkzeuge eingesetzt, mit denen sich im allgemeinen nicht alle Eigenschaften einer multimedialen Präsentationsanwendung spezifizieren lassen. In der Generierungsphase wird daher editierbarer Programmcode erzeugt, der in der Programmierphase mit Hilfe einer textuellen Programmiersprache weiter bearbeitet werden kann. Der geänderte Code wird anschließend in ein ausführbares Programm übersetzt, das sich ein Benutzer in der Präsentationsphase anschauen und an den vom Entwickler festgelegten Stellen interaktiv beeinflussen kann. Bei der Integration neuer Medientypen in die Entwicklungswerkzeuge müssen die Werkzeuge in der Werkzeugerweiterungsphase durch einen sogenannten Medientypintegrator entsprechend angepaßt werden.

Autorenwerkzeuge

Multimediale Präsentationsanwendungen werden häufig von Werbefachleuten oder Designern entworfen, die kaum Programmierkenntnisse besitzen. Diesen Personen müssen daher Werkzeuge zur Verfügung gestellt werden, die die Entwicklung von Präsentationsanwendungen ohne die Verwendung von textuellen Programmiersprachen sondern beispielsweise mit Hilfe visueller Programmiertechniken ermöglichen. Derartige graphisch-interaktive Werkzeuge werden in der Literatur Autorenwerkzeuge oder Autorensysteme genannt. Dementsprechend nennt man die Entwickler, die mit diesen Werkzeugen arbeiten, auch Autoren. Ausgehend von dem oben beschriebenen Entwicklungsprozeß sollte ein Autorenwerkzeug graphisch-interaktive Layout-Werkzeuge, graphisch-interaktive Strukturierungswerkzeuge, einen Interpreter und einen Codegenerator zur Verfügung stellen. Die Bereitstellung eigener Medienobjekterzeugungswerkzeuge ist nicht dringend erforderlich. Wichtiger ist, daß externe Medienobjekterzeugungswerkzeuge über Schnittstellen mit dem Autorenwerkzeug gekoppelt werden können.

In den letzten Jahren sind eine Vielzahl von Autorenwerkzeugen auf dem Markt erschienen. In [Bol94] werden 26 Autorenwerkzeuge miteinander verglichen. Die größten Unterschiede sind im Bereich der Strukturierungswerkzeuge zu finden. Häufig wird lediglich die Modellierung zeitlicher Beziehungen, beispielsweise mit Timeline-Editoren, unterstützt. Die meisten Autorenwerkzeuge erzeugen auch keinen editierbaren sondern unmittelbar ausführbaren Code. Die Programmierphase wird durch die Bereitstellung einer speziellen Skriptsprache in die Verbindungsphase integriert. Kritikpunkte an existierenden Autorenwerkzeugen sind ihre mangelnde Unterstützung bei der Modellierung von Interaktionen sowie die fehlende Erweiterbarkeit um neue Medientypen. Insbesondere die Anpassung an neue Ein- und Ausgabetechnologien (siehe auch [Eir9x]) ist im allgemeinen nicht gewährleistet.

3. Das IMRA-Modell

Ausgehend von der im vorigen Abschnitt vorgestellten Charakterisierung multimedialer Präsentationsanwendungen und ihres Entwicklungsprozesses wurde das IMRA-Modell (Inter-Media-Relationships via Attributes) entworfen [Bol94]. Das IMRA-Modell besteht aus einem Formalismus zur Beschreibung des strukturellen Aufbaus interaktiver multimedialer Präsentationsanwendungen, sowie einem Präsentationsalgorithmus, der das Verhalten allgemeiner mit dem Formalismus beschriebener Anwendungen kennzeichnet. Als Hilfsmittel zur übersichtlicheren Modellierung von Präsentationsanwendungen dienen die sogenannten Media-Relationship-Diagramme, eine auf dem Formalismus aufbauende graphische Notation. Das IMRA-Modell dient als Grundlage für die Implementierung von Autorenwerkzeugen. Es unterstützt insbesondere die Strukturierungsphase, aber auch die Layout-Phase, die Test-Phase und die Generierungsphase bei der Entwicklung multimedialer Präsentationsanwendungen.

IMRA-Formalismus

Hauptkomponenten des IMRA-Modells sind abstrakte Medienobjekte sowie Beziehungen. Bei den Medienobjekten werden elementare und komplexe Medienobjekte unterschieden. Elementare Medienobjekte sind Instanzen eines bestimmten Medientyps. Komplexe Medienobjekte bestehen aus anderen Medienobjekten sowie Beziehungen zwischen diesen und dienen zur hierarchischen Strukturierung multimedialer Präsentationsanwendungen. Beziehungen werden nicht direkt zwischen Objekten sondern zwischen Attributen definiert, die den Objekten zugeordnet sind. Die Attribute repräsentieren die Präsentationseigenschaften eines Objektes. Beziehungen bestehen aus einer Ereignismenge, einer Bedingung und einer Aktion. Eine Bedingung wird gebildet aus einer logischen Verknüpfung von Vergleichsrelationen über Werte bzw. Eigenschaften von Attributen, eine Aktion ist eine Zuweisung eines Wertes an ein Attribut, und als Ereignis gilt die Wertzuweisung an ein Attribut, das in der Bedingung vorkommt. Das Eintreten eines Ereignisses der Ereignismenge löst die Überprüfung der Bedingung aus. Falls die Überprüfung positiv ist, wird die Aktion ausgeführt und eine Funktion eines zugrundeliegenden Laufzeit-Systems aufgerufen, die dem manipulierten Attribut zugeordnet ist und deren Ausführung wahrnehmbare Auswirkungen auf die Präsentation hat. Zur Unterscheidung verschiedener Beziehungstypen existieren verschiedene Port-Typen. Ports sind den Medienobjekten zugeordnet und repräsentieren die Schnittstelle der Objekte zu anderen Objekten. Die Medienobjekte bilden die Knoten und die Beziehungen die Kanten eines Beziehungsgraphen. Die Kanten sind gerichtet und verbinden genau zwei Ports miteinander.

Präsentationsalgorithmus

Während der IMRA-Formalismus eine Syntax für den strukturellen Aufbau interaktiver multimedialer Präsentationsanwendungen definiert, charakterisiert der Präsentationsalgorithmus eine operationelle Semantik der modellierten Anwendungen, d.h. er beschreibt die eigentliche Präsentation. Die Semantik wird dabei durch das Einzelverhalten der Medienobjekte sowie durch ihr Zusammenspiel aufgrund der Beziehungen bestimmt.

Media-Relationship-Diagramme

Mit Hilfe von MR-Diagrammen lassen sich interaktive multimediale Präsentationsanwendungen visuell beschreiben bzw. modellieren. MR-Diagramme definieren die Lexikalik und Syntax einer anwendungsorientierten visuellen Programmiersprache zur Konstruktion interaktiver multimedialer Präsentationsanwendungen, deren Semantik durch den Präsentationsalgorithmus gegeben ist. Medienobjekte werden in den MR-Diagrammen ikonifiziert als Rechtecke dargestellt. Beziehungen zwischen Medienobjekten werden durch Kanten repräsentiert. Die Bedingung und Aktion werden in C++-Notation in textueller Form an die Kante geschrieben.

In Abbildung 3 wird ein komplexes Medienobjekt, das aus einem Audio- und einem Schieberegler-Objekt besteht, mit Hilfe eines MR-Diagramms dargestellt. Nach dem Start des Audios wird über die Beziehung "activity==active ==> activity=active" auch der Schieberegler aktiviert. Die Beziehung "activity==passive ==> activity=passive" bewirkt die Passivierung des Schiebereglers, falls das Audio endet. Mit Hilfe der Interaktionsbeziehung "value==? ==> volume=slider.value" wird die Regulierung der Lautstärke des Audios mittels des Schiebereglers modelliert.

4. Das Autorenwerkzeug FMAD

Der IMRA-Formalismus, der Präsentationsalgorithmus und die Media-Relationship-Diagramme wurden bei der Implementierung des Autorenwerkzeugs FMAD genutzt [Bol94]. Der Formalismus wurde in eine C++-Klassenhierarchie abgebildet, der Präsentationsalgorithmus bildet die Grundlage des FMAD-Interpreters und die MR-Diagramme prägen die optische Gestaltung der Benutzungsoberfläche von FMAD. Die Implementierungsgrundlage von FMAD bildet das XFantasy-UIT.

Abb.3: Media-Relationship-Diagramme

FMAD läßt sich durch folgende Eigenschaften charakterisieren, die es in seiner Gesamtheit von den meisten existierenden Autorenwerkzeugen abgrenzt:

Als Strukturierungsmetapher liegt FMAD ein allgemeiner Beziehungsgraph zugrunde.

FMAD kann über eine Dateischnittstelle prinzipiell mit beliebigen Medienobjekterzeugungswerkzeugen gekoppelt werden.

FMAD setzt sich funktional aus Layout-Werkzeugen, Strukturierungswerkzeugen, einem Interpreter und einem Codegenerator zusammen.

Der Codegenerator erzeugt editierbaren C++-Code auf der Basis des XFantasy-UITs.

Sowohl elementare als auch komplexe Medienobjekte lassen sich speichern und wieder laden, sind also als persistente Objekte wiederverwendbar.

FMAD ist um neue Medientypen erweiterbar und läßt sich damit auch leicht an neue Ein- bzw. Ausgabetechnologien anpassen.

Beziehungen zwischen Medienobjekten lassen sich graphisch-interaktiv definieren und werden optisch angezeigt.

Interaktionsobjekte werden als spezielle Medienobjekte realisiert.

Auswirkungen von Interaktionen lassen sich in Form spezieller Beziehungen modellieren.

FMAD stellt eine Menge an Interaktionsobjekten zur Verfügung und ist damit nicht nur zur Entwicklung interaktiver multimedialer Präsentationsanwendungen sondern auch zur Entwicklung interaktiver multimedialer Lehr-/Lernsoftware und zur Realisierung von Produkten aus dem Spiel- und Unterhaltungsbereich geeignet.

5. Stand des Projektes

Die Implementierung und Dokumentation des XFantasy-UITs [BC+94,Cla94,Voß94] sowie die Definition der Dialogablaufbeschreibungssprache ODIS [Göt94] sind abgeschlossen. Die Realisierung eines Übersetzers für ODIS steht vor dem Abschluß. Das Autorenwerkzeug FMAD ist implementiert und voll funktionsfähig. Allerdings sind noch einige Erweiterungen geplant.

Literatur

[AG91] Appelrath, H.-J., Götze, R.: XFantasy - ein objektorientiertes UIMS für multimediale Informationssysteme. - OFFIS, Oldenburg, 1991.

[AG93] Appelrath, H.-J., Götze, R.: XFantasy - ein objektorientiertes UIMS für multimediale Informationssysteme. OFFIS, Oldenburg, 1993.

[BC+94] Boles, D., Claaßen, R., Götze, R., Kohrs, S., Voßberg, L.: XFantasy - Das Handbuch. Universität Oldenburg, Fachbereich Informatik, Internes Papier, 1994.

[Bol94] Boles, D.: Das IMRA-Modell - Integration von Interaktionen in das Autorenwerkzeug FMAD. Universität Oldenburg, Fachbereich Informatik, Diplomarbeit, 1994.

[Cla93] Claaßen, R.: Synchronisation in der Dialogkontrolle von multimedialen Benutzerschnittstellen. Universität Oldenburg, Fachbereich Informatik, Diplomarbeit, 1993.

[Eir9x] Eirund, H.: Multimedia User Interfaces. In: Mühlhäuser, M. (Herausgeber): Advanced Multimedia Systems and Applications. Erscheint in: Meckler Publishing Corp., 199x.

[Göt94] Götze, R.: Dialogmodellierung für multimediale Benutzerschnittstellen. Universität Oldenburg, Fachbereich Informatik, Dissertation, 1994.

[Voß93] Voßberg, L.: MediaManager - Eine Erweiterung von XFantasy um Multimedia-Klassen und Synchronisationsmechanismen. Universität Oldenburg, Fachbereich Informatik, Diplomarbeit, 1993.