Efficient Analysis of Pattern-Based Constraint Specifications

By Michael Wahler, David Basin, Achim D. Brucker, and Jana Koehler.

Precision and consistency are important prerequisites for class models to conform to their intended domain semantics. Precision can be achieved by augmenting models with design constraints and consistency can be achieved by avoiding contradictory constraints. However, there are different views of what constitutes a contradiction for design constraints. Moreover, state-of-the-art analysis approaches for proving constrained models consistent either scale poorly or require the use of interactive theorem proving. In this paper, we present a heuristic approach for efficiently analyzing constraint specifications built from constraint patterns. This analysis is based on precise notions of consistency for constrained class models and exploits the semantic properties of constraint patterns, thereby enabling syntax-based consistency checking in polynomial-time. We introduce a consistency checker implementing these ideas and we report on case studies in applying our approach to analyze industrial-scale models. These studies show that pattern-based constraint development supports the creation of concise specifications and provides immediate feedback on model consistency.

Keywords:
UML, OCL, Constraints, Patterns, Consistency

Please cite this work as follows:
M. Wahler, D. Basin, A. D. Brucker, and J. Koehler, “Efficient analysis of pattern-based constraint specifications,” Software and Systems Modeling, vol. 9, no. 2, pp. 225–255, Apr. 2010, doi: 10.1007/s10270-009-0123-6. Author copy: https://logicalhacking.com/publications/wahler.ea-efficient-2010/

BibTeX
@Article{ wahler.ea:efficient:2010,
  author    = {Michael Wahler and David Basin and Achim D. Brucker and Jana
               Koehler},
  title     = {Efficient Analysis of Pattern-Based Constraint
               Specifications},
  journal   = {Software and Systems Modeling },
  publisher = {Springer-Verlag },
  address   = {Heidelberg },
  areas     = {formal methods, software},
  keywords  = {UML, OCL, Constraints, Patterns, Consistency},
  year      = {2010},
  abstract  = {Precision and consistency are important prerequisites for
               class models to conform to their intended domain semantics.
               Precision can be achieved by augmenting models with design
               constraints and consistency can be achieved by avoiding
               contradictory constraints. However, there are different views
               of what constitutes a contradiction for design constraints.
               Moreover, state-of-the-art analysis approaches for proving
               constrained models consistent either scale poorly or require
               the use of interactive theorem proving. In this paper, we
               present a heuristic approach for efficiently analyzing
               constraint specifications built from constraint patterns. This
               analysis is based on precise notions of consistency for
               constrained class models and exploits the semantic properties
               of constraint patterns, thereby enabling syntax-based
               consistency checking in polynomial-time. We introduce a
               consistency checker implementing these ideas and we report on
               case studies in applying our approach to analyze
               industrial-scale models. These studies show that pattern-based
               constraint development supports the creation of concise
               specifications and provides immediate feedback on model
               consistency.},
  issn      = {1619-1366},
  volume    = {9},
  number    = {2},
  month     = {apr},
  doi       = {10.1007/s10270-009-0123-6},
  pages     = {225--255},
  note      = {Author copy: \url{https://logicalhacking.com/publications/wahler.ea-efficient-2010/}},
  pdf       = {https://logicalhacking.com/publications/wahler.ea-efficient-2010/wahler.ea-efficient-2010.pdf},
}