state of the art and future directions in model management ... · institute of software technology...
TRANSCRIPT
![Page 1: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/1.jpg)
Business Informatics GroupInstitute of Software Technology and Interactive Systems Vienna University of TechnologyFavoritenstraße 9-11/188-3, 1040 Vienna, Austriaphone: +43 (1) 58801-18804 (secretary), fax: +43 (1) [email protected], www.big.tuwien.ac.at
State of the Art and Future Directions inModel Management Research
Japan-Austria Joint Workshop on ICT, October 18-19, 2010
Gerti Kappel
![Page 2: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/2.jpg)
Content
2
IntroductionModel-Driven Engineering and Model Management
Model Management Use Case I: Model Versioning
Model Management Use Case II: Model Co-Evolution
Résumé
Introduction Model Versioning Model Co-Evolution Rèsumè
![Page 3: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/3.jpg)
Content
3
IntroductionModel-Driven Engineering and Model Management
Model Management Use Case I: Model Versioning
Model Management Use Case II: Model Co-Evolution
Résumé
Introduction
Model Versioning Model Co-Evolution Rèsumè
![Page 4: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/4.jpg)
Model-Driven Engineering (MDE)Models, Models, Models, ...
Jean Bézivin. On the Unification Power of Models. Software and System Modeling 4(2), pages 171-188, 2005. 4
"Everything is a model"
Design Model
Analysis Model
Diff Model
Transformation Model
Weaving Model
Test Model
Metamodel
Change Model …
Metametamodel
![Page 5: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/5.jpg)
Model-Driven Engineering (MDE)
5
Models, Models, Models, ...
Mapping Feature A model is based on an original (=system)Reduction Feature A model only reflects a (relevant) selection
of an original‘s propertiesPragmatic Feature A model needs to be usable in place of an
original with respect to some purpose
Herbert Stachowiak. Allgemeine Modelltheorie. Springer, Wien, 1973.
ModelrepresentsSystem
![Page 6: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/6.jpg)
Model-Driven Engineering (MDE)
6
Building Block #1: Metamodeling
Thomas Kühne. Matters of (Meta-)Modeling. Software and System Modeling 5(4), pages 369-385, 2006.
Meta-Metamodel
Meta-Language
defines
Metamodel Languagedefines
Model represents System
«ins
tanc
eOf»
«ins
tanc
eOf»
expressed using
expressed using
![Page 7: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/7.jpg)
Model-Driven Engineering (MDE)
7
Building Block #2: Model Transformations
Transformation Specification
Model
Metamodel
«ins
tanc
eOf»
Model
Metamodel
«ins
tanc
eOf»
Krzysztof Czarnecki, Simon Helsen. Feature-based survey of model transformation approaches. IBM Systems Journal 45(3), pages 621-646, 2006.
Transformation
Engine
writesreadsex
ecut
es
![Page 8: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/8.jpg)
Model-Driven Engineering (MDE)Building Block #3: Model Management
8
"Everything is a model"
"No model is an island"
instanceOf
generatedFrom
abstractionOf
refinementOfoverlappingWith
equivalentWith
sameAs
crossCuttingWith…
![Page 9: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/9.jpg)
Model-Driven Engineering (MDE)Building Block #3: Model Management
Model of "No model is an island"
Model dependencies0..*
9
![Page 10: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/10.jpg)
Model ManagementOld wine in new bottles?
Origin: Data EngineeringResearch issue for decades since integration of heterogeneous databases (1970)
Current Status: Model Management 2.0Well-documented kinds of heterogeneitiesGlobal Model Management Operators
Diff, Merge, Match, Compose, ModelGen, TransGen, Inverse, …Much progress, but still many challenges
Ongoing Work: Model Management 3.0 = Model Management 2.0 + Model Engineering
Raising the level of abstractionToo many data models, formats, technologies, tools, …
Built on top of powerful model engineering technologies
10
P. Bernstein, S. Melnik. Model Management 2.0: Manipulating Richer Mappings.ACM SIGMOD 2007 Keynote, China, June 2007.
![Page 11: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/11.jpg)
Model Management
11
Old wine in new bottles?
Data Engineering Model Engineering
XMLSchemaDataModel
RelationalDataModel UML
aUMLModel
aSysMLModel
o1 o1 o1
SysML
MOFNo explicit formalism
o1
M1
M2
M3
M0
aRelationalModel
anXMLSchemaModel
LegendCorrespondences Transformation InstanceOf
![Page 12: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/12.jpg)
Model Management in a Nutshell
Model Management 2.0Predefined set of generic operators
Act upon models and produce modelsLimited set of model types
Models and MapsModel management scripts
Composition of given model management operators
1. Extensions for Model Management 3.0Scripts are object-oriented programsModels are typed based on their metamodelsOperators are tied to metamodelsOperators expect typed models as input and produce typed models as output
Thomas Reiter, Kerstin Altmanninger, Werner Retschitzegger. Think Global, Act Local: Implementing Model Management with Domain-Specific Integration Languages. Revised Selected Papers of Workshops and Symposia at MoDELS 2006, Springer LNCS 4363, pages 263-276, 2007.
12
![Page 13: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/13.jpg)
Model ManagementMotivating example: Exogenous merge
A.mark();B.mark();
Ecore AB = A.merge(B);
FullEquiv wa = AB.Fe_match(A);FullEquiv wb = AB.Fe_match(B);
Transformation ta = wa.generate();Transformation tb = wb.generate();
AB a? = a.ta();AB b? = b.tb();
AB ab? = a?.merge(b?);
1
23
4
5
6
AB*AB*
aa b?b? bb
ab?ab?
a?a?
2merge
6merge
FullEquiv3
4
55
4
3FullEquiv
A.mark();B.mark();
Ecore AB = A.merge(B);
FullEquiv wa = AB.Fe_match(A);FullEquiv wb = AB.Fe_match(B);
Transformation ta = w a.generate();Transformation tb = wb.generate();
AB a? = a.ta();AB b? = b.tb();
AB ab?= a?.merge(b?);
1
23
4
5
6
Ecore A = …Ecore B = …
Ecore AB = A.merge(B);
FullEquiv mapa = AB.FE_match(A );FullEquiv mapb = AB.FE_match(B);
Transformation ta= a.genTrafo();Transformation tb = b.genTrafo();
AB a' = a.ta();AB b' = b.tb();
AB ab' = a' .merge(b');
1
233
44
55
66
AB*AB*
aa b?b? bb
ab?ab?
a?a?
2merge
6merge
FullEquiv3
4
55
4
3FullEquiv
Ecore
AB
aa b?b' bb
ab?ab'
a?a'
2merge
66merge
FullEquiv33
44
5555
44
33FullEquiv
„Exogenous Merge“ Script
Model a = …Model b = …BA11 11
mapmap
11 11
13
![Page 14: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/14.jpg)
Content
14
IntroductionModeling, Model-Driven Engineering, and Model Management
Model Management Use Case I: Model Versioning
Model Management Use Case II: Model Co-Evolution
Résumé
Introduction Model Versioning Model Co-Evolution Rèsumè
![Page 15: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/15.jpg)
Model Management Use Case I: Model Versioning
15
Motivation
Some definitions of Software Engineering (SE) SE is defined as the multi-person construction of multi-version software– David Lorge ParnasSE deals with the building of software systems that are so large or so complex that they are built by teams of engineers– Carlo Ghezzi, Mehdi Jazayeri, and Dino Mandrioli
Implication for Model Engineering: Models must be built in teams!
Supportive Conflict Resolution
Precise Conflict Detection
![Page 16: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/16.jpg)
The Model Versioning Process Revised
16
AA
AA
A
A
A A
C
C
AA C
A
A
![Page 17: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/17.jpg)
Example 1: Contradicting Change
17
Person
PersongetName()
Person
![Page 18: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/18.jpg)
Example 2: Equivalent Change
18
Person
Employee
Person
Employee
Person
Employee
Person
![Page 19: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/19.jpg)
Example 2: Equivalent Change
19
Harder than we thought!?
Employee
Person
Employee
Person
Employee
Person
Employee
Person
Employee
Person
Employee
Person
Class
superClass
Generalization
subClasses
UML Metamodel V2
1..1 1..*
name:StringClasssuperClasses0..*
UML Metamodel V1
name:String
name=“Person“c1:Class
name=“Employee“c2:Class
name=“Employee“c3:Class
name=“Person“c1:Class
Sally Harry
name=“Person“c1:Class
name=“Employee“c2:Class
g1:Generalization
name=“Person“c1:Class
name=“Employee“c3:Class
g2:Generalization
Sally Harry
Met
amod
elM
odel
(AS
)M
odel
(CS
)
o1, o2 | o1.id = o2.ido1 ∈ Class, o2 ∈ Class | o1.name = o2.name
![Page 20: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/20.jpg)
Car Enginehas 1*Car Enginehas 1
Example 3: Syntactic Inconsistency
20
Car Enginehas
Car Enginehas* 1
![Page 21: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/21.jpg)
The AMOR Approach
21
Overview
Supportive Conflict Resolution
Precise Conflict Detection
Adaptable Versioning Framework
www.modelversioning.org
Gerti Kappel et al. Adaptable Model Versioning in Action. In Proc. of Modellierung 2010, GI, LNI 161, pages 221-236, 2010.
![Page 22: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/22.jpg)
Active
Versioning Example
22
State-based and generic merging
V0
V0’ V0’’
V1
Idle DialTone
Dialing
lift
dial
dial
hang_up
hang_up
Idle DialTone
Dialing
lift
dial
dial
cancel
cancel
Connect
cancel
valid
Idle DialTone
lift
dial
dial
hang_up
Dialing
![Page 23: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/23.jpg)
Active
Versioning Example
23
State-based and generic merging
V0
V0’ V0’’
V1
Idle DialTone
Dialing
lift
dial
dial
hang_up
hang_up
Idle DialTone
Dialing
lift
dial
dial
cancel
cancel
Connect
cancel
valid
Idlelift
hang_up
hang_up
Delete / Update
ActiveIdle
lift
cancel
Connect
cancel
valid
Update / UpdateDialTon
edial
dialDialing
DialTone
dial
dialDialing
![Page 24: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/24.jpg)
Active
Versioning Example
24
State-based and generic merging
V0
V0’ V0’’
V1
Idle DialTone
Dialing
lift
dial
dial
hang_up
hang_up
Idle DialTone
Dialing
lift
dial
dial
cancel
cancel
Connect
cancel
valid
Idlelift
hang_up
hang_up
Delete / Update
ActiveIdle
lift
cancel
Connect
cancel
valid
Update / UpdateDialTon
edial
dialDialing
DialTone
dial
dialDialing
Atomic changes:-Addition “Connect”-Rename of “hang_up”s
Refactoring:-Introduce Composite State
![Page 25: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/25.jpg)
Versioning Example
25
Operation-based and refactoring-aware merging
V0
Idle DialTone
Dialing
lift
dial
dial
hang_up
hang_up
Idle DialTone
Dialing
lift
dial
dial
cancel
cancel
Connect
cancel
valid
Atomic changes:-Addition “Connect”-Rename of “hang_up”s
ActiveIdle
lift
dialdial
cancelDialing
Connect
valid
Refactoring:-Introduce Composite State
DialTone
![Page 26: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/26.jpg)
Active
Versioning Example
26
Operation-based and refactoring-aware merging
V0
V0’ V0’’
V1
Idle DialTone
Dialing
lift
dial
dial
hang_up
hang_up
Idle DialTone
Dialing
lift
dial
dial
cancel
cancel
Connect
cancel
valid
Idlelift
hang_up
ActiveIdle DialTon
e
lift
dialdial
cancelDialing
Connect
valid
DialTone
dial
dialDialing
![Page 27: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/27.jpg)
Summary: Status Quo in Model Versioning Research
27
Few initial approaches No common terminologyNo common problem definitionNo exactly formulated research goalsNo test cases for comparison of model versioning systems
»Pre-Knowledge« Implicit Knowledge
Community Knowledge
Explicit Knowledge
Gerti Kappel et al. Why Model Versioning Research is needed!?. In Proc. of the Joint MoDSE-MCCM Workshop @ ModELS'09, 2009.
![Page 28: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/28.jpg)
Content
28
IntroductionModel-Driven Engineering, and Model Management
Model Management Use Case I: Model Versioning
Model Management Use Case II: Model Co-Evolution
Résumé
Introduction Model Versioning Model Co-Evolution Rèsumè
![Page 29: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/29.jpg)
Model Management Use Case II: Model Co-Evolution
29
Motivation
Term “Co-Evolution” borrowed from BiologyBiological co-evolution is the change of a biological entity triggered by the change of a related entity
One-to-one Relationships: Predator/Prey, Host/Symbiont, Host/Parasite, …Diffuse Relationships: An entity evolves in response to a number of other entities, each of which is also evolving in response to a set of entities
Co-Evolution in MDECo-evolution is the change of a model triggered by the change of a related modelCurrent View
Relationship: r(a,b)a → a’b → b’ | r(a’,b’)Challenge: Relationship Reconciliation
Current research focus is on one-to-one relationships
a a'
b b'
Δ
Δ
![Page 30: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/30.jpg)
Metamodeling Level
30
Metamodels are the central artefacts
Metamodel
Textual Concrete Syntax
Graphical Concrete Syntax
Models
Model 2 Model Transformations
Model 2 Code Transformations
OCL ConstraintsSimulators
![Page 31: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/31.jpg)
Metamodeling Level
31
Only models, i.e., instances of metamodels, are currently co-evolved!
Metamodel
Textual Concrete Syntax
Graphical Concrete Syntax
Models
Model 2 Model Transformations
Model 2 Code Transformations
OCL ConstraintsSimulators
![Page 32: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/32.jpg)
Metamodel/Model (Co-)Evolution
32
Example
A
D
B
D1 D2
Metamodel A
a1:A
a2:A
b1:B
b2:B
a1:A
a2:A
c1:C
c2:C
Instance of Metamodel A Instance of Metamodel A’
A
D
C
D1 D2
Metamodel A‘
Δ rename(B, C)
Δ cast(b:B, c:C)
Assumption: Renamed Class does not represent a new modeling concept!
Metamodel
Models
conf
orm
sTo
Gerti Kappel et al. On using Inplace Transformations for Model Co-Evolution. In Proc. of the 2nd International Workshop on Model Transformations with ATL (MtATL) @ ICMT’10, 2010.
![Page 33: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/33.jpg)
Metamodel/Transformation (Co-)Evolution
33
Initial example
MMa MMb
Source Metamodel
Targte Metamodelt1
t1 … Forward Transformation
![Page 34: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/34.jpg)
34
MMa MMb
MMb‘
Source Metamodel
Targte Metamodel
Evolution
t1
t2
t1 … Forward Transformationt2 … Migration Transformation
v2.0
v3.0
Metamodel/Transformation (Co-)EvolutionTarget metamodel evolution
![Page 35: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/35.jpg)
Metamodel/Transformation (Co-)Evolution
35
Transformation composition for evolving existing transformations
MMa MMb
MMb‘
Source Metamodel
Targte Metamodel
Evolution
t1
t2
t1 … Forward Transformationt2 … Migration Transformation
v2.0
v3.0
t3 = t1 •t2
![Page 36: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/36.jpg)
Metamodel/Transformation (Co-)Evolution
36
First initial results for composing graph transformations
MMa MMb
MMb‘
Source Metamodel
Targte Metamodel
Evolution
t1
t2
Requirements on t3(1)Soundness and completeness(2)Elimination(3)Transitivity
v2.0
v3.0
t3 = t1 •t2
Manuel Wimmer et al. Towards Transformation Rule Composition. In Proc. of the 4th International Workshop on Multi-Paradigm Modeling (MPM) @ MoDELS‘10, 2010.
![Page 37: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/37.jpg)
Modeling Level using UML
37
Question 1: Are class diagrams in the centre of the development process?
Class Diagram
Use Case Diagram
Composite Structure Diagram
Component Diagram
Activity Diagram
Sequence Diagram
OCL ConstraintsState Diagram
Object Diagram
![Page 38: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/38.jpg)
Modeling Level using UML
38
Question 1: Are class diagrams in the centre of the development process?
Class Diagram
Use Case Diagram
Composite Structure Diagram
Component Diagram
Activity Diagram
Sequence Diagram
OCL ConstraintsState Diagram
Object Diagram
![Page 39: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/39.jpg)
Modeling Level using UML
39
Question 2: Do we have one-to-one relationships or diffuse relationships?
Class Diagram
Use Case Diagram
Composite Structure Diagram
Component Diagram
Activity Diagram
Sequence Diagram
OCL ConstraintsState Diagram
Object Diagram
![Page 40: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/40.jpg)
Modeling Level using UML
40
Question 2: Do we have one-to-one relationships or diffuse relationships?
Class Diagram
Use Case Diagram
Composite Structure Diagram
Component Diagram
Activity Diagram
Sequence Diagram
OCL ConstraintsState Diagram
Object Diagram
![Page 41: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/41.jpg)
Modeling Level using UML
41
Question 2: Do we have one-to-one relationships or diffuse relationships?
Class Diagram
Use Case Diagram
Composite Structure Diagram
Component Diagram
Activity Diagram
Sequence Diagram
OCL ConstraintsState Diagram
Object Diagram
«component»Change
Propagator
![Page 42: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/42.jpg)
Modeling Level using UML
42
Question 3: Who is the host and who is the parasite?
Class Diagram
Object Diagram
Traditional Database Engineering ViewUse the schema for populating the instances!
ConsequenceEach change in the Class Diagram has to be propagated to the Object Diagram
![Page 43: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/43.jpg)
Modeling Level using UML
43
Question 3: Who is the host and who is the parasite?
Object Diagram
Class Diagram
Prototype-based Engineering ViewAbstract the schema from the instances!
ConsequenceSome changes in the Object Diagram have to be to propagated to the Class Diagram
![Page 44: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/44.jpg)
Summary: Status Quo in Model Co-Evolution Research
44
Several initial approaches Metamodel/model (co-)evolution has been solved for syntactical issuesHuge number of different co-evolution scenariosOften no exactly formulated relationships between modelsNo publicly accessible model repositories for studying model co-evolution
»Pre-Knowledge« Implicit Knowledge
Community Knowledge
Explicit Knowledge
![Page 45: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/45.jpg)
Content
45
IntroductionModeling, Model-Driven Engineering, and Model Management
Model Management Use Case I: Model Versioning
Model Management Use Case II: Model Co-Evolution
Résumé
Introduction Model Versioning Model Co-Evolution Rèsumè
![Page 46: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/46.jpg)
Résumé
46
Model management infrastructure is the prerequisite for tackling evolution issues
Find a basic set of model management operatorsDiff, Merge, Patch, …Explore variations and properties of these operators
Extend existing tools with model management capabilitiesProvide a set of predefined operatorsProvide a common programming model for script development
Based on these scripting languages, provide tool support forVersioning, Co-evolution, Merging, …Users should be enabled to adapt predefined scripts
![Page 47: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/47.jpg)
RésuméModel management: lessons learned
• Provides terminology for evolution concerns
• Allows to reason on a high-level of abstraction
• Variations of operators are a must
• Says nothing about implementation of operators
• Some operators seem to be magical (e.g., match, merge, …)
• No approved programming model for script development
47
☺
☺
![Page 48: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/48.jpg)
RésuméFuture work needed!
Many research questions remain open in the field of MDE
What are the most important model management/evolution scenarios?
What is the sufficient set of model management operators?
What is an appropriate programming model for model management scripts?
How to implement model management operators?
How to verify model management operators?
Is a generic model management approach feasible?
48
![Page 49: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/49.jpg)
»Pre-Knowledge«
Practice of MDE
Appropriateness of some standards questionable (QVT, UML2) – not yet adoptedCASE-tool vendors jump on the MDE bandwagon
State of the Artin MDÉ 2010
Implicit Knowledge
Researchin MDE
Many different proposals, application areas and goalsE.g., Model Management, Mega-Modeling, Runtime Models, AOM,MDWE, DSM, …
CommunityKnowledge
Explicit Knowledge
Consolidation, Verificationand Industrialization
Résumé
49
Model Management in Model-Driven Engineering – Still enough to do :-!
![Page 50: State of the Art and Future Directions in Model Management ... · Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3,](https://reader033.vdocuments.mx/reader033/viewer/2022042223/5ec9fba9aa226c52ed29e62e/html5/thumbnails/50.jpg)
Thanks to …Petra BroschHorst KarglPhilip LangerThomas ReiterWerner RetschitzeggerWieland SchwingerMartina SeidlKonrad WielandManuel Wimmerand many more …
50