A generic solution for syntax-driven model co-evolution

  • Authors:
  • Mark Van Den Brand;Zvezdan Protić;Tom Verhoeff

  • Affiliations:
  • Eindhoven University of Technology, Eindhoven, The Netherlands;Eindhoven University of Technology, Eindhoven, The Netherlands;Eindhoven University of Technology, Eindhoven, The Netherlands

  • Venue:
  • TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we discuss, and provide a generic solution to the problem referred to as model co-evolution: How to evolve models in case their metamodels evolve? We solve this problem by extending a traditional three-step approach. In the first step, differences between an original and an evolved metamodel are determined. Unlike traditional approaches, we treat metamodels as models conforming to a special metamodel, thus the same difference representation and calculation mechanisms for metamodels as for models are used in our approach. In the second step, metamodel differences are classified into four groups based on their possible influence on co-evolving models, and the possibilities of handling them automatically. We adopt two of these groups (non-breaking and breaking and resolvable differences) from the existing co-evolution approaches, and we introduce two new groups (breaking and semi-resolvable and breaking and human-resolvable differences). In the third step, based on the determined metamodel differences, a generic co-evolution transformation is invoked. This transformation takes the metamodel differences, and a model as arguments, and returns an adapted model. We validated our approach by incorporating our method into a prototype tool for generic model co-evolution, and by testing this tool on a large set of metamodels and models.