A framework for evolution of modelling languages

In model-driven engineering, evolution is inevitable over the course of the complete life cycle of complex software-intensive systems and more importantly of entire product families. Not only instance models, but also entire modelling languages are subject to change. This is in particular true for d...

Full description

Saved in:
Bibliographic Details
Published inScience of computer programming Vol. 76; no. 12; pp. 1223 - 1246
Main Authors Meyers, Bart, Vangheluwe, Hans
Format Journal Article
LanguageEnglish
Published Elsevier B.V 01.12.2011
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:In model-driven engineering, evolution is inevitable over the course of the complete life cycle of complex software-intensive systems and more importantly of entire product families. Not only instance models, but also entire modelling languages are subject to change. This is in particular true for domain-specific languages, whose language constructs are tightly coupled to an application domain. The most popular approach to evolution in the modelling domain is a manual process, with tedious and error-prone migration of artefacts such as instance models as a result. This paper provides a taxonomy for evolution of modelling languages and discusses the different evolution scenarios for various kinds of modelling artefacts, such as instance models, meta-models, and transformation models. Subsequently, the consequences of evolution and the required remedial actions are decomposed into primitive scenarios such that all possible evolutions can be covered exhaustively. These primitives are then used in a high-level framework for the evolution of modelling languages. We suggest that our structured approach enables the design of (semi-)automatic modelling language evolution solutions. ► In model-driven development, evolution of modelling languages is inevitable. ► Necessary migration of (meta-)models and transformation models is currently manual. ► In this paper, a modelling language evolution taxonomy and different evolution scenarios are given. ► Required remedial actions are decomposed into primitive scenarios. ► Our framework for modelling language evolution builds on these primitives.
ISSN:0167-6423
1872-7964
DOI:10.1016/j.scico.2011.01.002