US-EU ReviewJuly 8, 2005Paris, France
Model-Integrated Computing (MIC)(or MDA, MDE, MDD, MBD,…)
Janos Sztipanovits & Gabor KarsaiISIS, Vanderbilt University
Model-Based Design
Model-based design focuses on the formal representation, composition, and manipulation of models during the design process.
Research Agenda in Model-Based Design
1. Composition of Domain Specific Modeling Languages
2. Model Transformation3. Model Synthesis
doTransition (fsm as FSM, s asState, t as Transition) =require s.activestep exitState (s)step if t.outputEvent <> null
then emitEvent (fsm, t.outputEvent)step activateState (fsm, t.dst)
Semantic Domain Meta-models
Domain Specific Modeling Languages (DSML)
SemanticDomain
S
AbstractSyntax
A
ConcreteSyntax
CParsing
SemanticMapping
ConceptsRelationsWell formed-nessrules
Mathematical abstraction for specifying the meaning of models
Notation forrepresenting models
L = < C, A, S, MS, MC>
MS
MC
Domain modelsInterchange Formats
Abstract Syntax Meta-models
MC
MS
DSML-s are the foundations for model-based design
Mission Control Platform (MCP) Tool Chain from “Above”
Abstract Syntax: Meta-Models Common Semantic Domain
Domain Models and Tool Interchange Formats
AIRES
PRISM ESML
ESMLCFG
ESMLAIF
Mission Control Platform Tool ChainSchedulability
Analysis
BoldStroke/PRISM CFG
ComponentStructure
ComponentInteractionThread
Models
ESMLGME
RationalRose
Component Model
SystemIntegration
ECSL-DPGME
SL/SF ECSL-DP
SimulinkStateFlow
SL/SFD
SE
Domain Models and Tool Interchange Formats
SC
A
MC2 MS2
DSML-2CS
A
MC1 MS1
DSML-1
DSML1DM DSML2DM
TransformationT
Constructing Design Flow: Modeling and Transformations
- Large influence of concrete syntax
- No clear role of semantics
- It is not clear what are we doing?
ECSL-DPGME
SL/SF ECSL-DP
SimulinkStateFlow
SL/SFD
SE
Domain Models and Tool Interchange Formats
ECSL-DP Meta-Model
SL/SFMeta-Model
SL/SFECSL-DP
SL/SFDESERT
Abstract Syntax: Meta-Models
ECSL-DP Meta-Model
Abstract Syntax Metamodeling
MDSML1,DSML2
MOFADSML1 MOFADSML2MTLTDSML1,DSM2
MOF UMT MOF
M12: MOFADSML1→MOFADSML2
-Gives structural semantics for the models
-Set-valued Semantic Domain for the metamodelsand transformations
SC
A
MC2 MS2
DSML-2CS
A
MC1 MS1
DSML-1
DSML1DM DSML2DM
TransformationT
Mission Control Platformat the “Middle” Layer
Abstract Syntax: Meta-Models Common Semantic Domain
Domain Models and Tool Interchange Formats
AIRES
RISM ESML
ESMLCFGL
ESMLAIF
Mission Control Platform Tool Chain
BoldStroke/PRISM CFG
ESMLGME
RationalRose
Abstract Syntax and Transformations: Meta-Models
PRISMMeta-Model
ECSL-DP Meta-Model
AIRESMeta-Model
CFGMeta-Model
PRISMESML
ESML-CFG
ESMLAIF
MOF MetaGMEAMOF
T1
GME-MOF GME/Meta
MetaGME
Metamodeling of MOF Using MetaGME
Metamodeling LanguagesMetamodeling of DSML
Using MOF
DSML MOFADSML
T2
MetaGMEADSML
T1
GME-DSML GME/Meta
Changing from GMEMeta to MOF
Metaprogrammable Tool Suite
GME
UDM
GReAT
• Simulators• Verifiers• Model Checkers• Generators
MetaModels
Generic Model EditorTool Suite
Open Tool IntegrationFramework
Model TransformationTool Suite
Unified Data Model
OTIF
BACKPLANE REGISTRATION/NOTIFICATION/TRANSFER SERVICES
SEMANTIC TRANSLATOR
SEMANTIC TRANSLATOR
TOOL
TOOL ADAPTOR
TOOL
TOOL ADAPTOR
TOOL
TOOL ADAPTOR MANAGER
Standard interface/ Protocol
METADATA
DESERTComponent
Abstraction (TA)Design SpaceModeling (MD)
Design SpaceEncoding (TE)
Design SpacePruning
Design Decoding
ComponentReconstruction
Design Space ExplorationTool Suite
Open Source; ESCHER maturation program (www.escherinstitute.org)
Ongoing Research on DSML-s and Model Transformations
Semantic Domain: Set-Valued
Domain modelsInterchange Formats
Abstract Syntax Meta-models
MC
MS
interface Eventstructure ModelEventimplements Eventcase ModelEvent1
Structural Semantics
• Compositional construction of Metamodels(inheritance, packages, libraries, operators)
• Compositional construction of Model Transformations
• Multiple Aspect Modeling and modeling ofaspect inter-dependences: - constraint-based,- transformation-based
• Formal semantics of transformations• Reasoning about properties of transformations• Platform modeling and use of embedded platform models in transformations
• Pushback reasoning in transformations• Generation of efficient code from graph transformations
• Transformations for embedded system platforms
• Using graph transformations for embedded component adaptation
• Embedding graph transformations in the run-time platform
Metamodeling and Model Transformation Use Cases
MS1= MS2○ M12
doTransition (fsm asFSM, s as State, t asTransition) =
Semantic Domain Meta-models
Domain modelsInterchange Formats
Abstract Syntax Meta-models
MC
MS
SC
A
MC2 MS2
DSML-2CS
A
MC1 MS1
DSML-1
DSML1DM DSML2DM
TransformationT
MDSML1,DSML2
MOFADSML1 MOFADSML2MTLTDSML1,DSM2
MOF MTL MOF
M12: MOFADSML1→MOFADSML2
MS2: ADSML2→S
MS1: ADSML1→S?
Behavioral Semantics
1. Transformational Specification of Behavioral Semantics
MDSMLi,SU
SC
A
MC2 MSU
SUCS
A
MC1 MSi
DSML-i
MOFADSMLi MOFASUMTLTDSMLi,SU
MOF MTL MOF
Mi: MOFADSMLi→MOFASU
TransformationT
MSU: ASU→S
MSi= Mi○ MSU Semantic “Units”DSML-i
doTransition (fsm asFSM, s as State, t asTransition) =
Semantic Domain Meta-models
Domain modelsInterchange Formats
Abstract Syntax Meta-models
MC
MS
2. Semantic Anchoring of DSML-s
-The “Semantic Units” areselected abstract semanticssuch as MoC-s
-DSML-s or their aspectsare anchored to the MoC-s using transforma-tions
-The “Semantic Units” arespecified in a formalframework
Metamodeling and Model Transformations Use Cases
More On Semantic Anchoring
• Step 1 – Define the DSML metamodel <A, C, Mc>
• Step 2 – Select a proper MoC as a “semantic unit” (MoC
library): Li = <Ai, Ci, MCi , Si , MSi > • Step 3
– Anchor the semantics: MA = A → Ai– DSML semantics: L = <A, C, Mc , Si , MA ○ MSi >
Experimental Framework
FSMInterpreter
AsmlSet-Valued + Abstract State Machine SD
FSMData Model
FSMData Inst.
MOFSet-Valued SD
T
FSMModel
HSMLModel t
FSMMetaModel
HSMLMetaModel
Syntax conversionExpressed in
Instance of
Host Language(Behavioral Semantics)Host Language
(Behavioral Semantics)
ModelTransf.
Model Transf.Spec.
Meta-metamodel(Set-Valued Semantics
ModelSimulation
ModelExecution
DSMLMetamodel
(Set-Valued Semantics)
DSMModel
(Set-Valued Semantics)
Host Language(Behavioral Semantics)
Metamodel(Set-Valued Semantics)
Semantic Domain(Behavioral Semantics)
ASMLTLA+
JAVA
MoC “Semantic Units”
Host Language(Behavioral Semantics)Host Language
(Behavioral Semantics)Model
SemanticsASML
TLA+JAVA
ModelVerification
Syntactic Level
Semantic Level
Translation
Long-Term Vision: Semantic Anchoring Architecture of DSML-s
M3 M2 M1
A “Semantic Unit” for Time Automata Based Modeling Languages
• Common semantic domain for varied timed automata based modeling languages:(In cooperation with VERIMAG)– Guard– Priority– Synchronization
S
C
A
MC
MS
Time Automata(AsmL Supported Semantics)
Time Automata Variants
Model Checker
Model Simulator
Test CaseGenerator
AsmL Tools
IF Lang.IF Lang.
TransformationT
SemanticAnchoring
UUPPAAL PPAAL Lang. Lang.
MoC Semantic Unit
GReAT ToolGReAT Tool
GME GME ToolsetToolset
S
C
A
MC
MS
“Evidence”: IF Metamodels
SC
A
MC MS
SU
MOFASU
MOF
MS3: MOFADSML1→MOFASU
MS: ASU→S
Semantic Unit(Common Semantic Domain)
MTL
TransformationT1
CS
A
MC1 MS1
DSML-1
MOFADSML1
MOF
DSML-1
MDSML1,SU
MTLTDSML1,SU
DSML1DM
SC
A
MS2 MC2
DSML-2
MOFADSML2
MOF
DSML-2
MTL
TransformationT2
MSU,DSML2
MTLTSU,DSML2
DSML2DM
Modeling Tool Analysis Tool
T=T2 ○ T1
3. Semantic Integration of Tools
MS1= MDSML1,SU○ MS MS= MSU, DSML2○ MS2
Metamodeling and Model Transformation Use Cases
Ongoing Cooperations
• Artist 2 (Prof. Sifakis, Verimag) - MIC-based modeling interface for IF;- Semantic Unit specification for Time Automata
- Modeling Language Design Environment
• DECOS (Prof. Kopetz, TUV)- MIC-based modeling environment for DECOS
- Automotive Design Tool Chain- DESERT Applications