EMF Views:
A View Mechanism for
Integrating Heterogeneous Models
Hugo Bruneliere, Jokin Garcia,
Manuel Wimmer and Jordi Cabot
ER 2015 @ Stockholm, Sweden
Monday 19th of October 2015
Model Views – (Industrial) Motivation
Model Views – Base Idea
Modeling
World
Database
World
IT Architect
Decision-maker
IT Engineer
SELECT
PROJECT
JOIN
Model Views – State-of-the-art (1/3)
● Views in databases (relational, OO)
● Views in modeling languages (UML, ER)
 intra-model ones...
● What about inter-model views?
Model Views – State-of-the-art (2/3)
● Multi-viewpoint modeling
o Single base, generative, mappings...
Model a3
Model a2
Model a1
Multi-viewpoint
Mechanism
Model a
Model Views – State-of-the-art (3/3)
● Traditional model composition
o Common model (~view) from connected ones
o Merge, inheritance, generative...
Model c
Model b
Model a
Composition
Mechanism
Model abc
Model Views – Key Challenges (1/2)
● Genericity
o All modeling languages
● Expressivity
o SELECT-PROJECT-JOIN-like
● Non-intrusiveness
o Existing models preserved
● Interoperability
o View = regular model
Model Views – Key Challenges (2/2)
● Modifiability
o Changeables views
● Synchronization
o View ↔ Model(s)
● Scalability
o View creation/handling,
memory vs. CPU
EMF Views – Proposition/Contribution
Model view approach for easier
heterogenous models integration
Virtualization framework for viewpoints/views
SQL-like ViewPoint Definition Language
(a.k.a. VPDL)
EMF Views – Conceptual Approach
View Builder
(Virtualization)
Viewpoint Builder
(Virtualization)
Mode l c
Model b
Metamodel C
Runtime
Design time1
2
Viewpoint
(virtual
metamodel)
View
(virtual model)
Metamodel B
Metamodel A
Model a
Conforms to
Conforms to
Weaving
model
VPDL fileDesigner
Weaving
model
User
EMF Views – @ Design Time
m2t
Viewpoint
Builder
(Virtualization)
Weaving model
Viewpoint file
VPDL file
Designer
Matching file
Refers to
Metamodel C
Metamodel B
Metamodel A
EMF Views – @ Runtime
View
Builder
(Virtualization)
Weaving model
User
View file
generation
Viewpoint file
(+ matching file)
Refers to
Model c
Model b
Model a
EMF Views –
ViewPoint Definition Language (1/2)
Operator Description
CREATE VIEW
Name,
contributing metamodels
SELECT
Attributes/relations to be shown
(or * for all)
FROM (JOIN)
Linked concepts,
name of new relations
WHERE
(OCL) constraints for filters,
connections, etc.
EMF Views –
ViewPoint Definition Language (2/2)
● Simple viewpoint definition 
TOGAF/BPMN/ReqIf integration...
EMF Views – Eclipse-based tooling
● Short demonstration...
Conclusion & Future Work
● Model view approach
o Architecture + DSL
o EMF-based solution
● What’s next?
o VPDL v1.x or v2.0...
o View update problem...
o Persistence…
o Validation…
Questions? Comments?
● http://atlanmod.github.io/emfviews
● Contact persons:
o Hugo Bruneliere - hugo.bruneliere@inria.fr
o Jokin Garcia (impl.) - jokin.garcia-perez@inria.fr

ER 2015 EMFViews

  • 1.
    EMF Views: A ViewMechanism for Integrating Heterogeneous Models Hugo Bruneliere, Jokin Garcia, Manuel Wimmer and Jordi Cabot ER 2015 @ Stockholm, Sweden Monday 19th of October 2015
  • 2.
    Model Views –(Industrial) Motivation
  • 3.
    Model Views –Base Idea Modeling World Database World IT Architect Decision-maker IT Engineer SELECT PROJECT JOIN
  • 4.
    Model Views –State-of-the-art (1/3) ● Views in databases (relational, OO) ● Views in modeling languages (UML, ER)  intra-model ones... ● What about inter-model views?
  • 5.
    Model Views –State-of-the-art (2/3) ● Multi-viewpoint modeling o Single base, generative, mappings... Model a3 Model a2 Model a1 Multi-viewpoint Mechanism Model a
  • 6.
    Model Views –State-of-the-art (3/3) ● Traditional model composition o Common model (~view) from connected ones o Merge, inheritance, generative... Model c Model b Model a Composition Mechanism Model abc
  • 7.
    Model Views –Key Challenges (1/2) ● Genericity o All modeling languages ● Expressivity o SELECT-PROJECT-JOIN-like ● Non-intrusiveness o Existing models preserved ● Interoperability o View = regular model
  • 8.
    Model Views –Key Challenges (2/2) ● Modifiability o Changeables views ● Synchronization o View ↔ Model(s) ● Scalability o View creation/handling, memory vs. CPU
  • 9.
    EMF Views –Proposition/Contribution Model view approach for easier heterogenous models integration Virtualization framework for viewpoints/views SQL-like ViewPoint Definition Language (a.k.a. VPDL)
  • 10.
    EMF Views –Conceptual Approach View Builder (Virtualization) Viewpoint Builder (Virtualization) Mode l c Model b Metamodel C Runtime Design time1 2 Viewpoint (virtual metamodel) View (virtual model) Metamodel B Metamodel A Model a Conforms to Conforms to Weaving model VPDL fileDesigner Weaving model User
  • 11.
    EMF Views –@ Design Time m2t Viewpoint Builder (Virtualization) Weaving model Viewpoint file VPDL file Designer Matching file Refers to Metamodel C Metamodel B Metamodel A
  • 12.
    EMF Views –@ Runtime View Builder (Virtualization) Weaving model User View file generation Viewpoint file (+ matching file) Refers to Model c Model b Model a
  • 13.
    EMF Views – ViewPointDefinition Language (1/2) Operator Description CREATE VIEW Name, contributing metamodels SELECT Attributes/relations to be shown (or * for all) FROM (JOIN) Linked concepts, name of new relations WHERE (OCL) constraints for filters, connections, etc.
  • 14.
    EMF Views – ViewPointDefinition Language (2/2) ● Simple viewpoint definition  TOGAF/BPMN/ReqIf integration...
  • 15.
    EMF Views –Eclipse-based tooling ● Short demonstration...
  • 16.
    Conclusion & FutureWork ● Model view approach o Architecture + DSL o EMF-based solution ● What’s next? o VPDL v1.x or v2.0... o View update problem... o Persistence… o Validation…
  • 17.
    Questions? Comments? ● http://atlanmod.github.io/emfviews ●Contact persons: o Hugo Bruneliere - hugo.bruneliere@inria.fr o Jokin Garcia (impl.) - jokin.garcia-perez@inria.fr