Skip to main content

Exceptions in Component Interaction Protocols – Necessity

  • Conference paper
Architecting Systems with Trustworthy Components

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

Abstract

At ADL level, most of the current interaction protocols designed to specify components’ behavior at their interfaces do not allow to capture exceptions explicitly. Based on our experience with real-life component based applications, handling exceptions as first class entities in a (formal) behavior specification is an absolute necessity. Otherwise, due to the need to capture exceptions indirectly, the specification becomes very complex, therefore hard to read and, consequently, error-prone. After analyzing potential approaches to introducing exceptions to LTS-based interaction specification (expressed via terms/expressions) in ADL, the paper presents the way we built exceptions into the behavior protocols. Finally, we discuss the positive experience with applying these exception-aware behavior protocols to a real-life Fractal component model application.

This work was partially supported by the Grant Agency of the Czech Republic project 201/06/0770; the results will be used in the OSIRIS/ITEA project.

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. Adamek, J., Plasil, F.: Component Composition Errors and Update Atomicity: Static Analysis. Journal of Software Maintenance and Evolution: Research and Practice 17(5), 363–377 (2005)

    Article  Google Scholar 

  2. Adamek, J., Plasil, F.: Erroneous Architecture is a Relative Concept. In: Proceedings of SEA conference. ACTA Press, Cambridge (2004)

    Google Scholar 

  3. Adamek, J., Plasil, F.: Partial Bindings of Components - any Harm? In: The Proceedings of APSEC 2004, pp. 632–639. IEEE Computer Society, Los Alamitos (2004)

    Google Scholar 

  4. de Alfaro, L., Henzinger, T.A.: Interface Automata. In: Proceedings of the 9th Annual ACM Symposium on Foundations of Software Engineering, FSE (2001)

    Google Scholar 

  5. Allen, R.J., Garlan, D.: A Formal Basics For Architectural Connection. ACM Transactions on Software Engineering and Methology (July 1997)

    Google Scholar 

  6. DePrince jr., W., Hofmeister, C.: Enforcing a lips Usage Policy for CORBA Components. In: Proceedings of EUROMICRO (September 2003)

    Google Scholar 

  7. Fractal component model: http://fractal.objectweb.org/

  8. Harel, D.: A Visual Formalism for Complex Systems, Science of Computer Programming, vol. 8. Elsevier Science Publishers B.V, Amsterdam (1987)

    MATH  Google Scholar 

  9. Hilderink, G.H.: Managing Complexity of Control Software through Concurrency, PhD thesis, University of Twente, The Netherlands, ISBN 90-365-2204-8 (May 2005)

    Google Scholar 

  10. Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall International, UK, Ltd., Englewood Cliffs (1985)

    MATH  Google Scholar 

  11. Magee, J., Kramer, J.: Concurrency: State models & Java programs. John Wiley & Sons Ltd., Chichester (1999)

    MATH  Google Scholar 

  12. Object Management Group: UML 2.0 Infrastructure Final Adopted Specification, OMG document ptc/03-09-15 (September 2003)

    Google Scholar 

  13. PREfast: http://www.microsoft.com/whdc/devtools/tools/PREfast.mspx

  14. Perseus persistence framework: http://perseus.objectweb.org/

  15. Plasil, F.: Enhancing Component Specification by Behavior Description - the SOFA Experience. In: Proceedings of the 4th WISICT 2005. A volume in the ACM, pp. 185–190. Computer Science Press, Trinity College Dublin, Ireland (2005)

    Google Scholar 

  16. Plasil, F., Visnovsky, S.: Behavior Protocols for Software Components. IEEE Transactions on Software Engineering 28(11) (November 2002)

    Google Scholar 

  17. Plasil, F., Visnovsky, S., Besta, M.: Bounding Behavior via Protocols. In: Proceedings of TOOLS USA 1999 (1999)

    Google Scholar 

  18. Reussner, R.H., Becker, S., Firus, V.: Component Composition with Parametric Contracts, Tagungsband der Net.ObjectDays (2004)

    Google Scholar 

  19. Schmidt, H.W., Kramer, B.J., Poernomo, I., Reussner, R.: Predictable Component Architectures Using Dependent Finite State Machines. In: Wirsing, M., Knapp, A., Balsamo, S. (eds.) RISSEF 2002. LNCS, vol. 2941, pp. 310–324. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  20. Silva, R.M., Guerra, P.A.C., Rubira, C.M.F.: Component Integration using Compositions Contracts with Exception Handling. In: Proceedings of ECOOP2003 Workshop on Exception Handling in Object-Oriented Systems, TR 03-028 Univ. of Minnesota, Dept. of Comp. Sci (July 2003)

    Google Scholar 

  21. SOFA project: http://sofa.objectweb.org/ , http://nenya.ms.mff.cuni.cz/projects.phtml?p=sofa&q=0

  22. Speedo: http://speedo.objectweb.org/

  23. Sun JDO specification: http://java.sun.com/products/jdo/

  24. Vallecillo, A., Vasconcelos, V.T., Ravara, A.: Typing the Behavior of Objects and Components using Session Types. In: 1st International Workshop on Foundations of Coordination Languages and Software Architectures. Electronic Notes in Theoretical Computer Science (2002)

    Google Scholar 

  25. Wallnau, K.: Volume III: A Technology for Predictable Assembly from Certifiable Components, Technical Report CMU/SEI-2003-TR-009 (April 2003)

    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

Plasil, F., Holub, V. (2006). Exceptions in Component Interaction Protocols – Necessity. In: Reussner, R.H., Stafford, J.A., Szyperski, C.A. (eds) Architecting Systems with Trustworthy Components. Lecture Notes in Computer Science, vol 3938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11786160_13

Download citation

  • DOI: https://doi.org/10.1007/11786160_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-35800-8

  • Online ISBN: 978-3-540-35833-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics