A semi-automatic maintenance and co-evolution of OCL constraints with (meta)model evolution

Djamel Eddine Khelladi, Reda Bendraou, Regina Hebig, Marie-Pierre Gervais
2017 Journal of Systems and Software  
Metamodels are core components of modeling languages to dene structural aspects of a business domain. As a complement, OCL constraints are used to specify detailed aspects of the business domain, e.g. more than 750 constraints come with the UML metamodel. As the metamodel evolves, its OCL constraints may need to be co-evolved too. Our systematic analysis shows that semantically dierent resolutions can be applied depending not only on the metamodel changes, but also on the user intent and on the
more » ... structure of the impacted constraints. In this paper, we rst investigate the syntactical reasons that lead to apply dierent resolutions. We then propose a co-evolution approach that oers alternative resolutions while allowing the user to choose the best applicable one. We evaluated our approach on six case studies of metamodel evolution and their OCL constraints co-evolution. The results show the usefulness of alternative resolutions along with user decision to cope with real co-evolution scenarios. Within our six case studies our approach led to an average of 92% (syntactically) and 93% (semantically) matching co-evolution w.r.t. the user intent.
doi:10.1016/j.jss.2017.09.010 fatcat:ffmc77xoxveudgkrggkif6rffa