SlideShare uma empresa Scribd logo
1 de 63
Baixar para ler offline
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Executable Metamodeling for Model V&V
Benoît Combemale
University of Rennes 1,
TRISKELL team (IRISA & INRIA)
benoit.combemale@irisa.fr
May 25, 2010
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 1 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Short CV
2009 – ... Associate Professor
University of Rennes 1, Triskell team (INRIA & IRISA, Fr.).
Research Interests: MDE, MDLE, Formal behavioral semantics of languages, V&V,
Models@runtime
2008 – 2009 Post-Doctoral Fellow
EMN, AtlanMod team (EMN & INRIA, Fr.).
Research Interests: Infinite Model (Definition and Transformation)
2005 – 2008 PhD Candidate
INPT ENSEEIHT, ACADIE team (IRIT, Fr.).
PhD Thesis: « Metamodeling Approach for Model Simulation and Verification »
2004 – 2005 M.Sc. « Software Safety »
ENSEEIHT (INPT), ISYCOM team (GRIMM, Fr.)
Master Thesis: « Specification and Verification of Process Model »
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 2 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
Modèle
<<représente>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
Concepteur
Modèle
<<représente>>
Langage
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
générateurs
Concepteur
simulateurs
vérificateurs
Modèle
<<représente>>
Langage
éditeur
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
générateurs
Concepteur
simulateurs
vérificateurs
Modèle
<<représente>>
Langage
éditeur
Méta
Modèle
<<représente>>
<<conformeA>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
générateurs
Concepteur
simulateurs
vérificateurs
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
DSML
éditeur
Concepteur
DSML
Concepteur
DSML
Concepteur
DSML
DSML = Domain Specific Modeling Language
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Context
générateurs
Concepteur
simulateurs
vérificateurs
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Objectives
générateurs
Concepteur
simulateurs
vérificateurs
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
Modèle
<<représente>>
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
générateurs
Concepteur
simulateurs
vérificateurs
DSML
éditeur
Methodological foundations for executable metamodeling
To capture the necessary information in metamodel for model execution,
To support generative approaches that ease the definition of V&V tools.
Formal foundations for executable metamodeling
To validate the use of formal verification tools,
To validate the consistencies between the use of different tools.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 4 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Operational Semantics Vs. Translational Semantics
MyDSML
Metamodel
Rules
endogenous
transformation
Operational Semantics
+ intuitive definition,
− requires to define tools (e.g.,
V&V) for each DSML.
MyDSML
Metamodel
FormalDomain
Data
Structure
Rules
exogenous
transformation
Translational Semantics
− expression of semantic equivalences,
+ allows to reuse existing tools (in the
target domain).
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 5 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
DSML semantics using operational semantics
May be achieved thanks to :
meta-programming language (kermeta, action language. . . )
startable() Operation : Kermeta code
operation startable() : Boolean is do
var start_ok : kermeta::standard::Boolean
var previousActivities : seq Activity [0..*]
var prevPrecedes : seq Precedes [0..*]
if progress==-1 then
// Getting the activities which have to be started
prevPrecedes := previous.select{p | p.kind ==
PrecedenceKind.pk_start_start }
previousActivities := prevPrecedes.collect{p | p.before}
start_ok := previousActivities.forAll{a | a.progress >= 0}
// Getting the activities which have to be finished
prevPrecedes := previous.select{p | p.kind ==
PrecedenceKind.pk_finish_start }
previousActivities := prevPrecedes.collect{p | p.before}
start_ok := start_ok and
(previousActivities.forAll{a | a.progress==100})
result := start_ok or (previous.size() == 0)
else
result := false
end
end
endogenous transformations (ATL. . . )
Main advantage: Deals with concepts related to the DSL.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 6 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
DSML semantics using translational semantics
Example : Mapping a SimplePDL model into a time Petri net one to use the
TINA toolkit.
SimplePDL
.ecore
Process
.pdl
PDL2PN
.atl
Process
.net
Properties
.ltl
Tina
ATL<<instanceOf>> Process
.Petri
Net
Petrinet
.ecore
<<instanceOf>>
Main advantage: reuse the tools available in the target technical space.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 7 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Contributions
Executable
Metamodeling Approach
FinishToStart
FinishToStart
FinishToStart
Formal Verification
by Model-Checking
Model Simulation
by Graphical Animation
Formal Foundations for
Executable Metamodeling
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 8 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Outline
1 Context and Objectives
2 Executable Metamodeling Approach to Support Model V&V
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
3 Formal Foundations for Executable Metamodeling
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Intuitive approach
Formal definitions
Application to EMOF and OMG pyramid issues
4 Conclusion & Future Works
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 9 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Outline
1 Context and Objectives
2 Executable Metamodeling Approach to Support Model V&V
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
3 Formal Foundations for Executable Metamodeling
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Intuitive approach
Formal definitions
Application to EMOF and OMG pyramid issues
4 Conclusion & Future Works
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 10 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
A Design Pattern for Executable DSML
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>>
<<merge>>
<<merge>>
Trace Management
MetaModel
TM3
<<import>>
Semantics
Mapping
Semantics
Action Language or
Model Transformation
Metamodeling Language
(e.g., MOF)
MetaMetaModel
(M3)
MetaModel
(M2)
<<conformsTo>>
<<conformsTo>>
<<triggeredBy>>
<<changes>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 11 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
A Design Pattern for Executable DSML
Domain Definition MetaModel (DDMM)
Capture the structural information (domain specific concepts, their
relationships and their constraints.
States Definition MetaModel (SDMM)
Capture the "dynamic" information, characterizing the whole possible states of
model (during execution).
Events Definition MetaModel (EDMM)
Capture the events (and their parameters) that evolve the model execution.
Trace Management MetaModel (TM3)
Capture sets of event through traces and scenarios.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 12 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
A Design Pattern for Executable DSML
Domain Definition MetaModel (DDMM)
States Definition MetaModel (SDMM)
Events Definition MetaModel (EDMM)
Trace Management MetaModel (TM3)
A Design Pattern for Executable DSML
Lm =< AS,CS∗,M∗
ac,SD,Mas >, s.t.
AS = {DDMM,SDMM,EDMM}∪{TM3}
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 13 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
Animator
Editor
Scenario
Builder
Trace Management
MetaModel
TM3
<<import>>
Execution Engine
& Control Panel
Figure: DSML-based Tooling
Control
Panel
Graphical
Animator
MDDMM
Scenario
Builder
Model Execution Framework
Generic Execution Engine
A Semantics for an
Executable Language
Graphical
Editor
MEDMM
MSDMM
control
update
create
create
use
update
use
visualize
Figure: Interactions between Components
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 14 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
Trace Management
MetaModel
TM3
<<import>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
reactionOnEv1()
...
reactionOnEvN()
Semantics2
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
reactionOnEv1()
...
reactionOnEvN()
Semantics
reactionOnEv1()
...
reactionOnEvN()
Semantics1
Trace Management
MetaModel
TM3
<<import>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
reactionOnEv1()
...
reactionOnEvN()
Semantics2
Action Languages
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
reactionOnEv1()
...
reactionOnEvN()
Semantics
reactionOnEv1()
...
reactionOnEvN()
Semantics1
Trace Management
MetaModel
TM3
<<import>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
reactionOnEv1()
...
reactionOnEvN()
Semantics2
Action Languages
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
reactionOnEv1()
...
reactionOnEvN()
Semantics
reactionOnEv1()
...
reactionOnEvN()
Semantics1
Trace Management
MetaModel
TM3
<<import>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
reactionOnEv1()
...
reactionOnEvN()
Semantics2
Action Languages
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
reactionOnEv1()
...
reactionOnEvN()
Semantics
reactionOnEv1()
...
reactionOnEvN()
Semantics1
Trace Management
MetaModel
TM3
<<import>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
reactionOnEv1()
...
reactionOnEvN()
Semantics2
Action Languages
Events Definition
MetaModel
EDMM
Domain Definition
MetaModel
DDMM
States Definition
MetaModel
SDMM
<<merge>><<merge>>
<<merge>>
reactionOnEv1()
...
reactionOnEvN()
Semantics
reactionOnEv1()
...
reactionOnEvN()
Semantics1
Animateur
Editeur
Constructeur
de scénario
Trace Management
MetaModel
TM3
<<import>>
Moteur de simulation &
panneau de contrôle
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Graphical
Editor
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Graphical
Editor
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Scenario
Builder
Graphical
Editor
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Scenario
Builder
Graphical
Editor
MEDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Scenario
Builder
Simulation Engine
Graphical
Editor
MEDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
MSDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Graphical
Animator
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
MSDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Graphical
Animator
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
MSDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Graphical
Animator
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
MSDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Model Simulation
Control
Panel
Graphical
Animator
MDDMM
Scenario
Builder
Simulation Engine
Generic Simulation Engine
DSML_1
Semantics
Graphical
Editor
MEDMM
MSDMM
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
myProcess
.xspem
myProcess
.net
<<conformsTo>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
myProcess
.net
<<conformsTo>>
<<conformsTo>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
xSPEM2
PetriNet
.atl
myProcess
.net
<<conformsTo>>
<<conformsTo>>
ATL
(M2M)
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
xSPEM2
PetriNet
.atl
myProcess
.net
<<conformsTo>>
<<conformsTo>>
ATL
(M2M)
Tina.tcs
TCS
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
xSPEM2
PetriNet
.atl
myProcess
.net
<<conformsTo>>
<<conformsTo>>
ATL
(M2M)
Tina.tcs
TCS
DDMM: réseau de Petri (RdP)
SDMM: marquage du RdP
EDMM: preuve de bisimulation
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
Tina
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
xSPEM2
PetriNet
.atl
myProcess
.net
<<conformsTo>>
<<conformsTo>>
ATL
(M2M)
Tina.tcs
TCS
DDMM: réseau de Petri (RdP)
SDMM: marquage du RdP
EDMM: preuve de bisimulation
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
Using the Design Pattern for Formal Verification
ATL
(M2T)
Tina
xSPEM
.ecore
PetriNet
.ecore
myProcess
.xspem
myProcess
.PetriNet
xSPEM2
PetriNet
.atl
myProcess
.net
<<conformsTo>>
<<conformsTo>>
ATL
(M2M)
Tina.tcs
TCS
properties
.ltl
TOCL
.ecore
properties
.tocl
<<conformsTo>>
<<use>>
TOCL2
LTL
.atl
<<dependOn>>
DDMM: réseau de Petri (RdP)
SDMM: marquage du RdP
EDMM: preuve de bisimulation
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Outline
1 Context and Objectives
2 Executable Metamodeling Approach to Support Model V&V
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
3 Formal Foundations for Executable Metamodeling
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Intuitive approach
Formal definitions
Application to EMOF and OMG pyramid issues
4 Conclusion & Future Works
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 18 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Consistency of multiple semantics
Usefulness of several semantics
Define operational semantics for model interpretation.
Define translational semantics to reuse tools or code generation.
Problem
How to assert that all the defined semantics are consistent?
Our solution
Defining a framework based on formal tools like the COQ proof assistant to
1 define operational semantics of the DSL (called reference semantics)
2 define operational semantics of the technical space (semantic domain)
3 express the mapping from the DSL to the semantic domain
4 prove the equivalence of translational semantics and reference semantics
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 19 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Issues
How to formally express the concepts of
models, metamodels,
meta-metamodels. . . ?
⇒ what are their various types ?
⇒ what is the encoding in a formal domain
semantics ?
With this encoding, how to express the
structural and behavioral semantics ?
⇒ does a model conform to its language ?
⇒ are two languages equivalent from a
structural or behavioral point of view ?
Warning: the OMG vision being one
of the possible MDE view... The
framework must be more general.
M1
M
0
M2
M3
metamodel(UML, SPEM...)
model(UML models...)
"real" world
metametamodel
(MOF)
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 20 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
ReferenceModel and Model
Intuitive approach
REFERENCEMODEL ( concepts,relations,semantics ):
modelling language from which one can define a family of models,
specifies the semantic properties of its models.
MODEL ( objects,links ): the instance level.
Model (M) ReferenceModel (RM)
<<promotionOf>>
<<conformsTo>>
A model MUST conform to a RM.
A RM may be directly defined.
A RM may be obtained as the promotion of a model.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 21 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Conformity and Promotion
Intuitive approach
Conformity
1 Every object o in M is the instance of a class C in RM;
2 Every link between two objects is such that it exists, in RM, a reference
between the two classes typing the two elements.
3 Every semantic property defined in RM is satisfied in M.
Promotion
1 Identify the different concepts among the model elements.
2 Identify relations between the previous concepts.
3 Define the different semantic properties that must hold on the models that
conform to the Reference Model.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 22 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Formal Approach
General Definitions
Let us consider:
Definition
Classes the set of all possible classes,
References the set of reference labels,
Objects the set of instances of such classes.
Definition
C ⊆ Classes be a set of classes,
R ⊆ { c1,r,c2 | c1,c2 ∈ C ,r ∈References} be the set of references
among classes where
∀c1 ∈ C ,r ∈References, card{ c1,r,c2 ∈ R} ≤ 1.
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 23 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Formal Approach
Model and ReferenceModel
Definition (Model)
A model MV,ME ∈ Model(C ,R) is a multigraph built over a finite set MV of
typed objects and a finite set ME of typed edges such that:
MV ⊆ { o,c | o ∈ Objects,c ∈ C }
ME ⊆ o1,c1 ,r, o2,c2 o1,c1 , o2,c2 ∈ MV, c1,r,c2 ∈ R
Definition (ReferenceModel)
A reference model (RV,RE),conformsTo is a multigraph built over a finite
set RV of classes and a finite set RE of references, with semantic properties
over the instances of both classes and references.
RV ⊆ Classes
RE ⊆ { c1,r,c2 | c1,c2 ∈ RV,r ∈ References}
conformsTo : Model(RV,RE) → Bool
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 24 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
EMOF Core as a Reference Model
Traditional notation (class diagram notation)
Property
lower: Natural⊤ = 1
upper : Natural⊤ = 1
isOrdered : Boolean = false
isComposite: Boolean = false
default: String = ""
Class
isAbstract: Boolean = false
{ordered} 0..*
ownedAttribute
0..1
opposite
NamedElement
name: String
0..*
superClass
Type TypedElement
type
1
DataType
Boolean String Natural
owner
⊤
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 25 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
EMOF Core as a Reference Model
Formal notation
Definition (EMOF Core)
The EMOF Core Reference Model is RV,RE ,conformsTo where :
RV { NamedElement,Type,TypedElement,DataType,Boolean,
String,Natural ,Class,Property }
RE { Class,ownedAttribute,Property , Class,isAbstract,Boolean ,
Class,inh,Type ,... }
conformsTo( MV,ME ) MV,ME ∈ Model(RV, RE)
∧ lower(TypedElement,type,1)
∧ upper(TypedElement,type,1)
∧ and other semantic properties (next slide)...
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 26 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
EMOF Core as a Reference Model: semantics
Definition (Lower Property)
lower(c1 ∈ RV,r1 ∈ RE,n ∈ Natural ) MV,ME →
∀ o,c ∈ MV,c = c1 ⇒ card({m2 ∈ MV | o,c1 ,r1,m2 ∈ ME}) ≥ n
Definition (Opposite Property)
isOpposite(r1,r2 ∈ RE) MV,ME →
∀m1,m2 ∈ MV, m1,r1,m2 ∈ ME ⇔ m2,r2,m1 ∈ ME
Definition (Abstract Classes)
isAbstract(r ∈ RE,c1 ∈ RV) MV,ME →
∀ o,c ∈ MV,c = c1 ⇒ ∃c2 ∈ RV, o,c2 ,r, o,c1 ∈ ME
And also: upper, inheritance, composite, ordered. . . .
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 27 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
An Evaluation of COQ4MDE
Formalization of the EMOF_Core
reference model (MCMOF ).
MOF:MC
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
An Evaluation of COQ4MDE
Formalization of the EMOF_Core
reference model (MCMOF ).
Verification of the EMOF_Core
metacircularity: definition of the MMOF
model conforms to MCMOF , and the
promotion P, s.t. P(MMOF ) = MCMOF
MOF:M
MOF:MC
<<promotionOf>>
<<conformsTo>>
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
An Evaluation of COQ4MDE
Formalization of the EMOF_Core
reference model (MCMOF ).
Verification of the EMOF_Core
metacircularity: definition of the MMOF
model conforms to MCMOF , and the
promotion P, s.t. P(MMOF ) = MCMOF
Formalization of the OMG’s pyramid.
MOF:M
MOF:MC
<<promotionOf>>
<<conformsTo>>
xSPEM:M xSPEM:MC
<<promotionOf>>
<<conformsTo>>
Process:M
<<conformsTo>>
Real World M0
M1
M2
M3
metametamodel
metamodel
model
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Outline
1 Context and Objectives
2 Executable Metamodeling Approach to Support Model V&V
A Design Pattern for Executable DSML
Application for Model Simulation
Application for Model Verification
3 Formal Foundations for Executable Metamodeling
Motivations & Issues
COQ4MDE: a Framework for (meta)Model Formalization
Intuitive approach
Formal definitions
Application to EMOF and OMG pyramid issues
4 Conclusion & Future Works
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 29 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Conclusion & Future Works
Main contributions:
Methodological foundations for executable metamodeling
⇒ a design pattern reifying information for model execution
⇒ application1
to define simulators (UML, SysML, SAM...), and
transformations to model checker (TINA).
Formal foundations for executable metamodeling
⇒ a formal framework implemented using the COQ proof assistant
⇒ application to formally verify properties preserving transformations.
Other contributions:
Use of the previous foundations for process engineering (definition of an
eXecutable SPEM2.0, with simulation and verification facilities) [APSEC’07],
Use of the previous foundations for models@runtime (specification and
formalization of adaptation policies) [MoDELS’08].
1
in the TOPCASED project (http://www.topcased.org)
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 30 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Research Program
Methodological and Formal Foundations for Executable Metamodeling
How to build an executable DSML ? What systematic approach ?
How to provide a formal support for MDE (executable metamodeling,
transformation, composition) ? can a theory of model be defined ?
⇒ Hope to define a generic and formal framework for model execution (based
on Kermeta).
Model Validation & Verification
How to integrate verification techniques by meta-approaches ?
How to combine verification techniques (mainly testing, simulation,
model-checking and proofs)
Models at runtime
How to consider adaptation policies like a DSML’s behavioral semantics ?
How to support V&V techniques at runtime ?
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 31 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Interests at CSU
To prepare collaboration about the use of MDE for hardware and
embedded systems,
To share experiences about semantics definition (e.g., fUML),
To define formal operator for model composition,
I am also (generally) open minded, and curious about funny and
challenging problems...
⇒ If you have this kind of problem, and the courage to bear my english...,
don’t hesitate !
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 32 / 33
Context and Objectives
Executable Metamodeling Approach to Support Model V&V
Formal Foundations for Executable Metamodeling
Conclusion & Future Works
Thank you
for your attention...
Questions?
B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 33 / 33

Mais conteúdo relacionado

Mais procurados

ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008William Piers
 
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Jordi Cabot
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfEd Seidewitz
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns pptAman Jain
 
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1Ed Seidewitz
 
Csc153 chapter 06
Csc153 chapter 06Csc153 chapter 06
Csc153 chapter 06PCC
 
Evolution in the Large and in the Small in Model-Driven Development
Evolution in the Large and in the Small in Model-Driven DevelopmentEvolution in the Large and in the Small in Model-Driven Development
Evolution in the Large and in the Small in Model-Driven DevelopmentAlfonso Pierantonio
 
9781111530532 ppt ch06
9781111530532 ppt ch069781111530532 ppt ch06
9781111530532 ppt ch06Terry Yoast
 
9781111530532 ppt ch08
9781111530532 ppt ch089781111530532 ppt ch08
9781111530532 ppt ch08Terry Yoast
 
UML: Once More with Meaning
UML: Once More with MeaningUML: Once More with Meaning
UML: Once More with MeaningEd Seidewitz
 
Code Generation 2014 - ALF, the Standard Programming Language for UML
Code Generation 2014  - ALF, the Standard Programming Language for UMLCode Generation 2014  - ALF, the Standard Programming Language for UML
Code Generation 2014 - ALF, the Standard Programming Language for UMLJürgen Mutschall
 
9781111530532 ppt ch07
9781111530532 ppt ch079781111530532 ppt ch07
9781111530532 ppt ch07Terry Yoast
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringJordi Cabot
 
9781111530532 ppt ch03
9781111530532 ppt ch039781111530532 ppt ch03
9781111530532 ppt ch03Terry Yoast
 
9781111530532 ppt ch12
9781111530532 ppt ch129781111530532 ppt ch12
9781111530532 ppt ch12Terry Yoast
 
9781111530532 ppt ch04
9781111530532 ppt ch049781111530532 ppt ch04
9781111530532 ppt ch04Terry Yoast
 

Mais procurados (17)

ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008
 
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
Explicating and Reasoning with Model Uncertainty by Marsha Chechik (ECMFA'14 ...
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and Alf
 
Design patterns ppt
Design patterns pptDesign patterns ppt
Design patterns ppt
 
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
 
Csc153 chapter 06
Csc153 chapter 06Csc153 chapter 06
Csc153 chapter 06
 
Evolution in the Large and in the Small in Model-Driven Development
Evolution in the Large and in the Small in Model-Driven DevelopmentEvolution in the Large and in the Small in Model-Driven Development
Evolution in the Large and in the Small in Model-Driven Development
 
5
55
5
 
9781111530532 ppt ch06
9781111530532 ppt ch069781111530532 ppt ch06
9781111530532 ppt ch06
 
9781111530532 ppt ch08
9781111530532 ppt ch089781111530532 ppt ch08
9781111530532 ppt ch08
 
UML: Once More with Meaning
UML: Once More with MeaningUML: Once More with Meaning
UML: Once More with Meaning
 
Code Generation 2014 - ALF, the Standard Programming Language for UML
Code Generation 2014  - ALF, the Standard Programming Language for UMLCode Generation 2014  - ALF, the Standard Programming Language for UML
Code Generation 2014 - ALF, the Standard Programming Language for UML
 
9781111530532 ppt ch07
9781111530532 ppt ch079781111530532 ppt ch07
9781111530532 ppt ch07
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software Engineering
 
9781111530532 ppt ch03
9781111530532 ppt ch039781111530532 ppt ch03
9781111530532 ppt ch03
 
9781111530532 ppt ch12
9781111530532 ppt ch129781111530532 ppt ch12
9781111530532 ppt ch12
 
9781111530532 ppt ch04
9781111530532 ppt ch049781111530532 ppt ch04
9781111530532 ppt ch04
 

Semelhante a Executable Metamodeling for Model V&V (May 25th, 2010)

Model Execution: Past, Present and Future
Model Execution: Past, Present and FutureModel Execution: Past, Present and Future
Model Execution: Past, Present and FutureBenoit Combemale
 
Multi-Robot Task Allocation using Meta-heuristic Optimization
Multi-Robot Task Allocation using Meta-heuristic OptimizationMulti-Robot Task Allocation using Meta-heuristic Optimization
Multi-Robot Task Allocation using Meta-heuristic OptimizationMohamed Ghanem
 
Precise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionPrecise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionEd Seidewitz
 
Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...Luca Berardinelli
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!melbats
 
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Hugo Bruneliere
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPAmit Midha
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPAmit Midha
 
Slides for a talk on search-based testing for Event-B models
Slides for a talk on search-based testing for Event-B modelsSlides for a talk on search-based testing for Event-B models
Slides for a talk on search-based testing for Event-B modelsAlin Stefanescu
 
TAROT2013 Testing School - Gilles Perrouin presentation
TAROT2013 Testing School -  Gilles Perrouin presentationTAROT2013 Testing School -  Gilles Perrouin presentation
TAROT2013 Testing School - Gilles Perrouin presentationHenry Muccini
 
Ui Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGFUi Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGFBENOIT_LANGLOIS
 
Breathe Life Into Your IDE
Breathe Life Into Your IDEBreathe Life Into Your IDE
Breathe Life Into Your IDEBenoit Combemale
 
MONDO Project, a scalable modeling and model management on the Cloud - Paris...
MONDO Project, a scalable modeling and model management on the Cloud  - Paris...MONDO Project, a scalable modeling and model management on the Cloud  - Paris...
MONDO Project, a scalable modeling and model management on the Cloud - Paris...Alessandra Bagnato
 
Concept Detection of Multiple Choice Questions using Transformer Based Models
Concept Detection of Multiple Choice Questions using Transformer Based ModelsConcept Detection of Multiple Choice Questions using Transformer Based Models
Concept Detection of Multiple Choice Questions using Transformer Based ModelsIRJET Journal
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)Jordi Cabot
 
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...Jean Vanderdonckt
 
Model Driven Method Engineering. A Supporting Infrastructure
Model Driven Method Engineering. A Supporting InfrastructureModel Driven Method Engineering. A Supporting Infrastructure
Model Driven Method Engineering. A Supporting InfrastructureMario Cervera
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!melbats
 

Semelhante a Executable Metamodeling for Model V&V (May 25th, 2010) (20)

Model Execution: Past, Present and Future
Model Execution: Past, Present and FutureModel Execution: Past, Present and Future
Model Execution: Past, Present and Future
 
Multi-Robot Task Allocation using Meta-heuristic Optimization
Multi-Robot Task Allocation using Meta-heuristic OptimizationMulti-Robot Task Allocation using Meta-heuristic Optimization
Multi-Robot Task Allocation using Meta-heuristic Optimization
 
Precise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionPrecise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the Vision
 
Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...Combining fUML and profiles for non-functional analysis based on model execut...
Combining fUML and profiles for non-functional analysis based on model execut...
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!
 
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
 
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOPUNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
 
Slides for a talk on search-based testing for Event-B models
Slides for a talk on search-based testing for Event-B modelsSlides for a talk on search-based testing for Event-B models
Slides for a talk on search-based testing for Event-B models
 
TAROT2013 Testing School - Gilles Perrouin presentation
TAROT2013 Testing School -  Gilles Perrouin presentationTAROT2013 Testing School -  Gilles Perrouin presentation
TAROT2013 Testing School - Gilles Perrouin presentation
 
Ui Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGFUi Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGF
 
Breathe Life Into Your IDE
Breathe Life Into Your IDEBreathe Life Into Your IDE
Breathe Life Into Your IDE
 
MONDO Project, a scalable modeling and model management on the Cloud - Paris...
MONDO Project, a scalable modeling and model management on the Cloud  - Paris...MONDO Project, a scalable modeling and model management on the Cloud  - Paris...
MONDO Project, a scalable modeling and model management on the Cloud - Paris...
 
Concept Detection of Multiple Choice Questions using Transformer Based Models
Concept Detection of Multiple Choice Questions using Transformer Based ModelsConcept Detection of Multiple Choice Questions using Transformer Based Models
Concept Detection of Multiple Choice Questions using Transformer Based Models
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
 
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...
 
ALT
ALTALT
ALT
 
Lloyd Mcallen
Lloyd McallenLloyd Mcallen
Lloyd Mcallen
 
Model Driven Method Engineering. A Supporting Infrastructure
Model Driven Method Engineering. A Supporting InfrastructureModel Driven Method Engineering. A Supporting Infrastructure
Model Driven Method Engineering. A Supporting Infrastructure
 
SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!SiriusCon 2015 - Breathe Life into Your Designer!
SiriusCon 2015 - Breathe Life into Your Designer!
 

Mais de Benoit Combemale

When Scientific Software Meets (Model-Driven) Software Engineering
When Scientific Software Meets (Model-Driven) Software EngineeringWhen Scientific Software Meets (Model-Driven) Software Engineering
When Scientific Software Meets (Model-Driven) Software EngineeringBenoit Combemale
 
Table ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesTable ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesBenoit Combemale
 
Towards Smart Modeling (Environments)
Towards Smart Modeling (Environments)Towards Smart Modeling (Environments)
Towards Smart Modeling (Environments)Benoit Combemale
 
SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019Benoit Combemale
 
Execution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioExecution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioBenoit Combemale
 
Smart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsSmart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsBenoit Combemale
 
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Benoit Combemale
 
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Benoit Combemale
 
Introduction of the SLE'17 conference
Introduction of the SLE'17 conferenceIntroduction of the SLE'17 conference
Introduction of the SLE'17 conferenceBenoit Combemale
 
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSEXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSBenoit Combemale
 
Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Benoit Combemale
 
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewSound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewBenoit Combemale
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for SustainabilityBenoit Combemale
 
Dynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingDynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingBenoit Combemale
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC StudioBenoit Combemale
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLBenoit Combemale
 
Experimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCExperimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCBenoit Combemale
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)Benoit Combemale
 

Mais de Benoit Combemale (20)

When Scientific Software Meets (Model-Driven) Software Engineering
When Scientific Software Meets (Model-Driven) Software EngineeringWhen Scientific Software Meets (Model-Driven) Software Engineering
When Scientific Software Meets (Model-Driven) Software Engineering
 
Table ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciencesTable ronde: les sciences du logiciel au croisement des autres sciences
Table ronde: les sciences du logiciel au croisement des autres sciences
 
Towards Smart Modeling (Environments)
Towards Smart Modeling (Environments)Towards Smart Modeling (Environments)
Towards Smart Modeling (Environments)
 
SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019SLE Most Influential Paper (MIP) Awards 2018 and 2019
SLE Most Influential Paper (MIP) Awards 2018 and 2019
 
Execution Framework of the GEMOC Studio
Execution Framework of the GEMOC StudioExecution Framework of the GEMOC Studio
Execution Framework of the GEMOC Studio
 
Smart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering ModelsSmart Modeling: On the Convergence of Scientific and Engineering Models
Smart Modeling: On the Convergence of Scientific and Engineering Models
 
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
Model Simulation, Graphical Animation, and Omniscient Debugging with EcoreToo...
 
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?Modeling For Sustainability: Or How to Make Smart CPS Smarter?
Modeling For Sustainability: Or How to Make Smart CPS Smarter?
 
Introduction of the SLE'17 conference
Introduction of the SLE'17 conferenceIntroduction of the SLE'17 conference
Introduction of the SLE'17 conference
 
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMSEXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
EXECUTABLE MODELING FOR SYSTEMS, SOFTWARE AND CYBER-PHYSICAL SYSTEMS
 
Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)Inria/CWI ALE team (progresses in Sep., 2017)
Inria/CWI ALE team (progresses in Sep., 2017)
 
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of ViewSound, yet Flexible, Modeling: A Language Engineering Point Of View
Sound, yet Flexible, Modeling: A Language Engineering Point Of View
 
Modeling for Sustainability
Modeling for SustainabilityModeling for Sustainability
Modeling for Sustainability
 
Dynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented ModelingDynamic V&V in Language-Oriented Modeling
Dynamic V&V in Language-Oriented Modeling
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC Studio
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
Concurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCMLConcurrency reification in the xDSML with MoCCML
Concurrency reification in the xDSML with MoCCML
 
Experimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOCExperimentations, transfer and development during the ANR project GEMOC
Experimentations, transfer and development during the ANR project GEMOC
 
The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)The Behavioral Coordination Operator Language (BCOoL)
The Behavioral Coordination Operator Language (BCOoL)
 

Último

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Último (20)

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

Executable Metamodeling for Model V&V (May 25th, 2010)

  • 1. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Executable Metamodeling for Model V&V Benoît Combemale University of Rennes 1, TRISKELL team (IRISA & INRIA) benoit.combemale@irisa.fr May 25, 2010 B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 1 / 33
  • 2. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Short CV 2009 – ... Associate Professor University of Rennes 1, Triskell team (INRIA & IRISA, Fr.). Research Interests: MDE, MDLE, Formal behavioral semantics of languages, V&V, Models@runtime 2008 – 2009 Post-Doctoral Fellow EMN, AtlanMod team (EMN & INRIA, Fr.). Research Interests: Infinite Model (Definition and Transformation) 2005 – 2008 PhD Candidate INPT ENSEEIHT, ACADIE team (IRIT, Fr.). PhD Thesis: « Metamodeling Approach for Model Simulation and Verification » 2004 – 2005 M.Sc. « Software Safety » ENSEEIHT (INPT), ISYCOM team (GRIMM, Fr.) Master Thesis: « Specification and Verification of Process Model » B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 2 / 33
  • 3. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 4. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context Modèle <<représente>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 5. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context Concepteur Modèle <<représente>> Langage B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 6. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context générateurs Concepteur simulateurs vérificateurs Modèle <<représente>> Langage éditeur B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 7. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context générateurs Concepteur simulateurs vérificateurs Modèle <<représente>> Langage éditeur Méta Modèle <<représente>> <<conformeA>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 8. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context générateurs Concepteur simulateurs vérificateurs Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> DSML éditeur Concepteur DSML Concepteur DSML Concepteur DSML DSML = Domain Specific Modeling Language B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 9. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Context générateurs Concepteur simulateurs vérificateurs Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 3 / 33
  • 10. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Objectives générateurs Concepteur simulateurs vérificateurs Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> Modèle <<représente>> DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur générateurs Concepteur simulateurs vérificateurs DSML éditeur Methodological foundations for executable metamodeling To capture the necessary information in metamodel for model execution, To support generative approaches that ease the definition of V&V tools. Formal foundations for executable metamodeling To validate the use of formal verification tools, To validate the consistencies between the use of different tools. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 4 / 33
  • 11. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Operational Semantics Vs. Translational Semantics MyDSML Metamodel Rules endogenous transformation Operational Semantics + intuitive definition, − requires to define tools (e.g., V&V) for each DSML. MyDSML Metamodel FormalDomain Data Structure Rules exogenous transformation Translational Semantics − expression of semantic equivalences, + allows to reuse existing tools (in the target domain). B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 5 / 33
  • 12. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works DSML semantics using operational semantics May be achieved thanks to : meta-programming language (kermeta, action language. . . ) startable() Operation : Kermeta code operation startable() : Boolean is do var start_ok : kermeta::standard::Boolean var previousActivities : seq Activity [0..*] var prevPrecedes : seq Precedes [0..*] if progress==-1 then // Getting the activities which have to be started prevPrecedes := previous.select{p | p.kind == PrecedenceKind.pk_start_start } previousActivities := prevPrecedes.collect{p | p.before} start_ok := previousActivities.forAll{a | a.progress >= 0} // Getting the activities which have to be finished prevPrecedes := previous.select{p | p.kind == PrecedenceKind.pk_finish_start } previousActivities := prevPrecedes.collect{p | p.before} start_ok := start_ok and (previousActivities.forAll{a | a.progress==100}) result := start_ok or (previous.size() == 0) else result := false end end endogenous transformations (ATL. . . ) Main advantage: Deals with concepts related to the DSL. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 6 / 33
  • 13. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works DSML semantics using translational semantics Example : Mapping a SimplePDL model into a time Petri net one to use the TINA toolkit. SimplePDL .ecore Process .pdl PDL2PN .atl Process .net Properties .ltl Tina ATL<<instanceOf>> Process .Petri Net Petrinet .ecore <<instanceOf>> Main advantage: reuse the tools available in the target technical space. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 7 / 33
  • 14. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Contributions Executable Metamodeling Approach FinishToStart FinishToStart FinishToStart Formal Verification by Model-Checking Model Simulation by Graphical Animation Formal Foundations for Executable Metamodeling B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 8 / 33
  • 15. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Outline 1 Context and Objectives 2 Executable Metamodeling Approach to Support Model V&V A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification 3 Formal Foundations for Executable Metamodeling Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Intuitive approach Formal definitions Application to EMOF and OMG pyramid issues 4 Conclusion & Future Works B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 9 / 33
  • 16. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Outline 1 Context and Objectives 2 Executable Metamodeling Approach to Support Model V&V A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification 3 Formal Foundations for Executable Metamodeling Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Intuitive approach Formal definitions Application to EMOF and OMG pyramid issues 4 Conclusion & Future Works B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 10 / 33
  • 17. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification A Design Pattern for Executable DSML Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>> <<merge>> <<merge>> Trace Management MetaModel TM3 <<import>> Semantics Mapping Semantics Action Language or Model Transformation Metamodeling Language (e.g., MOF) MetaMetaModel (M3) MetaModel (M2) <<conformsTo>> <<conformsTo>> <<triggeredBy>> <<changes>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 11 / 33
  • 18. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification A Design Pattern for Executable DSML Domain Definition MetaModel (DDMM) Capture the structural information (domain specific concepts, their relationships and their constraints. States Definition MetaModel (SDMM) Capture the "dynamic" information, characterizing the whole possible states of model (during execution). Events Definition MetaModel (EDMM) Capture the events (and their parameters) that evolve the model execution. Trace Management MetaModel (TM3) Capture sets of event through traces and scenarios. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 12 / 33
  • 19. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification A Design Pattern for Executable DSML Domain Definition MetaModel (DDMM) States Definition MetaModel (SDMM) Events Definition MetaModel (EDMM) Trace Management MetaModel (TM3) A Design Pattern for Executable DSML Lm =< AS,CS∗,M∗ ac,SD,Mas >, s.t. AS = {DDMM,SDMM,EDMM}∪{TM3} B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 13 / 33
  • 20. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> Animator Editor Scenario Builder Trace Management MetaModel TM3 <<import>> Execution Engine & Control Panel Figure: DSML-based Tooling Control Panel Graphical Animator MDDMM Scenario Builder Model Execution Framework Generic Execution Engine A Semantics for an Executable Language Graphical Editor MEDMM MSDMM control update create create use update use visualize Figure: Interactions between Components B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 14 / 33
  • 21. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> Trace Management MetaModel TM3 <<import>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 22. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation reactionOnEv1() ... reactionOnEvN() Semantics2 Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> reactionOnEv1() ... reactionOnEvN() Semantics reactionOnEv1() ... reactionOnEvN() Semantics1 Trace Management MetaModel TM3 <<import>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 23. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation reactionOnEv1() ... reactionOnEvN() Semantics2 Action Languages Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> reactionOnEv1() ... reactionOnEvN() Semantics reactionOnEv1() ... reactionOnEvN() Semantics1 Trace Management MetaModel TM3 <<import>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 24. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation reactionOnEv1() ... reactionOnEvN() Semantics2 Action Languages Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> reactionOnEv1() ... reactionOnEvN() Semantics reactionOnEv1() ... reactionOnEvN() Semantics1 Trace Management MetaModel TM3 <<import>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 25. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation reactionOnEv1() ... reactionOnEvN() Semantics2 Action Languages Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> reactionOnEv1() ... reactionOnEvN() Semantics reactionOnEv1() ... reactionOnEvN() Semantics1 Trace Management MetaModel TM3 <<import>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 26. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation reactionOnEv1() ... reactionOnEvN() Semantics2 Action Languages Events Definition MetaModel EDMM Domain Definition MetaModel DDMM States Definition MetaModel SDMM <<merge>><<merge>> <<merge>> reactionOnEv1() ... reactionOnEvN() Semantics reactionOnEv1() ... reactionOnEvN() Semantics1 Animateur Editeur Constructeur de scénario Trace Management MetaModel TM3 <<import>> Moteur de simulation & panneau de contrôle B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 15 / 33
  • 27. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Graphical Editor B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 28. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Graphical Editor B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 29. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Scenario Builder Graphical Editor B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 30. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Scenario Builder Graphical Editor MEDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 31. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Scenario Builder Simulation Engine Graphical Editor MEDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 32. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 33. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM MSDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 34. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Graphical Animator MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM MSDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 35. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Graphical Animator MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM MSDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 36. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Graphical Animator MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM MSDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 37. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Model Simulation Control Panel Graphical Animator MDDMM Scenario Builder Simulation Engine Generic Simulation Engine DSML_1 Semantics Graphical Editor MEDMM MSDMM B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 16 / 33
  • 38. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 39. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore myProcess .xspem myProcess .net <<conformsTo>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 40. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet myProcess .net <<conformsTo>> <<conformsTo>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 41. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet xSPEM2 PetriNet .atl myProcess .net <<conformsTo>> <<conformsTo>> ATL (M2M) B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 42. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet xSPEM2 PetriNet .atl myProcess .net <<conformsTo>> <<conformsTo>> ATL (M2M) Tina.tcs TCS B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 43. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet xSPEM2 PetriNet .atl myProcess .net <<conformsTo>> <<conformsTo>> ATL (M2M) Tina.tcs TCS DDMM: réseau de Petri (RdP) SDMM: marquage du RdP EDMM: preuve de bisimulation B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 44. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification Tina xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet xSPEM2 PetriNet .atl myProcess .net <<conformsTo>> <<conformsTo>> ATL (M2M) Tina.tcs TCS DDMM: réseau de Petri (RdP) SDMM: marquage du RdP EDMM: preuve de bisimulation B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 45. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification Using the Design Pattern for Formal Verification ATL (M2T) Tina xSPEM .ecore PetriNet .ecore myProcess .xspem myProcess .PetriNet xSPEM2 PetriNet .atl myProcess .net <<conformsTo>> <<conformsTo>> ATL (M2M) Tina.tcs TCS properties .ltl TOCL .ecore properties .tocl <<conformsTo>> <<use>> TOCL2 LTL .atl <<dependOn>> DDMM: réseau de Petri (RdP) SDMM: marquage du RdP EDMM: preuve de bisimulation B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 17 / 33
  • 46. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Outline 1 Context and Objectives 2 Executable Metamodeling Approach to Support Model V&V A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification 3 Formal Foundations for Executable Metamodeling Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Intuitive approach Formal definitions Application to EMOF and OMG pyramid issues 4 Conclusion & Future Works B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 18 / 33
  • 47. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Consistency of multiple semantics Usefulness of several semantics Define operational semantics for model interpretation. Define translational semantics to reuse tools or code generation. Problem How to assert that all the defined semantics are consistent? Our solution Defining a framework based on formal tools like the COQ proof assistant to 1 define operational semantics of the DSL (called reference semantics) 2 define operational semantics of the technical space (semantic domain) 3 express the mapping from the DSL to the semantic domain 4 prove the equivalence of translational semantics and reference semantics B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 19 / 33
  • 48. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Issues How to formally express the concepts of models, metamodels, meta-metamodels. . . ? ⇒ what are their various types ? ⇒ what is the encoding in a formal domain semantics ? With this encoding, how to express the structural and behavioral semantics ? ⇒ does a model conform to its language ? ⇒ are two languages equivalent from a structural or behavioral point of view ? Warning: the OMG vision being one of the possible MDE view... The framework must be more general. M1 M 0 M2 M3 metamodel(UML, SPEM...) model(UML models...) "real" world metametamodel (MOF) B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 20 / 33
  • 49. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization ReferenceModel and Model Intuitive approach REFERENCEMODEL ( concepts,relations,semantics ): modelling language from which one can define a family of models, specifies the semantic properties of its models. MODEL ( objects,links ): the instance level. Model (M) ReferenceModel (RM) <<promotionOf>> <<conformsTo>> A model MUST conform to a RM. A RM may be directly defined. A RM may be obtained as the promotion of a model. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 21 / 33
  • 50. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Conformity and Promotion Intuitive approach Conformity 1 Every object o in M is the instance of a class C in RM; 2 Every link between two objects is such that it exists, in RM, a reference between the two classes typing the two elements. 3 Every semantic property defined in RM is satisfied in M. Promotion 1 Identify the different concepts among the model elements. 2 Identify relations between the previous concepts. 3 Define the different semantic properties that must hold on the models that conform to the Reference Model. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 22 / 33
  • 51. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Formal Approach General Definitions Let us consider: Definition Classes the set of all possible classes, References the set of reference labels, Objects the set of instances of such classes. Definition C ⊆ Classes be a set of classes, R ⊆ { c1,r,c2 | c1,c2 ∈ C ,r ∈References} be the set of references among classes where ∀c1 ∈ C ,r ∈References, card{ c1,r,c2 ∈ R} ≤ 1. B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 23 / 33
  • 52. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Formal Approach Model and ReferenceModel Definition (Model) A model MV,ME ∈ Model(C ,R) is a multigraph built over a finite set MV of typed objects and a finite set ME of typed edges such that: MV ⊆ { o,c | o ∈ Objects,c ∈ C } ME ⊆ o1,c1 ,r, o2,c2 o1,c1 , o2,c2 ∈ MV, c1,r,c2 ∈ R Definition (ReferenceModel) A reference model (RV,RE),conformsTo is a multigraph built over a finite set RV of classes and a finite set RE of references, with semantic properties over the instances of both classes and references. RV ⊆ Classes RE ⊆ { c1,r,c2 | c1,c2 ∈ RV,r ∈ References} conformsTo : Model(RV,RE) → Bool B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 24 / 33
  • 53. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization EMOF Core as a Reference Model Traditional notation (class diagram notation) Property lower: Natural⊤ = 1 upper : Natural⊤ = 1 isOrdered : Boolean = false isComposite: Boolean = false default: String = "" Class isAbstract: Boolean = false {ordered} 0..* ownedAttribute 0..1 opposite NamedElement name: String 0..* superClass Type TypedElement type 1 DataType Boolean String Natural owner ⊤ B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 25 / 33
  • 54. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization EMOF Core as a Reference Model Formal notation Definition (EMOF Core) The EMOF Core Reference Model is RV,RE ,conformsTo where : RV { NamedElement,Type,TypedElement,DataType,Boolean, String,Natural ,Class,Property } RE { Class,ownedAttribute,Property , Class,isAbstract,Boolean , Class,inh,Type ,... } conformsTo( MV,ME ) MV,ME ∈ Model(RV, RE) ∧ lower(TypedElement,type,1) ∧ upper(TypedElement,type,1) ∧ and other semantic properties (next slide)... B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 26 / 33
  • 55. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization EMOF Core as a Reference Model: semantics Definition (Lower Property) lower(c1 ∈ RV,r1 ∈ RE,n ∈ Natural ) MV,ME → ∀ o,c ∈ MV,c = c1 ⇒ card({m2 ∈ MV | o,c1 ,r1,m2 ∈ ME}) ≥ n Definition (Opposite Property) isOpposite(r1,r2 ∈ RE) MV,ME → ∀m1,m2 ∈ MV, m1,r1,m2 ∈ ME ⇔ m2,r2,m1 ∈ ME Definition (Abstract Classes) isAbstract(r ∈ RE,c1 ∈ RV) MV,ME → ∀ o,c ∈ MV,c = c1 ⇒ ∃c2 ∈ RV, o,c2 ,r, o,c1 ∈ ME And also: upper, inheritance, composite, ordered. . . . B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 27 / 33
  • 56. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization An Evaluation of COQ4MDE Formalization of the EMOF_Core reference model (MCMOF ). MOF:MC B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
  • 57. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization An Evaluation of COQ4MDE Formalization of the EMOF_Core reference model (MCMOF ). Verification of the EMOF_Core metacircularity: definition of the MMOF model conforms to MCMOF , and the promotion P, s.t. P(MMOF ) = MCMOF MOF:M MOF:MC <<promotionOf>> <<conformsTo>> B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
  • 58. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization An Evaluation of COQ4MDE Formalization of the EMOF_Core reference model (MCMOF ). Verification of the EMOF_Core metacircularity: definition of the MMOF model conforms to MCMOF , and the promotion P, s.t. P(MMOF ) = MCMOF Formalization of the OMG’s pyramid. MOF:M MOF:MC <<promotionOf>> <<conformsTo>> xSPEM:M xSPEM:MC <<promotionOf>> <<conformsTo>> Process:M <<conformsTo>> Real World M0 M1 M2 M3 metametamodel metamodel model B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 28 / 33
  • 59. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Outline 1 Context and Objectives 2 Executable Metamodeling Approach to Support Model V&V A Design Pattern for Executable DSML Application for Model Simulation Application for Model Verification 3 Formal Foundations for Executable Metamodeling Motivations & Issues COQ4MDE: a Framework for (meta)Model Formalization Intuitive approach Formal definitions Application to EMOF and OMG pyramid issues 4 Conclusion & Future Works B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 29 / 33
  • 60. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Conclusion & Future Works Main contributions: Methodological foundations for executable metamodeling ⇒ a design pattern reifying information for model execution ⇒ application1 to define simulators (UML, SysML, SAM...), and transformations to model checker (TINA). Formal foundations for executable metamodeling ⇒ a formal framework implemented using the COQ proof assistant ⇒ application to formally verify properties preserving transformations. Other contributions: Use of the previous foundations for process engineering (definition of an eXecutable SPEM2.0, with simulation and verification facilities) [APSEC’07], Use of the previous foundations for models@runtime (specification and formalization of adaptation policies) [MoDELS’08]. 1 in the TOPCASED project (http://www.topcased.org) B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 30 / 33
  • 61. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Research Program Methodological and Formal Foundations for Executable Metamodeling How to build an executable DSML ? What systematic approach ? How to provide a formal support for MDE (executable metamodeling, transformation, composition) ? can a theory of model be defined ? ⇒ Hope to define a generic and formal framework for model execution (based on Kermeta). Model Validation & Verification How to integrate verification techniques by meta-approaches ? How to combine verification techniques (mainly testing, simulation, model-checking and proofs) Models at runtime How to consider adaptation policies like a DSML’s behavioral semantics ? How to support V&V techniques at runtime ? B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 31 / 33
  • 62. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Interests at CSU To prepare collaboration about the use of MDE for hardware and embedded systems, To share experiences about semantics definition (e.g., fUML), To define formal operator for model composition, I am also (generally) open minded, and curious about funny and challenging problems... ⇒ If you have this kind of problem, and the courage to bear my english..., don’t hesitate ! B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 32 / 33
  • 63. Context and Objectives Executable Metamodeling Approach to Support Model V&V Formal Foundations for Executable Metamodeling Conclusion & Future Works Thank you for your attention... Questions? B. Combemale (UR1, IRISA) Executable Metamodeling for Model V&V May 25, 2010 33 / 33