FKZ 01IS08034-C
Übersicht
Mashup Composition (Meta) Model
Überblick
Diese Seite ist IN ARBEIT und bietet zusätzliche Informationen zum Mashup-Kompositionsmodell.
Teilmodelle
Das CRUISe-Metamodell hat fünf Teilmodelle, die im Modell durch entsprechende Container-Klassen repräsentiert sind. Diese sind:
- ConceptualModel
Das wichtigste Teilmodell enthält Referenzen auf alle Komponenten aus denen das beschriebene Mashup besteht. Desweiteren enthält es eine Beschreibung der Laufzeit-Umgebung der CRUISe-Anwendung, sowie die Repräsentation des Anwendungs-Kontexts (Location etc.) im Modell.
- LayoutModel
Dieses Modell beschreibt ausschließlich das Layout der UI-Komponenten auf dem Schirm. Der Stil der Beschreibung entspricht mehr dem Stil von Desktop-GUI Frameworks ald dem Stil von HTML+CSS, der üblichweise bei Webanwendungen zur Anwendung kommt. In diesem Modell können auch mehrere Layouts enthalten sein, um die verschiedene "Screens" (oder States) der Anwendung darzustellen. Damit beschreibt das Modell auch, welche Komponenten in welchem View erscheinen. Nicht beschrieben ist wie diese Views verbunden sind, d.h. wann die Anwendung von einem zum anderen wechselt. Diese Verknüpfungen sind im ScreenflowModel enthalten.
- ScreenflowModel
Dieses Modell beschreibt welche Übergänge von einem View zu einem anderen möglich sind, und unter welchen Bedingungen (eintreten bestimmter Events) diese eintreten.
- CommunicationModel
Dieses Model beschreibt die Kommunikation zwischen den verschiedenen Komponenten des Mashups. Dabei werden Publisher und Subscriber mittels getypter Kanäle verbunden. Desweiteren können ParameterMappings definiert werden, die Abbildungen zwischen den Ausgabe-Parametern eines Events unden Eingabe-Parametern einer Operation beschreiben.
- AdaptivityModel
Dieses Modell erlaubt es im Stile der aspektorientierten Programmierung dynamische Veränderungen einer Anwendung zu definieren. Dazu werden Bedingungen festgelegt, unter denen eine solche Veränderung eintritt (Events und Conditions über diesen Events). Es können fast beliebige Veränderungen des Anwendungsmodells durch Pointcuts und Advice modeliert werden.
Spezifikation (Metamodell)
Wie die gesamte Projektinfrastruktur unterliegt auch das Metamodell zur Beschreibung von Mashups einem regelmäßigen Release-Zyklus. Im folgenden finden sich die entsprechenden Spezifikationen bzw. Schemata.
Version 1.9 (August 2012)
Beispiele
Im folgenden finden sich einige beispielhafte MCM-Instanzen sowie der zugehörige MCM-Editor.
Version 1.9 (August 2012)
- TravelMash (MCM)
Eine Anwendung, die die Konzert- und Hotelsuche in der Umgebung erlaubt und mit der Routensuche (ÖPNV) verbindet.
- StockMash (MCM)
Eine Anwendung, die die Verwaltung eines Aktiendepots durch die Verknüpfung entsprechender Datendienste und UI-Komponenten erlaubt. Aktien können verglichen und (exemplarisch) gekauft werden. Hier finden insbesondere die erweiterten Kommunikationskanäle, einschließlich Drag-and-Drop, Anwendung.
- MCM Editor
Ein (Ecore-)Editor zur Erstellung und Manipulation von Mashup-Kompositionsmodellen.
Hintergrundinformationen/Literatur
- Stefan Pietschmann, Vincent Tietz, Jan Reimann, Christian Liebing, Michèl Pohle und Klaus Meißner
A Metamodel for Context-Aware Component-Based Mashup Applications
In Proc. of the 12th International Conference on Information Integration and Web-based Applications & Services (iiWAS 2010), ACM, ISBN 978-1-4503-0421-4, November 2010. Bibtex
- Stefan Pietschmann
A Model-Driven Development Process and Runtime Platform for Adaptive Composite Web Applications
In International Journal On Advances in Internet Technology (IntTech), vol. 4, no. 2, 2009 (published March 2010). Bibtex
- ...