Finding Achievable Features and Constraint Conflicts for Inconsistent Metamodels [chapter]

Hao Wu
2017 Lecture Notes in Computer Science  
Determining the consistency of a metamodel is a task of generating a metamodel instance that not only meets structural constraints but also constraints written in Object Constraint Language (OCL). Those constraints can be conflicting, resulting in inconsistencies. When this happens, the existing techniques and tools have no knowledge about which constraints are achievable and which ones cause the conflicts. In this paper, we present an approach to finding achievable metamodel features and
more » ... aint conflicts for inconsistent metamodels. This approach allows users to rank individual metamodel features and works by reducing it to a weighted maximum satisfiability modulo theories (MaxSMT). This reduction allows us to utilise SMT solvers to tackle multiple ranked constraints and at the same time locate conflicts among them. We have prototyped this approach, incorporated it into an existing modelling tool, and evaluated it against a benchmark. The preliminary results show that our approach is promising and scalable.
doi:10.1007/978-3-319-61482-3_11 fatcat:tm6m44o52nc2ffxd2busf6rmey