Skip to main content

Specifying Interaction Constraints of Software Components for Better Understandability and Interoperability

  • Conference paper

Part of the Lecture Notes in Computer Science book series (LNPSE,volume 3412)

Abstract

A vital issue in the correct use of commercial-off-the-shelf (COTS) components is the proper understanding of their functionality, quality attributes and ways of operation. Traditionally, COTS component vendors provide some of this information in accompanying documentation. However, the documentation is often informal and likely contains ambiguous and inconsistent statements. Even equipped with interface descriptions clearly defining the basic aspects of component use, such as operation signatures and operating platforms, this documentation does not provide a mathematically sound means for addressing the behavioural interoperability issues in component-based system design. In this paper, we propose a formal but user-friendly component specification approach which augments commercial IDLs with the capability of capturing component interoperability requirements. This approach uses unambiguous temporal operators to define sequencing and concurrency constraints between component operation invocations. Accordingly, it enables precise specifications of how a component provides its services and the correct way in which its services should be used.

Keywords

  • Software Component
  • Label Transition System
  • Call Event
  • Interaction Protocol
  • Return Event

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.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (Canada)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allen, R., Garlan, D.: A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)

    CrossRef  Google Scholar 

  2. Bastide, R., Sy, O., Palanque, P.: Formal specification and prototyping of CORBA systems. In: Guerraoui, R. (ed.) ECOOP 1999. LNCS, vol. 1628, pp. 474–494. Springer, Heidelberg (1999)

    CrossRef  Google Scholar 

  3. Borgida, A., Devanbu, P.: Adding more “DL” to IDL: Towards more knowledgeable component inter-operability. In: Proc. 21th Int’l Conference on Software Engineering (ICSE), pp. 378–387 (1999)

    Google Scholar 

  4. Canal, C., Pimentel, E., Troya, J.M., Vallecillo, A.: Extending CORBA interfaces with protocols. The Computer Journal 44(5), 448–462 (2001)

    CrossRef  MATH  Google Scholar 

  5. Cho, I.: A framework for the specification and testing of the interoperation aspect of components. In: [10], pp. 53–64

    Google Scholar 

  6. Cicalese, C., Rotenstreich, S.: Behavioral specification of distributed software component interfaces. IEEE Computer, 46–53 (July 1999)

    Google Scholar 

  7. Garlan, D., Allen, R., Ockerbloom, J.: Architectural mismatch — why it’s hard to build systems out of existing parts. In: Proc. 17th Int’l Conference on Software Engineering (ICSE), pp. 179–185 (1995)

    Google Scholar 

  8. Han, J.: A comprehensive interface definition framework for software components. In: Proc. Asia-Pacific Software Engineering Conference (APSEC), pp. 110–117 (1998)

    Google Scholar 

  9. Han, J., Ker, K.K.: Ensuring compatible interactions within component-based software systems. In: Proc. Asia-Pacific Software Engineering Conference (APSEC), pp. 436–445 (2003)

    Google Scholar 

  10. Hernández, J., Vallecillo, A., Troya, J. (eds.): Proc. ECOOP Workshop on Object Interoperability (2000)

    Google Scholar 

  11. Jin, Y., Han, J.: PEIDL: An interaction protocol specification language for software components. Technical Report SUTIT-TR2004.02/SUT.CeCSES-TR002, Centre for Component Software and Enterprise Systems, Swinburne University of Technology (June 2004), http://www.it.swin.edu.au/centres/cecses/trs/2004/SUT.CeCSESTR002.pdf

  12. Kramer, R.: iContract— the Java Design by Contract tool. In: Proc. TOOLS (1998)

    Google Scholar 

  13. McKegney, R., Shepard, T.: Techniques for embedding executable specifications in software component interfaces. In: Erdogmus, H., Weng, T. (eds.) ICCBSS 2003. LNCS, vol. 2580, pp. 143–156. Springer, Heidelberg (2003)

    CrossRef  Google Scholar 

  14. Meyer, B.: Object-Oriented Software Construction (1988)

    Google Scholar 

  15. Meyer, B.: Eiffel: the Language. Prentice-Hall, Englewood Cliffs (1992)

    MATH  Google Scholar 

  16. Plasil, F., Visnovsky, W.: Behaviour protocols for software components. IEEE Transactions on Software Engineering 28(11), 1056–1076 (2002)

    CrossRef  Google Scholar 

  17. Reussner, R.H.: An enhanced model for component interfaces to support automatic and dynamic adaption. In: [10], 33–42

    Google Scholar 

  18. Yellin, D.M., Strom, R.E.: Protocol specifications and component adaptors. ACM Transactions on Programming Languages and Systems 19(2), 292–333 (1997)

    CrossRef  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jin, Y., Han, J. (2005). Specifying Interaction Constraints of Software Components for Better Understandability and Interoperability. In: Franch, X., Port, D. (eds) COTS-Based Software Systems. ICCBSS 2005. Lecture Notes in Computer Science, vol 3412. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30587-3_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30587-3_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-24548-3

  • Online ISBN: 978-3-540-30587-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics