Specifying reusable components using Contracts (1992)
| Citations: | 104 - 0 self |
BibTeX
@INPROCEEDINGS{Holland92specifyingreusable,
author = {Ian M. Holland},
title = {Specifying reusable components using Contracts},
booktitle = {},
year = {1992},
pages = {287--308},
publisher = {Springer-Verlag}
}
Years of Citing Articles
OpenURL
Abstract
Contracts were introduced by Helm et al. as a high level construct for explicitly specifying interactions among groups of objects. This paper describes further developments and application of the Contract construct. We show how Contracts can be used to represent classic algorithms as large grained reusable object oriented abstractions, how these algorithms can be customized through Contract refinement and how they are reused through Contract conformance. The example algorithm used throughout is the classic graph depth first traversal algorithm. This algorithm is represented as a Contract which is then refined to specify algorithms which number connected regions of graphs and which check graphs for cycles. Changes to the Contract language are introduced and we discuss some new problems resulting from the simultaneous reuse of related contracts. 1 Introduction Contracts were introduced by Helm et al. [9] as a construct for explicitly specifying interactions among groups of objects. The...







