Automatic maintenance of association invariants
Welch J., Faitelson D., Davies J.
Many approaches to software specification and design make use of invariants: statements whose truth is preserved under various operations upon a system or component. Approaches that involve the construction of object-oriented or entity-relationship models require the expression of a particular kind of global invariant, concerning associations between objects or entities. This paper shows how association invariants can be expressed in a new, object-based formal language. It then explains how these expressions can be used to determine pre- and post-conditions for local operations, sufficient to ensure that the invariants are maintained. These conditions - and the program text to implement them - can be generated automatically. This makes it easier to produce correct implementations of an object-oriented design. © 2005 IEEE.