Making components contract aware
- 1 July 1999
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in Computer
- Vol. 32 (7) , 38-45
- https://doi.org/10.1109/2.774917
Abstract
Components have long promised to encapsulate data and programs into a box that operates predictably without requiring that users know the specifics of how it does so. Many advocates have predicted that components will bring about widespread software reuse, spawning a market for components usable with such mainstream software buses as the Common Object Request Broker Architecture (CORBA) and the Distributed Component Object Model (DCOM). In the Windows world, at least, this prediction is becoming a reality. Yet recent reports indicate mixed results when using and reusing components in mission-critical settings. Such results raise disturbing questions. How can you trust a component? What if the component behaves unexpectedly, either because it is faulty or simply because you misused it? Before we can trust a component in mission-critical applications, we must be able to determine, reliably and in advance, how it will behave. In this article the authors define a general model of software contracts and show how existing mechanisms could be used to turn traditional components into contract-aware ones.Keywords
This publication has 7 references indexed in Scilit:
- The specification of process synchronization by path expressionsPublished by Springer Nature ,2005
- Using interface definition languages to support path expressions and programming by contractPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Real-time Object Oriented Distributed Processing with COREMOPublished by Springer Nature ,1998
- The design of the TAO real-time object request brokerComputer Communications, 1998
- Testing component-based software: a cautionary taleIEEE Software, 1998
- Design by contract: the lessons of ArianeComputer, 1997
- Applying 'design by contract'Computer, 1992