Abstract

Clafer is a general purpose modeling language that combines UML-like class and meta-modeling with feature-oriented variability modeling and first-order logic constraints. The considerable expressiveness of Clafer makes automated reasoning about properties like model consistency (i.e., finding a valid model instance) very challenging. In particular, multiplicity annotations and recursive model structures yield a potentially unbounded number of model instances resulting in an infinite search space. Existing approaches for consistency checking encode Clafer models into finite constraint-satisfaction problems by either manually or heuristically, setting bounds for the search space. Hence, if no valid model instance has been found, it is unknown whether the model is inconsistent, or whether the bounds have been chosen too tight. In this paper, we characterize a restricted sub-language of Clafer with complex inheritance relations that is crucial for facilitating sound and complete model-consistency checking. To this end, we present the idea of a novel technique for automated search-space restriction, by flattening Clafer models and encoding them as Integer Linear Programs (ILP). Our evaluation shows very promising results of our approach in terms of runtime efficiency for both flattening of complex inheritance hierarchies as well as sound and complete consistency checking.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call