Towards a User-Guided Difference-Based Detection of Atomic Changes
Résumé
Detecting metamodel atomic changes during evolution is prerequisite for co-evolution of models, constraints, and transformations. They are also essential to detect complex changes over the sequence of atomic ones. However when detecting atomic changes with a difference-based technique, the applied order of the atomic changes is not recovered and some hidden changes are undetected. Thus, the quality of the detected atomic change trace is reduced which could be harmful to both co-evolution and detection of complex changes. This paper proposes to identify potential hidden changes in order to add them to the trace of atomic changes, and also to order the atomic changes with ordering heuristics. I. INTRODUCTION Model-Driven Engineering (MDE) has proven to be effective in the development and maintenance of large scale and embedded systems [6]. In MDE, metamodels are core components of a modeling language ecosystem [6]. Metamodels naturally evolve throughout their lifespan which may make the model instances, constraints (e.g. OCL 1), and transformation scripts (e.g. ATL 2 or ETL 3) inconsistent and invalid. Over the past years a growing interest has emerged for an automatic repair, maintenance, and migration of the impacted metamodel-based artifacts, with the prerequisite of correctly detecting the metamodel changes. Two types of metamodel changes are distinguished [8], [9], [7]: a) Atomic changes that are additions, removals, and updates of a metamodel element, and b) Complex changes that consist of a sequence of atomic changes combined together [5]. If not provided in an embedded editor, complex changes are often detected over the sequence of applied atomic changes (e.g. in [13], [9]). Therefore, detecting precisely and correctly atomic changes not only helps in better co-evolving the metamodel-based artifacts, but also to correctly detect complex changes that allow to increase and to reach a higher rate of co-evolution in comparison to when atomic changes only are considered during the co-evolution.
Domaines
Informatique [cs]Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...