Context
• Model-driven Engineering (MDE)
– Domain-Specific Languages defined through
• Metamodels (abstract syntax)
• Graphics (concrete syntax)
• Language Semantics
– Models are token models
– Semantics is given through rewriting
• Specified using in-place model transformations
28/09/2012 (c) Durán, Zschaler, Troya 2
Analysis Opportunities
DSL models
Defined by the user
+
Behavioral
Model
Structural
Model
Ecore (MOF)
José E. Rivera, Francisco Durán and Antonio Vallecillo: On the Behavioral Semantics of Real-Time
Domain Specific Visual Languages. In Rewriting Logic and Its Applications, LNCS 6381, pp. 174–190
28/09/2012
Analysis Opportunities
DSL models
Defined by the user
+
Behavioral
Model
Structural
Model
Ecore (MOF)
Rewriting Logic
Semantic Domain
Transparent to the user
Semantic Mappings
Transparent to the user
(Real-Time) Maude
Simulation, reachability analysis, model checking
José E. Rivera, Francisco Durán and Antonio Vallecillo: On the Behavioral Semantics of Real-Time
Domain Specific Visual Languages. In Rewriting Logic and Its Applications, LNCS 6381, pp. 174–190
28/09/2012
Analysis Opportunities
DSL models
Defined by the user
+
Behavioral
Model
Structural
Model
Ecore (MOF)
Rewriting Logic
Semantic Domain
Transparent to the user
Semantic Mappings
Transparent to the user
(Real-Time) Maude
Simulation, reachability analysis, model checking
José E. Rivera, Francisco Durán and Antonio Vallecillo: On the Behavioral Semantics of Real-Time
Domain Specific Visual Languages. In Rewriting Logic and Its Applications, LNCS 6381, pp. 174–190
28/09/2012
•Observer values after simulation give predictions,
•(Probabilistic) Model checking can be used to
verify satisfaction of NFPs
28/09/2012 (c) Durán, Zschaler, Troya 6
A Different Example
Problem: Complete redefinition of response time.
Better:
Extract definition of response time into a separate
DSL and weave it in.
Sanity Conditions
• Need to ensure that adding observers
does not change behaviours
Transformation step possible for model expressed in DSL
Step still possible in the same model expressed in DSL +
Observers (possibly including appropriate observer objects)
• For any legal model and transformation
sequence
28/09/2012 (c) Durán, Zschaler, Troya 12
DSLMMDSL M
DSL
M
Sanity Conditions
• Need to ensure that adding observers
does not change behaviours
Transformation step possible for model expressed in DSL
Step still possible in the same model expressed in DSL +
Observers (possibly including appropriate observer objects)
• For any legal model and transformation
sequence
28/09/2012 (c) Durán, Zschaler, Troya 12
DSLMMDSL M
DSL
M
This condition can only be checked once the merge has
been performed.
We provide conditions to be checked of the observer
model and the binding that imply the condition below.
Conclusions
• We show composition of language semantics
– For DSLs based on in-place transformation
– For conservative extensions
• Two checkable conditions to verify consistency of
such extensions
– One can be checked of observer language independent of
composition
• Currently working to weaken some of the
assumptions made on base language and binding,
etc.
28/09/2012 (c) Durán, Zschaler, Troya 13