Model-based M2M transformations based on drag-and-drop actions: Approach and implementation

Approach of model-driven development of partial M2M transformations is presented.Partial M2M transformations work with fragments of source and target models.Transformations are triggered by drag-and-drop actions performed by a user.Approach works with any UML metamodel-based graphical modeling language.Approach is implemented as a plug-in of CASE tool MagicDraw. In the context of model-driven development, model-to-model (M2M) transformations are often positioned as one of the key selling features of this ever-growing paradigm. Indeed, M2M transformations can speed up the development process by automating certain modeling tasks, enable reusability of existing models within a single or even multiple projects, and bring other actual benefits to a systems developer. Nevertheless, CASE tool-supported M2M transformations are quite often represented as hard-coded "black-box" solutions lacking flexibility and customization features. This paper presents main conceptual and implementation aspects of a practical approach for both the development and application of model-based, customizable M2M transformations. The transformation is triggered by so called drag-and-drop action, which is enacted after a certain element is dragged from a model browser and dropped into a diagram or onto some other element representation in the diagram. Another distinctive feature of the presented approach is the introduction of "partial M2M transformation". The term assumes a transformation of a user-defined fragment of the source model into a fragment of the target model, instead of taking whole models as in case of full M2M transformation. The presented solution improves overall usability of such M2M transformations in an actual CASE tool environment.

[1]  Robert Wagner,et al.  EMorF - A tool for model transformations , 2012, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[2]  Edward D. Willink UMLX : A graphical transformation language for MDA , 2003 .

[3]  Bernhard Schätz,et al.  Graph and model transformation tools for model migration , 2014, Software & Systems Modeling.

[4]  Gabriele Taentzer,et al.  Henshin: advanced concepts and tools for in-place EMF model transformations , 2010, MODELS'10.

[5]  Holger Giese,et al.  A Survey of Triple Graph Grammar Tools , 2013, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[6]  Andy Schürr,et al.  A Comparison of Incremental Triple Graph Grammar Tools , 2014, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[7]  Alexander Königs,et al.  Model integration and transformation: a triple graph grammar-based QVT implementation , 2008 .

[8]  Dániel Varró,et al.  The VIATRA 2 Transformation Framework Model Transformation by Graph Transformation , 2006 .

[9]  Pieter Van Gorp,et al.  Transformation Language Integration Based on Profiles and Higher Order Transformations , 2009, SLE.

[10]  Dániel Varró,et al.  The model transformation language of the VIATRA2 framework , 2007, Sci. Comput. Program..

[11]  Saulius Pavalkis,et al.  Implementing semantically rich business vocabularies in CASE tools , 2015 .

[12]  Gabriele Taentzer,et al.  Graphical definition of in-place transformations in the eclipse modeling framework , 2006, MoDELS'06.

[13]  Tom Mens,et al.  A Taxonomy of Model Transformation , 2006, GRaMoT@GPCE.

[14]  Vom Fachbereich Model Integration and Transformation - A Triple Graph Grammar-based QVT Implementation , 2009 .

[15]  Saulius Pavalkis,et al.  Model-driven development of partial model-to-model transformations in a CASE tool , 2016 .

[16]  Austen Rainer,et al.  Case Study Research in Software Engineering - Guidelines and Examples , 2012 .

[17]  Shane Sendall,et al.  Supporting Model-to-Model Transformations: The VMT Approach , 2003 .

[18]  Donald Chapin,et al.  Semantics of Business Vocabulary & Business Rules (SBVR) , 2005, Rule Languages for Interoperability.

[19]  Krzysztof Czarnecki,et al.  Classification of Model Transformation Approaches , 2003 .

[20]  Saulius Pavalkis,et al.  Model-Driven Approach and Implementation of Partial Model-to-Model Transformations in a CASE Tool , 2014, ICIST.

[21]  Gabor Karsai,et al.  The design of a language for model transformations , 2006, Software & Systems Modeling.

[22]  Audris Kalnins,et al.  Model Transformation Language MOLA , 2003, MDAFA.

[23]  Ekkart Kindler,et al.  Comparing relational model transformation technologies: implementing Query/View/Transformation with Triple Graph Grammars , 2009, Software & Systems Modeling.

[24]  Matthias Biehl Literature study on the state of the art in model transformation technology , 2010 .

[25]  Andy Schürr,et al.  Emoflon: leveraging EMF and professional CASE tools , 2011, GI-Jahrestagung.

[26]  Andy Schürr,et al.  Specification of Graph Translators with Triple Graph Grammars , 1994, WG.