Co-Transformation of Type and Instance Graphs Supporting Merging of Types and Retyping

Algebraic graph transformation is a well-known rule-based approach to manipulate graphs that can be applied in several contexts. In this paper we use it in the context of model-driven engineering. Graph transformation rules usually specify changes to only one graph per application, however there are use cases such as model co-evolution where not only a single graph should be manipulated but also related ones. The co-transformation of type graphs together with their instance graphs has shown to be a promising approach to formalize model and meta-model co-evolution. In this paper, we extend our earlier work on co-evolution by allowing transformation rules that have less restrictions so that graph manipulations such as merging of types and retyping of graph elements are allowed.

[1]  Pawel Sobocinski,et al.  Adhesive Categories , 2004, FoSSaCS.

[2]  Gabor Karsai,et al.  A domain-specific visual language for domain model evolution , 2004, J. Vis. Lang. Comput..

[3]  Richard F. Paige,et al.  Model Migration with Epsilon Flock , 2010, ICMT@TOOLS.

[4]  Elmar Jürgens,et al.  Automating Language Evolution , 2007, First Joint IEEE/IFIP Symposium on Theoretical Aspects of Software Engineering (TASE '07).

[5]  Michel C. A. Klein,et al.  Ontology Evolution: Not the Same as Schema Evolution , 2004, Knowledge and Information Systems.

[6]  Elmar Jürgens,et al.  COPE - Automating Coupled Evolution of Metamodels and Models , 2009, ECOOP.

[7]  Rudolf K. Keller,et al.  Schema evolution in object databases by catalogs , 1997, Proceedings of the 1997 International Database Engineering and Applications Symposium (Cat. No.97TB100166).

[8]  Carlo Curino,et al.  Update Rewriting and Integrity Constraint Maintenance in a Schema Evolution Support System: PRISM++ , 2010, Proc. VLDB Endow..

[9]  Frank Hermann,et al.  Sesqui-Pushout Rewriting , 2006, ICGT.

[10]  Carlo Curino,et al.  The PRISM Workwench: Database Schema Evolution without Tears , 2009, 2009 IEEE 25th International Conference on Data Engineering.

[11]  Richard F. Paige,et al.  A comparison of model migration tools , 2010, MODELS'10.

[12]  Jean Bézivin,et al.  KM3: A DSL for Metamodel Specification , 2006, FMOODS.

[13]  Reda Alhajj,et al.  Rule-based schema evolution in object-oriented databases , 2003, Knowl. Based Syst..

[14]  Gabriele Taentzer,et al.  Co-Transformation of Type and Instance Graphs Supporting Merging of Types with Retyping-Long Version-⋆ , 2012 .

[15]  Gabriele Taentzer,et al.  Co-transformation of Graphs and Type Graphs with Application to Model Co-evolution , 2012, ICGT.

[16]  Udo Kelter,et al.  A rule-based approach to the semantic lifting of model differences in the context of model versioning , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[17]  B. Gruschko Towards Synchronizing Models with Evolving Metamodels , 2007 .

[18]  Ralf Lämmel,et al.  Grammar Adaptation , 2001, FME.

[19]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[20]  Claudia Ermel,et al.  Simulation and animation of visual languages based on typed algebraic graph transformation , 2006 .

[21]  Gabor Karsai,et al.  Metamodelling - State of the Art and Research Challenges , 2007, Model-Based Engineering of Embedded Real-Time Systems.

[22]  Michael Löwe,et al.  Model Transformation and Induced Instance Migration: A Universal Framework , 2011, SBMF.

[23]  Gabor Karsai,et al.  A semi-formal description of migrating domain-specific models with evolving domains , 2013, Software & Systems Modeling.

[24]  Hartmut Ehrig,et al.  Cospan DPO Approach: An Alternative for DPO Graph Transformations , 2009, Bull. EATCS.

[25]  Sander Vermolen,et al.  An Extensive Catalog of Operators for the Coupled Evolution of Metamodels and Models , 2010, SLE.

[26]  Xue Li A survey of schema evolution in object-oriented databases , 1999, Proceedings Technology of Object-Oriented Languages and Systems (Cat. No.PR00393).

[27]  Hartmut Ehrig,et al.  Transformation of Type Graphs with Inheritance for Ensuring Security in E-Government Networks , 2009, FASE.

[28]  Antonio Cicchetti,et al.  Automating Co-evolution in Model-Driven Engineering , 2008, 2008 12th International IEEE Enterprise Distributed Object Computing Conference.

[29]  Michael Barr,et al.  Category theory for computing science (2. ed.) , 1995, Prentice Hall international series in computer science.

[30]  Philippe Brèche,et al.  Advanced Principles for Changing Schemas of Object Databases , 1996, CAiSE.

[31]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.