Enhancing the Object Constraint Language for More Expressive Specifications

  • Authors:
  • Ali Hamie

  • Affiliations:
  • -

  • Venue:
  • APSEC '99 Proceedings of the Sixth Asia Pacific Software Engineering Conference
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

The Object Constraint Language (OCL) is a precise language which could be used for describing constraints on object-oriented models and other modeling artifacts. The kind of constraints which can be described using OCL include invariants on classes, types and interfaces, preconditions and postconditions of operations and methods. This paper describes some enhancements to OCL that make specifications convey information more effectively. For example, adding redundant invariants, time-based constraints, postconditions, and examples could make the specification clearer to readers, and can be used in showing that the specification says what is intended. Another example of an enhancement is the use of case analysis sugar which splits up a specification into manageable parts. These enhancements have been already integrated in some specification languages such as Larch/ C++, a larch style behavioral interface specification language for C++.