Metamodel and Constraints Co-evolution: A Semi Automatic Maintenance of OCL Constraints
Résumé
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 structure of the impacted constraints. In this paper, we investigate the 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 the evolution of the UML case study. The results conrm the need of alternative resolutions along with user decision to cope with real co-evolution scenarios. The results show that our approach reaches 80% of semantically correct co-evolution.
Domaines
Informatique [cs]Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...