Download presentation
Presentation is loading. Please wait.
Published byJulian Gaines Modified over 9 years ago
1
McGill University School of Computer Science Ph.D. Candidate in the Modelling, Simulation and Design Lab MPM’09 Explicit Transformation Modelling Thomas Kühne, Gergely Mezei, Eugene Syriani, Hans Vangheluwe, Manuel Wimmer Towards Systematic Transformation Development
2
MPM’09 OVERVIEW Motivation Running Example FSA semantics from PN simulation Explicit Transformation Modelling RAM process Higher-Order Transformation Adding animation Conclusion 2
3
MPM’09 MOTIVATION Increase modeller’s productivity – Raise level of abstraction of specification/design – Lower impedance mismatch between modelling language and application domain Explicitely model transformations as 1 st class entities – Easier modification of control flow + mapping + pattern matching at syntax and semantics levels – Domain-specific transformation models //vs// generic pattern matching language – Facilitate transformation evolution: higher-order transformation (HOT) 3
4
MPM’09 RUNNING EXAMPLE Finite State Automata (FSA) Simulator from Petri-Net Simulator 4
5
MPM’09 FSA & PETRI-NET META-MODELS Classes Multiplicities Attribute types Constraints 5
6
MPM’09 FINITE STATE AUTOMATA TO PETRI-NET 6
7
MPM’09 PETRI-NET OPERATIONAL SEMANTICS 7
8
MPM’09 EXPLICIT TRANSFORMATION MODELLING Generic //vs// Customized pattern language – Syntax: pattern specification adapted to languages invloved – Design: exclude patterns that would not match → Custom Meta-model //vs// Conformance check – Have a separate meta-model for the pattern specification – Have customized conformance checks → Meta-model 8
9
MPM’09 RAM PROCESS (quasi-)Automatically generated environment for pattern language 9 Input Meta-ModelOutput Meta-Model Relax Augment Modify Customized Pattern Meta-Model
10
MPM’09 RAM PROCESS Relaxation Concretize abstract entities Reduce minimal multiplicity constraint Constraints (automatic?) – Free form: no constraints – Valid elements: ensure typing – Valid multiplicities: enforce (relaxed) multiplicities – Valid constraints: enforce (a subset of) meta-model constraints (quasi-)Automatically generated environment for pattern language 10
11
MPM’09 RAM PROCESS Augmentation Type all entities to MT(pre/post)_Element Add MT specific attributes – Labels – Pivot passing – Allow subtype matching * – Other (e.g., isProcessed) Generic elements 11 (quasi-)Automatically generated environment for pattern language
12
MPM’09 RAM PROCESS Modification Pre-condition pattern – Attributes are of type ‘constraint’ Post-condition pattern – Attributes are of type ‘action’ Modify concrete syntax – Abstract classes – Association ends – Other (e.g., replace topological visual syntax constraints) 12 (quasi-)Automatically generated environment for pattern language
13
MPM’09 RAM PROCESS Relax 13 (quasi-)Automatically generated environment for pattern language AugmentModify
14
MPM’09 RAM PROCESS Customized pattern language meta-model 14
15
MPM’09 RAM PROCESS Transformation Meta-Model 15
16
MPM’09 HIGHER-ORDER TRANSFORMATION (HOT) Language evolution – Adapting the transformation of an evolving language Transformation optimization/refactoring – Modify for more efficient results Translational semantics – From operational semantics, for more advance analysis oportunities – Define meaning of transformation by mapping onto a standard one Separation of transformation concerns – Multi-stage transformation is a special case 16
17
MPM’09 ANIMATION SUPPORT 17
18
MPM’09 ANIMATION SUPPORT !User modifies meta-model: correspondence links ?Evolve the transformation without changing current transformation Transform the transformation to include animation support 18
19
MPM’09 ANIMATION SUPPORT Add animation rules in simulator 19
20
MPM’09 ANIMATION SUPPORT Control flow level HOT rule 20
21
MPM’09 ANIMATION SUPPORT Rule level HOT rule 21
22
MPM’09 CONCLUSION 22 Proposed a systematic procedure for the development of model transformations Allows to: – Offer customized specification of model transfromation rules – Cleanly design higher-order transformation rules
23
MPM’09 CONCLUSION 23 Side-effect of the contribution: Given 1.Semantic translation from MM 1 to MM 2 (model transformation) 2.Operational semantics of MM 2 (model transformation) 3.Alterate transformation 1 to support feed-back (HOT) ? Translation of FSA to PN PN simulator Alteration of the control flow of the PN simulator Alteration of the rules of the FSA to PN translation You get an “operational semantics” for MM 1
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.