On the Specification of Full Contracts

  • Authors:
  • Stephen Fenech;Gordon J. Pace;Joseph C. Okika;Anders P. Ravn;Gerardo Schneider

  • Affiliations:
  • Dept. of Computer Science and AI, University of Malta, Malta;Dept. of Computer Science and AI, University of Malta, Malta;Department of Computer Science, Aalborg University, Denmark;Department of Computer Science, Aalborg University, Denmark;Department of Informatics, University of Oslo, Norway

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Contracts specify properties of an interface to a software component. We consider the problem of defining a full contract that specifies not only the normal behaviour, but also special cases and tolerated exceptions. In this paper we focus on the behavioural properties of use cases taken from the Common Component Modelling Example (CoCoME), proposed as a benchmark to compare different component models. We first give the full specification of the use cases in the deontic-based specification language CL, and then we concentrate on three particular properties in order to compare deontic and operational specifications. We conjecture that operational specifications are well suited for normal cases, but are less easily extended for exceptional cases. This hypothesis is investigated by comparing specifications in CSP (operational) with specifications in CL. The outcome of the experiment supports the conjecture and demonstrates clear differences in the basic descriptive power of the formalisms.