Presentation on theme: "McGill University GT-VMT’10 School of Computer Science Ph.D. Candidate in the Modelling, Simulation and Design Lab Eugene Syriani Hans Vangheluwe."— Presentation transcript:
McGill University GT-VMT’10 School of Computer Science Ph.D. Candidate in the Modelling, Simulation and Design Lab Eugene Syriani Hans Vangheluwe
GT-VMT’10 OVERVIEW Problematic De-Constructing Transformation Languages —De-construction process —Collection of model transformation primitives Re-Constructing Transformation Languages —Common transformation languages —More esoteric features —Asynchronous transformations Conclusion 2
GT-VMT’10 MOTIVATION Rule-based transformation languages: most-widely used paradigm Many MTLs co-exist today ATL, FUJABA, GReAT, MoTif, QVT, VIATRA, VMTS, … – Each one is better for solving a specific class of problems Problems are very different in nature – Not conceivable to have one ultimate MTL – Feature-specific – Feature-specific MTL – Domain-specific – Domain-specific MTL
GT-VMT’10 FEATURE MATRIX  4  Syriani, E. and Vangheluwe, H. (2009) Matters of model transformation. Technical Report SOCS-TR-2009.2. McGill University, School of Computer Science.
GT-VMT’10 PROBLEMATIC Given this diversity, it is hard to: 1.Compare 1.Compare expressiveness interoperability 2.Provide framework for interoperability design 3.Rigorously design transformation languages 5
GT-VMT’10 PROPOSED SOLUTION Provide a common basis for MTLs, in terms of primitive building blocks 1.De-Construction – Small set of most primitive constructs 2.Re-Construction – Existing MTLs in terms of primitive building blocks – Optimization – Discover new MTLs 6
GT-VMT’10 REQUIREMENTS Minimal collection of model transformation primitives – De-construct to optimal granularity Not restricted to any form of specification of transformation unit – Rule-based, Constraint-based, Function-based – Bidirectional, Functional – Query, Transformation Modularly encapsulate combinations of primitives – Composition – Re-use – Interface Executable – Self-contained – Easily integrable 9
GT-VMT’10 T-CORE MODULE 11 Dissociate pre- from post- condition patterns ‒Query vs. Rule
GT-VMT’10 T-CORE MODULE 12 Packet ‒Host graph MatchSet ‒Matches for a given pattern Match ‒Sub-model of interest Pivot ‒Node binding (across match sets) ‒Parameterized rule
GT-VMT’10 T-CORE MODULE 13 Dissociate Match from Rewrite ‒match-rewrite- match-rewrite ‒match-match-match ‒match-match-rewrite-rewrite Matcher ‒Find all (parameter) ‒Store matches in packet Rewriter ‒Apply transformation ‒Consume matches Resolver ‒Conservative check of conflicts among match sets ‒Customizable resolution function
GT-VMT’10 T-CORE MODULE 14 Iterator ‒Randomly choose a match in a match set ‒Number of iterations Rollbacker ‒Ensure transactional behaviour ‒Restore packet when all matches exhausted ‒Number of iterations Combine to handle multiple matches
GT-VMT’10 T-CORE MODULE 15 Selector ‒Can store packets ‒Select one on demand Synchronizer ‒Can store packets ‒Merge packets on demand ‒Customizable merge function
GT-VMT’10 T-CORE MODULE 16 Meaningfully compose its sub-primitives User-defined composition Common interface
GT-VMT’10 FUJABA: FOR-ALL PATTERN  20  Fischer, T., et. al., (2000) Story diagrams: A new graph rewrite language based on the UML and Java. In Ehrig, H., et al., (eds.), Theory and Application of Graph Transformations, LNCS, 1764, pp. 296–309. Springer-Verlag.
GT-VMT’10 AMALGAMATION RULES: REPOTTING THE GERANIUMS  “Repot all flowering geraniums whose pots have cracked” 23  Rensink, A. and Kuperus, J.-H. (2009) Repotting the geraniums: On nested graph transformation rules. In Margaria, T., Padberg, J., and Taentzer, G. (eds.), GT-VMT’09, EASST.
GT-VMT’10 MOTIF-CORE: ASYNCHRONOUS TRANSFORMATIONS 24  Zeigler, B. P. (1984) Multifacetted Modelling and Discrete Event Simulation. Academic Press. MoTif-Core = T-Core + DEVS  1-1 mapping between ‒T-Core primitive operator ‒DEVS atomic/coupled model T-Core primitive embedded in the state of DEVS model
GT-VMT’10 MOTIF-CORE: TIMED MTLS Time Exceptions MoTif AtomicRule  25  Syriani, E. and Vangheluwe, H. (2009) Discrete-Event Modeling and Simulation: Theory and Applications. CRC Press, Boca Raton (USA).
GT-VMT’10 MOTIF-CORE: ASYNCHRONOUS MTLS Asynchrony Parallelism GReAT Test/Case block  26  Agrawal, A., Karsai, G., Kalmar, Z., Neema, S., Shi, F., and Vizhanyo, A. (2006) The design of a language for model transformations. SoSym, 5, 261–288.
GT-VMT’10 MOTIF-CORE: VISUAL REPRESENTATION More Readable: Repotting the geraniums 27
GT-VMT’10 CONCLUSION Collection of MT primitives: T-Core Re-construction of existing MTLs (comparable) New-Construction of novel MTLs – Domain-specific, Problem-specific – Framework for building such languages Efficiently implement these primitives Map other MTLs to T-Core 28 ?