Generating JMI model transformation code from UML profile models for SDM Aligning Graph Rewriting with MDA-light Pieter Van Gorp Hans Schippers Formal Techniques in Software Engineering {Pieter. VanGorp ,Hans. Schippers }@ua.ac.be Segravis School on Foundations of Visual Modelling Techniques, May 2004, Schloss Dagstuhl
24
Embed
Generating JMI model transformation code from UML profile ...€¦ · SDM GT Specifications SDM GT Specifications SDM GT Specifications Stereotypes as flags. 17/24 High Level SDM
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
GeneratingJMI model transformation code
from UML profile models for SDMAligning Graph Rewriting with MDA-light
Pieter Van GorpHans SchippersFormal Techniques in Software Engineering{Pieter.VanGorp,Hans.Schippers}@ua.ac.be
Segravis School on Foundations of Visual Modelling Techniques, May 2004, Schloss Dagstuhl
– Integrated Tool Context– Pull Up Method Refactoring¸ Pull Up Method
14/24
Integrated Tool Context
Poseidon (or …):Transformation Specifications
SDM as UML 1.4 Profile
MM as Class Diagram
XMI
NetBeans MDR
Poseidon embedded MDR“Application” Models
JMI Manipulation + Poseidon Plugin Code
15/24
MM Class Diagram in PoseidonMetamodel Class Diagram
16/24
Transformation Component
SDM GT Specifications
SDM GT Specifications
SDM GT Specifications
Stereotypes as flags
17/24
High Level SDM Control Flow
18/24
Code Activity(demo purpose only)
19/24
Loop Activity(again with stereotype)
Use tagged value as reference
20/24
Path NavigationCreate Links
Remove Links
21/24
Attribute Assignments(demo purpose only)
22/24
Compiler Resultsÿ JMI Repository
Manipulation Code– View Updating through
small “hack”…
ÿ Poseidon Plugin– Extra menu item for
launching transformation
23/24
Conclusions (1/2)1. Now transformation writers can…ß Create visual model transformations in Magicdraw, Together,
Objecteering, Poseidon, …ß Execute them on JMI repositories (opt: CASE tool plugins)
2. Now, Fujaba can…ß be migrated to MDR
3. Now, other CASE tool vendors can…ß Provide a plugin for enhanced visualization (cfr. nesting)
24/24
Conclusions (2/2)ÿ Lessons Learned
– MDA Light¸ UML Profiles: adequate if MM close to UML¸ Code Templates: reuse problems
– Graph Rewriting¸Convenient for specifying Refactorings
ÿ Future Work– EMF support… if necessary, solve reuse problems with stepwise refinement– Model Refinement & Weaving Case Studies– Compare to (and align with) ATL
Publications– Pieter Van Gorp, Niels Van Eetvelde, and Dirk Janssens. Implementing Refactorings as Graph Rewrite Rules on a
Platform Independent Metamode. In Proceedings of the 1st International Fujaba Days. University of Kassel,Germany October 13-14, 2003.
– Hans Schippers. JMI Conforme Model Transformator Generator (JCMTG). Master Thesis, University of Antwerp,2004. Upcoming Paper...