Skip to main content

Component Composition Preserving Behavioural Contracts Based on Communication Traces

  • Conference paper
Implementation and Application of Automata (CIAA 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3845))

Included in the following conference series:

  • 432 Accesses

Abstract

This paper investigates the compositional properties of reusable software components defined with explicit dependencies and behavioural contracts expressing rely-guarantee specifications in the form of communication traces. In this setting, connection of components through their matching ports is indeed compositional and yields a new component or composite that respects its constituents’ contracts. Thus the behaviour of the composite is computed from the behaviours of its constituents and is known to conform to the contracts without any new proof.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Szyperski, C.: Component Software – Beyong Object Oriented Programming, 2nd edn. Addison-Wesley / ACM Press, Reading (2002)

    Google Scholar 

  2. OMG: CORBA Components, Version 3.0, formal/02-06-65 (2003)

    Google Scholar 

  3. Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26, 70–93 (2000)

    Article  Google Scholar 

  4. Plasil, F., Visnovsky, S.: Behavior protocols for software components. IEEE Transations on Software Engineering 28, 1056–1076 (2002)

    Article  Google Scholar 

  5. Acherman, F., Nierstrasz, O.: Applications = Components + Scripts – A tour of Piccola. In: Software Architectures and Component Technology, Kluwer, Dordrecht (2001)

    Google Scholar 

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

    Article  Google Scholar 

  7. Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying distributed software architectures. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, vol. 989, pp. 137–153. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  8. ter Beek, M.H., Kleijn, J.: Team automata satisfying compositionality. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 381–400. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  9. Simplot-Ryl, I., Bailly, A., Clerbout, M.: Component composition preserving behavioral contracts. Technical Report TR-05-01, Université des Sciences et Technologies de Lille, France (2005), http://www.lifl.fr/~ryl/publi/RR-2005-01.pdf

  10. Charpentier, M.: Composing invariants. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 401–421. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  11. Abadi, M., Lamport, L.: Conjoining specifications. ACM Transactions on Programming Languages and Systems 17, 507–534 (1995)

    Article  Google Scholar 

  12. Aldrich, J., Chambers, C., Notkin, D.: Architectural reasoning in archjava. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 334–367. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  13. Duboc, C.: Commutations dans les Monoides libres : un Cadre Théorique pour l’Étude du Parallélisme. PhD thesis, Université de Rouen, France (1986)

    Google Scholar 

  14. de Simone, R.: Langages infinitaires et produit de mixage. Theoretical Computer Science 31, 83–100 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  15. Simplot-Ryl, I., Clerbout, M., Bailly, A.: Stac: Communication traces based specifictions and tests of software components. In: Proc. of the 15th Nordic Workshop on Programming Theory (NWPT 2003), Turku, Finland (2003)

    Google Scholar 

  16. Liskov, B., Wing, J.M.: A behavioral notion of subtyping. ACM Transactions on Programming Languages and Systems 16, 1811–1841 (1994)

    Article  Google Scholar 

  17. Bracciali, A., Brogi, A., Canal, C.: A formal approach to component adaptation. Journal of Systems and Software 74, 45–54 (2005)

    Article  Google Scholar 

  18. Moisan, S., Ressouche, A., Rigault, J.P.: Behavioral substitutability in component frameworks: A formal approach. In: ESEC/FSE 2003 Specification and Verification of Component-Based Systems Workshop, vol. TR #03-11 of Iowa State University, Helsinki, Finland (2003)

    Google Scholar 

  19. Canal, C., Fuentes, L., Troya, J., Vallecillo, A.: Extending CORBA interfaces with pi-calculus for protocol compatibility. In: Proc. TOOLS Europe 2000, Mont Saint-Michel, France, pp. 208–225. IEEE Computer Society Press, Los Alamitos (2000)

    Google Scholar 

  20. Harel, D., Kupferman, O.: On object systems and behavioral inheritance. IEEE Transactions on Software Engineering 28, 889–903 (2002)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bailly, A., Clerbout, M., Simplot-Ryl, I. (2006). Component Composition Preserving Behavioural Contracts Based on Communication Traces. In: Farré, J., Litovsky, I., Schmitz, S. (eds) Implementation and Application of Automata. CIAA 2005. Lecture Notes in Computer Science, vol 3845. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11605157_5

Download citation

  • DOI: https://doi.org/10.1007/11605157_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-31023-5

  • Online ISBN: 978-3-540-33097-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics