Title
Refactoring Multi-Level Models.
Abstract
Multi-level modelling promotes flexibility in modelling by enabling the use of several meta-levels instead of just two, as is the case in mainstream two-level modelling approaches. While this approach leads to simpler models for some scenarios, it introduces an additional degree of freedom as designers can decide the meta-level where an element should reside, having to ascertain the suitability of such decisions. In this respect, model refactorings have been successfully applied in the context of two-level modelling to rearrange the elements of a model while preserving its meaning. Following this idea, we propose a catalogue of 17 novel refactorings specific to multi-level models. Their objective is to help designers in rearranging elements across and within meta-levels and exploring the consequences. In this article, we detail each refactoring in the catalogue, show a classification across different dimensions, and describe the support we provide in our MetaDepth tool. We present two experiments to assess two aspects of our refactorings. The first one validates the predicted semantic side effects of the refactorings on the basis of more than 210.000 refactoring applications. The second one measures the impact of refactorings on three quality attributes of multi-level models.
Year
DOI
Venue
2018
10.1145/3280985
ACM Trans. Softw. Eng. Methodol.
Keywords
DocType
Volume
M eta D epth , Meta-modelling, model refactoring, multi-level modelling
Journal
27
Issue
ISSN
Citations 
4
1049-331X
3
PageRank 
References 
Authors
0.78
0
2
Name
Order
Citations
PageRank
Juan de Lara11596132.28
Esther Guerra250445.53