Model Transformation By-Example: A Survey of the First Wave

Model-Driven Engineering (MDE) places models as first-class artifacts throughout the software lifecycle. In this context, model transformations are crucial for the success of MDE, being comparable in role and importance to compilers for high-level programming languages. Thus, several model transformation approaches have been developed in the last decade, whereby originally most of them are based on the abstract syntax of modeling languages. However, this implementation specific focus makes it difficult for modelers to develop model transformations, because they are familiar with the concrete syntax but not with its computer internal representation. To tackle this problem, model transformation by-example approaches have been proposed which follow the same fundamental idea as query by-example and programming by-example approaches. Instead of using the computer internal representation of models, examples represented in concrete syntax are used to define transformations. Because different transformation scenarios occur in MDE, different by-example approaches have been developed. This chapter gives an overview on the emerging concepts, techniques, and approaches in this young by-example area.

[1]  Erhard Rahm,et al.  A survey of approaches to automatic schema matching , 2001, The VLDB Journal.

[2]  Jordi Cabot From Declarative to Imperative UML/OCL Operation Specifications , 2007, ER.

[3]  Richard F. Paige,et al.  The Epsilon Transformation Language , 2008, ICMT@TOOLS.

[4]  Clémentine Nebut,et al.  From transformation traces to transformation rules: Assisting model driven engineering approach with formal concept analysis , 2009, ICCS 2009.

[5]  Stefano Spaccapietra Journal on Data Semantics IV , 2005, Journal on Data Semantics IV.

[6]  Moshé M. Zloof Query-by-example: the invocation and definition of tables and forms , 1975, VLDB '75.

[7]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[8]  Dániel Varró,et al.  Model transformation by example , 2006, MoDELS'06.

[9]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[10]  Jérôme Euzenat,et al.  A Survey of Schema-Based Matching Approaches , 2005, J. Data Semant..

[11]  Jorge J. Gómez-Sanz,et al.  Model Transformation By-Example: An Algorithm for Generating Many-to-Many Transformation Rules in Several Model Transformation Languages , 2009, ICMT@TOOLS.

[12]  Bernhard Rumpe,et al.  Model-driven Development of Complex Software : A Research Roadmap , 2007 .

[13]  Jean Bézivin,et al.  ATL: A model transformation tool , 2008, Sci. Comput. Program..

[14]  Lu Zhang,et al.  Applying OO Metrics to Assess UML Meta-models , 2004, UML.

[15]  Mark A. Hillebrand,et al.  Invariants, Modularity, and Rights , 2009, Ershov Memorial Conference.

[16]  Gerti Kappel,et al.  Matching Metamodels with Semantic Systems - An Experience Report , 2007, BTW Workshops.

[17]  Tobias Rötschke,et al.  MOFLON: A Standard-Compliant Metamodeling Framework with Graph Transformations , 2006, ECMDA-FA.

[18]  Thomas Kühne,et al.  Matters of (Meta-) Modeling , 2006, Software & Systems Modeling.

[19]  Gerti Kappel,et al.  SmartMatcher: Improving Automatically Generated Transformations , 2009, Datenbank-Spektrum.

[20]  Manuel Wimmer,et al.  Towards Model Transformation Generation By-Example , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[21]  Manuel Wimmer,et al.  Towards end-user adaptable model versioning: The By-Example Operation Recorder , 2009, 2009 ICSE Workshop on Comparison and Versioning of Software Models.

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

[23]  Perdita Stevens A Simple Game-Theoretic Approach to Checkonly QVT Relations , 2009, ICMT@TOOLS.

[24]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

[25]  Gerti Kappel,et al.  Lifting metamodels to ontologies: a step to the semantic integration of modeling languages , 2006, MoDELS'06.

[26]  Shane Sendall,et al.  Model Transformation: The Heart and Soul of Model-Driven Software Development , 2003, IEEE Softw..

[27]  Jim Steel,et al.  MOF QVT final adopted specification: meta object facility (MOF) 2.0 query/view/transformation specification. , 2005 .

[28]  Krzysztof Czarnecki,et al.  Feature-based survey of model transformation approaches , 2006, IBM Syst. J..

[29]  Gerti Kappel,et al.  Model-to-Model Transformations By Demonstration , 2010, ICMT@TOOLS.

[30]  Wei Tang,et al.  Meta Object Facility , 2009, Encyclopedia of Database Systems.

[31]  Jeffrey G. Gray,et al.  MT-Scribe: an end-user approach to automate software model evolution , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[32]  Dániel Varró,et al.  Model transformation by example using inductive logic programming , 2008, Software & Systems Modeling.

[33]  Manfred Nagl,et al.  Applications of Graph Transformations with Industrial Relevance , 2004, Lecture Notes in Computer Science.

[34]  Douglas C. Schmidt,et al.  Model-Driven Engineering , 2006 .

[35]  Jesús Sánchez Cuadrado,et al.  RubyTL: A Practical, Extensible Transformation Language , 2006, ECMDA-FA.

[36]  Thomas Baar,et al.  On the Usage of Concrete Syntax in Model Transformation Rules , 2006, Ershov Memorial Conference.

[37]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

[38]  Arend Rensink Model Driven Architecture - Foundations and Applications, 5th European Conference, ECMDA-FA 2009, Enschede, The Netherlands, June 23-26, 2009. Proceedings , 2009, ECMDA-FA.

[39]  Andrew B. Whinston,et al.  Model management , 1994 .

[40]  Gabriele Taentzer,et al.  AGG: A Graph Transformation Environment for Modeling and Validation of Software , 2003, AGTIVE.

[41]  Colin Atkinson,et al.  Model-Driven Development: A Metamodeling Foundation , 2003, IEEE Softw..

[42]  Kevin Lano,et al.  Slicing of UML models using model transformations , 2010, MODELS'10.

[43]  Ulrich Nickel,et al.  The FUJABA environment , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[44]  João Araújo,et al.  An expressive aspect composition language for UML state diagrams , 2007, MODELS'07.

[45]  Anneke Kleppe,et al.  Software Language Engineering: Creating Domain-Specific Languages Using Metamodels , 2008 .

[46]  Jean Bézivin,et al.  On the unification power of models , 2005, Software & Systems Modeling.

[47]  H. Sahraoui,et al.  Model Transformation as an Optimization Problem , 2008, MoDELS.

[48]  Juan de Lara,et al.  AToM3: A Tool for Multi-formalism and Meta-modelling , 2002, FASE.

[49]  Bernhard Thalheim,et al.  Conceptual Modeling - ER 2007 , 2007, Lecture Notes in Computer Science.

[50]  Gerti Kappel,et al.  An Example Is Worth a Thousand Words: Composite Operation Modeling By-Example , 2009, MoDELS.

[51]  Jeffrey G. Gray,et al.  Model Transformation by Demonstration , 2009, MoDELS.

[52]  Manuel Wimmer,et al.  A Framework for Model Transformation By-Example: Concepts and Tool Support , 2008, TOOLS.

[53]  Philip A. Bernstein,et al.  Model management 2.0: manipulating richer mappings , 2007, SIGMOD '07.