Enriching OCL using observational mu-calculus

Julian Bradfield


The Object Constraint Language is a textual specification language which forms part of the Unified Modelling Language. Its principal uses are specifying constraints such as well-formedness conditions (e.g. in the definition of UML itself) and specifying contracts between parts of a system being modelled in UML. Focussing on the latter, we propose a systematic way to extend OCL with temporal constructs in order to express richer contracts. Our approach is based on observational mu-calculus, a two-level temporal logic in which temporal features at the higher level interact cleanly with a domain specific logic at the lower level. Using OCL as the lower level logic, we achieve much improved expressiveness in a modular way. We present a unified view of invariants and pre/post conditions, and we show how the framework can be used to permit the specification of liveness properties.
Wednesday 20th February 2002, 14:00
Board Room
Department of Computer Science