A specification of the system under development must include a description of the boundary between the system and its environment. This boundary characterizes the interface of the system. The components in a system interact with each other through their interfaces. It is crucial that each interface specification describes precisely the forms of communications that are permitted at the interface, their causes and effects. Understanding the interface of a component should provide insight into the nature of the system being specified. This is particularly important for systems exhibiting similar behavior, with different interfaces.
KeywordsEquational Theory Time Zone Proof Obligation Interface Specification Deduction Rule
Unable to display preview. Download preview PDF.
- V.S. Alagar, P. Colagrosso, A. Loukas, S. Narayanan, and A. Protopsaltou, “Formal Specifications for Effective Black-Box Reuse,” Technical Reports (2 volumes), Department of Computer Science, Concordia University, Montreal, Canada, February 1996.Google Scholar
- J. Chen, “The Larch/Generic Interface Language,” S.B. Thesis, Department of Electrical Engineering and Computer Science, Massachusettes Institute of Technology, Boston, MA, 1989.Google Scholar
- Y. Cheon, “Larch/Smalltalk: A Specification Language for Smalltalk,” M.Sc. Thesis, Department of Computer Science, Iowa State University, Iowa, 1991.Google Scholar
- P. Colagrosso, “Formal Specification of C++ Class Interfaces for Software Reuse,” M.Comp.Sci. Thesis, Department of Computer Science, Concordia University, Montreal, Canada, 1993.Google Scholar
- K. Jones, LM3: A Larch Interface Language for Modula-3: A Definition and Introduction: Version 1.0, Technical Report 72, DEC/SRC, Digital Equipment Corporation, MA, 1991.Google Scholar
- G.T. Leavens, Larch/C++ Reference Manual, Draft: Revision 5.1, February 1997.Google Scholar
- G.T. Leavens and Y. Cheon, “Preliminary Design of Larch/C++,” in U. Martin and J. Wing (Eds.), Proceedings of the First International Workshop on Larch, Workshops in Computer Science Series, Springer-Verlag, London, 1992.Google Scholar
- Rogue Wave, Tools.h++ Class Library, Version 6.0, Rogue Wave Software, 1993.Google Scholar
- J. Wing, “A Two-Tiered Approach for Specifying Programs,” Technical Report TR_299, Laboratory for Computer Science, Massachussets Institute of Technology, Boston, MA, 1983.Google Scholar