Model Transformation with a Visual Control Flow Language

Graph rewriting-based visual model processing is a widely used technique for model transformation. Visual model transformations often need to follow an algorithm that requires a strict control over the execution sequence of the transformation steps. Therefore, in Visual Model Processors (VMPs) the execution order of the transformation steps is crucial. This paper presents the visual control flow support of Visual Modeling and Transformation System (VMTS), which facilitates composing complex model transformations of simple transformation steps and executing them. The VMTS Visual Control Flow Language (VCFL) uses stereotyped activity diagrams to specify control flow structures and OCL constraints to choose between different control flow branches. This paper introduces VCFL, discusses its termination properties and provides an algorithm to support the termination analysis of VCFL transformations.




References:
[1] T. Levendovszky, L. Lengyel, G. Mezei, H. Charaf, "A Systematic
Approach to Metamodeling Environments and Model Transformation
Systems in VMTS", ENTCS, International Workshop on Graph-Based
Tools (GraBaTs) Rome, 2004.
[2] The VMTS Homepage. http://avalon.aut.bme.hu/~tihamer/research/vmts
[3] OMG UML 2.0 Specification, http://www.omg.org/uml/
[4] G. Rozenberg (ed.), "Handbook on Graph Grammars and Computing by
Graph Transformation: Foundations", Vol.1 World Scientific,
Singapore, 1997.
[5] OMG Object Constraint Language Specification (OCL), www.omg.org
[6] M. Fowler, UML Distilled, "A Brief Guide to the Standard Object
Modeling Language", 3rd edition, Addison-Wesley, ISBN: 0321193687,
2003.
[7] L. Lengyel, T. Levendovszky, G. Mezei, B. Forstner, H. Charaf,
"Metamodel-Based Model Transformation with Aspect-Oriented
Constraints", International Workshop on Graph and Model
Transformation, GraMoT, Tallinn, Estonia, September 28, 2005.
[8] H. Ehrig, "Introduction to the Algebraic Theory of Graph Grammars",
In:Graph Grammars and Their Applications to Computer Science and
Biology, Springer, Ed. V. Claus, H. Ehrig, G. Rozemberg, Berlin, 1979.
[9] H. Ehrig, M. Korff, M. Löwe, "Tutorial introduction to the algebraic
approach of graph grammars based on double and single pushouts". In
H. Ehrig, H.-J. Kreowski, and G. Rozenberg, editors, Proceedings of the
4th International Workshop on Graph-Grammars and Their Application
to Computer Science, volume 532 of Lecture Notes in Computer
Science, pages 24-37. Springer Verlag, 1991.
[10] G. Karsai, A. Agrawal, F. Shi, J. Sprinkle, "On the Use of Graph
Transformation in the Formal Specification of Model Interpreters",
Journal of Universal Computer Science, Special issue on Formal
Specification of CBS, 2003.
[11] A. Agrawal, "A Formal Graph-Transformation Based Language for
Model-to-Model Transformations", PhD Dissertation, Vanderbilt
University, Dept of EECS, August, 2004.
[12] A. Sch├╝rr, A. Z├╝ndorf, "Nondeterministic Control Structures for Graph
Rewriting Systems", in Proc. WG'91 Workshop in Graph- Theoretic
Concepts in Computer Science, LNCS 570, Springer Verlag (1992), pp.
48-62, also: Technical Report AIB 91-17, RWTH Germany, 1991.
[13] FUJABA Homepage, http://wwwcs.upb.de/cs/fujaba/
[14] Hans J. Köhler, Ulrich A. Nickel, Jörg Niere, Albert Z├╝ndorf,
"Integrating UML Diagrams for Production Control Systems", Proc. of
the 22nd International Conf. on Software Engineering (ICSE) Limerick
Ireland, ACM Press, 2000, pp. 241-251.
[15] D. Varr├│ and A. Pataricza, "VPM: A visual, precise and multilevel
metamodeling framework for describing mathematical domains and
UML", Journal of Software and Systems Modeling, 2003.
[16] J. Lara, H. Vangheluwe , M. Alfonseca, "Meta-modelling and graph
grammars for multi-paradigm modelling in AToM", Software and
Systems Modeling (SoSyM), 3(3):194-209, August 2004.
[17] G. Taentzer, "AGG: A Graph Transformation Environment for
Modeling and Validation of Software", In J. Pfaltz, M. Nagl, and B.
Boehlen (eds.), Application of Graph Transformations with Industrial
Relevance (AGTIVE-03), vol. 3062. Springer LNCS, 2004.
[18] Hartmut Ehrig, Karsten Ehrig, Juan de Lara, Gabriele Taentzer, Dániel
Varr├│ and Szilvia Varr├│-Gyapay, "Termination Criteria for Model
Transformation", LNCS, Vol. 3442: Fundamental Approaches to
Software Engineering: 8th International Conference, FASE 2005,
Edinburgh, UK, April 4-8, 2005, pages 49-63. Springer-Verlag, 2005.
[19] Paolo Bottoni, Manuel Koch, Francesco Parisi-Presicce, Gabriele
Taentzer, "Termination of High-Level Replacement Units with
Application to Model Transformation", Electr. Notes Theor. Comput.
Sci. 127(4): 71-86, 2005.
[20] L. Lengyel, T. Levendovszky, H. Charaf, "Implementing an OCL
Compiler for .NET", In Proceedings of the 3rd International Conference
on .NET Technologies, Pilsen, Czech Republic, May-June 2005, pp.
121-130.