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

Abstract : Metamodels are core components of modeling languages to define 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 different resolutions can be applied depending not only on the metamodel changes, but also on the user intent and on the structure of the impacted constraints. In this paper, we first investigate the syntactical reasons that lead to apply different resolutions. We then propose a co-evolution approach that offers 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.
Document type :
Journal articles
Complete list of metadatas

Contributor : Marie-Pierre Gervais <>
Submitted on : Monday, March 25, 2019 - 12:20:01 PM
Last modification on : Wednesday, March 27, 2019 - 1:26:16 AM



Djamel Khelladi, Reda Bendraou, Regina Hebig, Marie-Pierre Gervais. A semi-automatic maintenance and co-evolution of OCL constraints with (meta)model evolution. Journal of Systems and Software, Elsevier, 2017, 134, pp.242-260. ⟨10.1016/j.jss.2017.09.010⟩. ⟨hal-02078414⟩



Record views