Upload
vergil-ratke
View
110
Download
2
Embed Size (px)
Citation preview
UML-basierte Modellierung von
MultimediaanwendungenStefan SauerGregor Engels
Universität Paderborn{sauer|engels}@uni-paderborn.de
Modellierung‘99 - Karlsruhe, 12. März 1999
UniPaderborn
Inhalt
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 1
UniPaderborn
• Motivation OMMMA Objektorientierte Modellierung von
Multimediaanwendungen
• Entwicklungsstrategie von OMMMA• Konzepte für OMMMA• OMMMA-L - die Sprache Diagrammtypen
Kombination der Diagrammtypen
• OMMMA-Tools• Ausblick: Resultate & Perspektiven
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
Objektorientierte Modellierung von Multimediaanwendungen
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
OMMMA: Charakteristika von MM-Anwendungeninteraktive SoftwareKomposition von MedienobjektenAnwendungsstruktur, MedienobjektePräsentation (GUI-Layout, Audio)Benutzerinteraktion, Ereignisverarbeitungvordefiniertes (echt)zeitliches Ablaufverhalten
Objektorientierte Modellierung von Multimediaanwendungen
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
OMMMA: Charakteristika von MM-Anwendungeninteraktive SoftwareKomposition von MedienobjektenAnwendungsstruktur, MedienobjektePräsentation (GUI-Layout, Audio)Benutzerinteraktion, Ereignisverarbeitungvordefiniertes (echt)zeitliches Ablaufverhalten
OMMMA: Modellierung von MM-Anwendungenunvollständiger MM-Entwicklungsprozeßintegrierte Modellierung der MM-AspekteZuordnung von Aspekten zu DiagrammtypenPragmatik: Verwendung & Kombination
Objektorientierte Modellierung von Multimediaanwendungen
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
OMMMA: Charakteristika von MM-Anwendungeninteraktive SoftwareKomposition von MedienobjektenAnwendungsstruktur, MedienobjektePräsentation (GUI-Layout, Audio)Benutzerinteraktion, Ereignisverarbeitungvordefiniertes (echt)zeitliches Ablaufverhalten
OMMMA: Modellierung von MM-Anwendungenunvollständiger MM-Entwicklungsprozeßintegrierte Modellierung der MM-AspekteZuordnung von Aspekten zu DiagrammtypenPragmatik: Verwendung & Kombination
OMMMA: OO-ModellierungStruktur & Dynamik, durchgängigesKonzept, ...
Objektorientierte Modellierung von Multimediaanwendungen
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
OMMMA: Charakteristika von MM-Anwendungeninteraktive SoftwareKomposition von MedienobjektenAnwendungsstruktur, MedienobjektePräsentation (GUI-Layout, Audio)Benutzerinteraktion, Ereignisverarbeitungvordefiniertes (echt)zeitliches Ablaufverhalten
OMMMA: Modellierung von MM-Anwendungenunvollständiger MM-Entwicklungsprozeßintegrierte Modellierung der MM-AspekteZuordnung von Aspekten zu DiagrammtypenPragmatik: Verwendung & Kombination
OMMMA: OO-ModellierungStruktur & Dynamik, durchgängigesKonzept, ...
Objektorientierte Modellierung von Multimediaanwendungen
UML: OMG-Standardallgemein
pure UML? nein:- Präsentation- zeitliches Ab- laufverhalten- Pragmatik
Motivation OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 2
UniPaderborn
OMMMA: Charakteristika von MM-Anwendungeninteraktive SoftwareKomposition von MedienobjektenAnwendungsstruktur, MedienobjektePräsentation (GUI-Layout, Audio)Benutzerinteraktion, Ereignisverarbeitungvordefiniertes (echt)zeitliches Ablaufverhalten
OMMMA: Modellierung von MM-Anwendungenunvollständiger MM-Entwicklungsprozeßintegrierte Modellierung der MM-AspekteZuordnung von Aspekten zu DiagrammtypenPragmatik: Verwendung & Kombination
OMMMA: OO-ModellierungStruktur & Dynamik, durchgängigesKonzept, ...
OMMMA-L
Objektorientierte Modellierung von Multimediaanwendungen
Integrierte,konsitente
MM-Modellierung
UML: OMG-Standardallgemein
pure UML? nein:- Präsentation(-)zeitliches Ab- laufverhalten- Pragmatik
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsschritte
Konzepte• Bestimmung der zu modellierenden Charakteristika; Beziehungen• Zuordnung zu MM-Aspekten
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsschritte
Konzepte
Sprachen (Syntax und Semantik)• Zuordnung von MM-Aspekten zu Diagrammtypen• Analyse vorhandener Sprachelemente in UML; Adaption & Erweiterung
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsschritte
Konzepte
Sprachen (Syntax und Semantik)
Methoden (Pragmatik)• Richtlinien für Verwendung und Kombination der Diagrammtypen
integriertes & konsistentes Anwendungsmodell
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsschritte
Konzepte
Sprachen (Syntax und Semantik)
Methoden (Pragmatik)
Formalisierung: Verfeinertes Metamodell (&
Semantikdefinition)
Entwicklungsstrategie für OMMMA
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 3
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur Objektorientierten Modellierung von MultiMedia-Anwendungen
Entwicklungsschritte
Konzepte
Sprachen (Syntax und Semantik)
Methoden (Pragmatik)
Formalisierung: Verfeinertes Metamodell (&
Semantikdefinition)
Werkzeuge (OMMMA-Tools)• syntaxgest. Editoren, Konsistenzprüfung; • Codegenerierung; Prozeßunterstützung
Beispielanwendung: Komponistenlexikon
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 4
UniPaderborn
Konzepte: Multimedia-Aspekte
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 5
UniPaderborn
AnwendungsstrukturMedienobjekte
Präsentation• GUI-Layout• Audio-Kanäle
BenutzerinterkationEreignisverarbeitung
vordefiniertes (echt-)zeitliches Ablaufverhalten
Erweiterung der MVC-Perspektive
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 6
UniPaderborn
UML MVCgenerische low-levelModellierungssprache
OMMMA-L MVCMM
Multimedia als „generische Domäne“
M C(V)
Einfluß
Evolution
View Model Controller
MultimediaModel
MMM CMMVMM
Erweiterung/Spezialisierung: Syntax; Semantik; Pragmatik
• Integration des MVC-Modells in die Modellierung
• Anpassung/Erweiterung für Multimediaanwendungen
Konzepte: Multimedia-Aspekte
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 5
UniPaderborn
AnwendungsstrukturMedienobjekte
Präsentation• GUI-Layout• Audio-Kanäle
BenutzerinterkationEreignisverarbeitung
vordefiniertes (echt-)zeitliches Ablaufverhalten
Erweitertes MVC: MVCMM
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 7
UniPaderborn
ModelView
Controller
Modeldynamic
Modelstatic
ApplicationLogic
Media
MMM
CMM
VMM
OMMMA-L - die Sprache
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 8
UniPaderborn
View
ControllerModelstatic
ApplicationLogic
Media
Model
Modeldynamic
Zustandsdiagramm
Layoutdiagramm
Klassendiagramm
Erweitertes Sequenzdiagramm
MMM
CMM
VMM
OMMMA-L Beispielanwendung: Komponistenlexikon
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 4
UniPaderborn
Klassendiagramm
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 9
UniPaderborn
• unveränderte UML-Notation
• Statisches Model Modelstatic eines MVCMM-Modells
• Zuordnung der statischen Anwendungsstruktur zu den
Medientypen
ContinousMedia DiscreteMedia
Animation
Media MMApplication
ApplicationUnit
11..*
11..*
TextImageGraphics
TextEntry
1
1
1
1
Portrait
1
1
1
1
MusicSheet
1
1
1
1
ComposerEntry
1
1
1
1
1
1..3
1
1..3
1
*
1
*
Video
MusicPiece*0..1 *0..1
1
2..*
1
2..*
Film
1
0..2
1
0..2
1
1
1
1
Audio
1
1..*
1
1..*
1
1
1
1
MMMstatic
Layoutdiagramm
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 10
UniPaderbornNeu
Modellierung des Layouts als Teil der Präsentation
• Layoutsichten: komponierbar• Bounding Box: Visualisierungsobjekte, Interaktionsobjekte
AlphabetArrowAnimation
ImageBox ImageVideoBox
Prev Rew StopPlay Pause FfwNext
HypertextBox
End
Prev1 Next1
LViewEnc
LViewCom
VMM
Zustandsdiagramm
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 11
UniPaderborn
• Interaktivität: dynamische Ablaufstruktur der gesamten MM-Anwendung• nahezu unverändert aus UML übernommen• Erweiterung von internen Transitionen: Ausführen eines Sequenzdiagramms Kopplung der ereignisgesteuerten mit der inhärent vordefinierten Ablaufdynamik
PlayMusic
do Music(M)
MMAStateDiagram
CMM
Erweitertes Sequenzdiagramm
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 12
UniPaderborn
Musicint MTitle KNMn: MusicSheet KNMa: MusicPiece Sym42a: MusicPieceSym42n: MusicSheet
L R L R[MTitle ==
Mozart1]
[MTitle ==
Mozart2]
ImageVideoBox
ImageVideoBox
0
T [s]
max 0,5max 0,2
2:10
0:25
Highlight: Marker
0:35HBox1
HBox2
HBox3
HBox4
0:35
0:35
0:25
MMMdynamic
OMMMA-L - die Sprache
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 8
UniPaderborn
View
ControllerModelstatic
ApplicationLogic
Media
Model
Modeldynamic
Zustandsdiagramm
Layoutdiagramm
Klassendiagramm
Erweitertes Sequenzdiagramm
MMM
CMM
VMM
OMMMA-L - die Sprache
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 12
UniPaderborn
View
ControllerModelstatic
ApplicationLogic
Media
Model
Modeldynamic
Zustandsdiagramm
Layoutdiagramm
Klassendiagramm
Erweitertes Sequenzdiagramm
+ Pragmatik
MMM
CMM
VMM
C
Mdynamic
Mstati
c
V
Pragmatik: Verwendung &Kombination der Diagrammtypen
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 13
UniPaderborn
C
Mdynamic
Mstati
c
V
Pragmatik: Verwendung &Kombination der Diagrammtypen
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 13
UniPaderborn
1..*
*
ContinousMedia DiscreteMedia MMApplicationApplicationUnit1
1..*
1
1..*
Portrait MusicSheet MusicPiece* 0..1* 0..1Film
Media
ApplicationEntity1..*
*
TextEntry
ComposerEntry
1
1..3
1
1..3
1
2..*
1
2..*
1
*
1
*
1
0..2
1
0..2
1
1
1
1
C
Mdynamic
Mstati
c
VUniPaderborn
Musicint MTitle KNMn: MusicSheet KNMa: MusiPiece
L R[MTitel ==
Mozart1]
ImageVideoBox
0
T [s ]
max 0,5max 0,2
2:10
Highlight: Marker
0:35HBox1
HBox2
HBox3
HBox4
0:35
0:35
0:25
1..*
*
ContinousMedia DiscreteMedia MMApplicationApplicationUnit1
1..*
1
1..*
Portrait MusicSheet MusicPiece* 0..1* 0..1Film
Media
ApplicationEntity1..*
*
TextEntry
ComposerEntry
1
1..3
1
1..3
1
2..*
1
2..*
1
*
1
*
1
0..2
1
0..2
1
1
1
1
C
Mdynamic
Mstati
c
VUniPaderborn
Musicint MTitle KNMn: MusicSheet KNMa: MusiPiece
L R[MTitel ==
Mozart1]
ImageVideoBox
0
T [s ]
max 0,5max 0,2
2:10
Highlight: Marker
0:35HBox1
HBox2
HBox3
HBox4
0:35
0:35
0:25
1..*
*
ContinousMedia DiscreteMedia MMApplicationApplicationUnit1
1..*
1
1..*
Portrait MusicSheet MusicPiece* 0..1* 0..1Film
Media
ApplicationEntity1..*
*
TextEntry
ComposerEntry
1
1..3
1
1..3
1
2..*
1
2..*
1
*
1
*
1
0..2
1
0..2
1
1
1
1
C
LViewHB
LViewEnc
LViewCom
HBox2HBox3
HBox4
HBox1Mdynamic
Mstati
c
VUniPaderborn
Musicint MTitle KNMn: MusicSheet KNMa: MusiPiece
L R[MTitel ==
Mozart1]
ImageVideoBox
0
T [s ]
max 0,5max 0,2
2:10
Highlight: Marker
0:35HBox1
HBox2
HBox3
HBox4
0:35
0:35
0:25
1..*
*
ContinousMedia DiscreteMedia MMApplicationApplicationUnit1
1..*
1
1..*
Portrait MusicSheet MusicPiece* 0..1* 0..1Film
Media
ApplicationEntity1..*
*
TextEntry
ComposerEntry
1
1..3
1
1..3
1
2..*
1
2..*
1
*
1
*
1
0..2
1
0..2
1
1
1
1
PlayMusic
do Music(M)
MMAStateDiagram
C
LViewHB
LViewEnc
LViewCom
HBox2HBox3
HBox4
HBox1Mdynamic
Mstati
c
VUniPaderborn
Musicint MTitle KNMn: MusicSheet KNMa: MusiPiece
L R[MTitel ==
Mozart1]
ImageVideoBox
0
T [s ]
max 0,5max 0,2
2:10
Highlight: Marker
0:35HBox1
HBox2
HBox3
HBox4
0:35
0:35
0:25
1..*
*
ContinousMedia DiscreteMedia MMApplicationApplicationUnit1
1..*
1
1..*
Portrait MusicSheet MusicPiece* 0..1* 0..1Film
Media
ApplicationEntity1..*
*
TextEntry
ComposerEntry
1
1..3
1
1..3
1
2..*
1
2..*
1
*
1
*
1
0..2
1
0..2
1
1
1
1
PlayMusic
do Music(M)
MMAStateDiagram
C
LViewHB
LViewEnc
LViewCom
HBox2HBox3
HBox4
HBox1
VUniPaderborn
Mdynamic
Mstati
c
OMMMA-Tools
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 14
UniPaderborn
Ausblick: Resultate & Perspektiven
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 15
UniPaderborn
OMMMA-L: UML-basierte Diagrammsprache zur OO-Modellierung von Multimedia-Anwendungen• Zuordnung von MM-Anwendungsaspekten zu Diagrammtypen• Konstrukte für spezifische MMA-Eigenschaften:
Sequenzdiagramm & Layoutdiagramm
• Pragmatik: Richtlinien für Kombination der Diagramme zu integriertem & konsistentem Anwendungsmodell• Verfeinertes Metamodell: Syntax und statische Semantik
OMMMA-Tools: Entwicklung eines Editors & Konsistenz-Checkers mit Anbindung an Rational Rose 98
größere Anwendungsbeispiele modellieren Codegenerierungskomponente nach Java Komposition und Dekomposition in Diagrammen
Vision: Spezialisierte Modellierungssprachen
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 16
UniPaderborn
UML MVCgenerische low-levelModellierungssprache
OMMMA-L MVCMM
Multimedia als „generische Domäne“
M C(V)
Einfluß
Evolution
View Model Controller
MultimediaModel
MMM CMMVMM
Erweiterung/Spezialisierung: Syntax; Semantik; Pragmatik
Vision: Spezialisierte Modellierungssprachen
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 16
UniPaderborn
UML MVCgenerische low-levelModellierungssprache
OMMMA-L MVCMM
Multimedia als „generische Domäne“
DomainMMMLs MVCDMM
+ domänenspez. Sprachelemente
M C(V)
Einfluß
Evolution
View Model Controller
MultimediaModel
DomainMultimediaModel
MMM CMMVMM
MDMM CDMMVDMM
Erweiterung/Spezialisierung: Syntax; Semantik; Pragmatik
Vision: Spezialisierte Modellierungssprachen
UML-basierte Modellierung von MM-Anwendungen Modellierung‘99 StS 12.03.99 16
UniPaderborn
UML MVCgenerische low-levelModellierungssprache
OMMMA-L MVCMM
Multimedia als „generische Domäne“
DomainMMMLs MVCDMM
+ domänenspez. Sprachelemente
M C(V)
Einfluß
Evolution
View Model Controller
MultimediaModel
DomainMultimediaModel
MMM CMMVMM
MDMM CDMMVDMM
Metamodell - Stereotyping + ConstraintsAbb. auf generischen Formalismus