• V. S. Alagar
  • K. Periyasamy
Part of the Graduate Texts in Computer Science book series (TCS)


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.


Equational Theory Time Zone Proof Obligation Interface Specification Deduction Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    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
  2. [2]
    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
  3. [3]
    Y. Cheon, “Larch/Smalltalk: A Specification Language for Smalltalk,” M.Sc. Thesis, Department of Computer Science, Iowa State University, Iowa, 1991.Google Scholar
  4. [4]
    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
  5. [5]
    D. Guaspari, C. Marceau, and W. Polak, “Formal Verification of Ada Programs,” IEEE Transactions on Software Engineering, Vol. 16, No. 9, September 1990, pp. 1058–1075.CrossRefGoogle Scholar
  6. [6]
    J.V. Guttag, J.J. Horning, with S.J. Garland, K.D. Jones, A. Modet, and J.M. Wing, Larch: Languages and Tools for Formal Specification, Springer-Verlag, New York, NY, 1993.zbMATHCrossRefGoogle Scholar
  7. [7]
    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
  8. [8]
    G.T. Leavens, Larch/C++ Reference Manual, Draft: Revision 5.1, February 1997.Google Scholar
  9. [9]
    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
  10. [10]
    Rogue Wave, Tools.h++ Class Library, Version 6.0, Rogue Wave Software, 1993.Google Scholar
  11. [11]
    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
  12. [12]
    J. Wing, “Writing Larch Interface Language Specifications,” ACM Transactions on Programming Languages and Systems, Vol. 9, No. 1, 1987, pp. 1–24.MathSciNetzbMATHCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 1998

Authors and Affiliations

  • V. S. Alagar
    • 1
  • K. Periyasamy
    • 2
  1. 1.Department of Computer ScienceConcordia UniversityMontrealCanada
  2. 2.Department of Computer ScienceUniversity of ManitobaWinnipegCanada

Personalised recommendations