Ronald Middelkoop

Learn More
In general, invariants may depend on the state of other objects. The approach introduced in this paper allows this for objects of mutually visible classes, in a way that supports modular verification. To this end, dependencies are made explicit by cooperation. In particular, invariants expressing non-hierarchical object relations are supported. Furthermore,(More)
Although invariants have a long history, their meaning in OO designs is still under discussion. OO designs often include functionality that is used by different objects (shared functionality). We identify a problem with current interpretations of invariants in such designs. OO designs are often layered, where a layer uses functionality of a lower layer (in(More)
Irrespective of the many different implementation paradigms, it is important that client level specifications allow to balance freedom from implementation bias and properly restricting the possible implementations to the ones that the client desires. Algebraic specification of the black-box behavior of a system provides just this, if a careful choice of(More)
  • 1