Eliminating Invariants in UML/OCL Models

Mathias Soeken, Robert Wille, Rolf Drechsler

In: Conference Proceedings. Design, Automation & Test in Europe (DATE-12) March 12-16 Dresden Germany 2012.


In model-based design, it is common and helpful to use invariants in order to highlight restrictions or to formulate characteristics of a design. In contrast to pre- and post-conditions, they represent global constraints. That is, they are harder to explicitly consider and, thus, become disadvantageous when the design process approaches the implementation phase. As a consequence, they should be removed from a design when it comes to an implementation. However, so far only naïve tool support aiding the designer in this task is available. In this paper, we present an approach which addresses this problem. A methodology is proposed which iteratively removes invariants from a model and, afterwards, presents the designer with invalid scenarios originally prevented by the just eliminated invariant. Using this, the designer can either manually modify the model or simply take the automatically generated suggestion. This enables to entirely eliminate all invariants without changing the semantics of the model. Case studies illustrate the applicability of the proposed approach.

Deutsches Forschungszentrum für Künstliche Intelligenz
German Research Center for Artificial Intelligence