Skip to main content

An Architectural-Level Exception-Handling System for Component-Based Applications

  • Conference paper
Dependable Computing (LADC 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2847))

Included in the following conference series:

Abstract

Component-based software systems built out of reusable software components are being used in a wide range of applications which have high dependability requirements. In order to accomplish the required levels of dependability, it is necessary to incorporate into these complex systems means for to cope with software faults. Exception handling is a well-known technique for adding forward error recovery to software systems supported by various mainstream programming languages. However, exception handling for component-based applications at the architectural level introduces new challenges which are not addressed by traditional exception handling systems, such as unavailability of source code, specially when off-the-shelf components are employed. In this paper, we present an exception handling system which adds fault tolerance to component-based systems at the architectural level. Our solution considers issues which are specific to component-based applications, such as unavailability of source code. We also present a framework which implements the proposed exception handling system for applications built using the C2 architectural style.

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. Anderson, T., Lee, P.A.: Fault Tolerance: Principles and Practice, 2nd edn. Prentice-Hall, Englewood Cliffs (1990)

    MATH  Google Scholar 

  2. Brown, A.W., Wallnau, K.C.: The Current State of CBSE. IEEE Software 15(5), 37–46 (1998)

    Article  Google Scholar 

  3. Clements, P.C., Northrop, L.: Software Architecture: An Executive Overview. Technical Report CMU/SEI-96-TR-003. Software Engineering Institute, Carnegie Mellon University (1996)

    Google Scholar 

  4. Cook, J.E., Dage, J.A.: Highly Reliable Upgrading of Components. In: Proceedings of the 21st International Conference on Software Engineering, pp. 203–212 (1999)

    Google Scholar 

  5. Cristian, F.: Exception Handling. In: Anderson, T. (ed.) Dependability of Resilient Computers. BSP Professional Books (1989)

    Google Scholar 

  6. Dashofy, E.M., Medvidovic, N., Taylor, R.N.: Using Off-The- Shelf Middleware to Implement Connectors in Distributed Software Architectures. In: Proceedings of the 21st International Conference on Software Engineering (ICSE 1999), pp. 3–12 (1999)

    Google Scholar 

  7. Garcia, A., Beder, D., Rubira, C.: An Exception Handling Mechanism for Developing Dependable Object-Oriented Software Based on a Meta-Level Approach. In: Proceedings of the 10th International Symposium on Software Reliability Engineering - ISSRE 1999, pp. 52–61. IEEE Computer Society Press, Los Alamitos (1999)

    Google Scholar 

  8. Garcia, A., Rubira, C., Romanovsky, A., Xu, J.: A Comparative Study of Exception Handling Mechanisms for Building Dependable Object-Oriented Software. Journal of Systems and Software 59(2), 197–222 (2001)

    Article  Google Scholar 

  9. Garlan, D., Monroe, R.T., Wile, D.: Acme: Architectural Description of Component-Based Systems. In: Levens, G.T., Sitaraman, M. (eds.) Foundations of Component -Based Systems, pp. 47–67. Cambridge University Press, Cambridge (2000)

    Google Scholar 

  10. Goodenough, J.B.: Exception Handling: Issues and a Proposed Notation. Communications of the ACM 18(12), 683–696 (1975)

    Article  MATH  MathSciNet  Google Scholar 

  11. Gosling, J., Joy, B., Steele, G.: The Java Language Specification. Addison-Wesley, Reading (1996)

    MATH  Google Scholar 

  12. Guerra, P., Rubira, C., de Lemos, R.: An Idealized Fault- Tolerant Architectural Component. In: Proceedings of the 24th International Conference on Software Engineering – Workshop on Architecting Dependable Systems (2002)

    Google Scholar 

  13. Guerra, P.A.C., Rubira, C.M.F., de Lemos, R.: A Fault-Tolerant Architecture for Component-Based Software Systems. In: de Lemos, R., Gracek, C., Romanosvsky, A. (eds.) Architecting Dependable Systems. LNCS. Springer, Heidelberg (2003) (to appear)

    Google Scholar 

  14. Guerra, P., Rubira, C., Romanovsky, A., de Lemos, R.: Integrating COTS Software Componentes Into Dependable Software Architectures. In: Proceedings of the 6th International Symposium on Object-Oriented Real-Time Distributed Computing. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  15. Issarny, V., Banatre, J.P.: Architecture-Based Exception Handling. In: Proceedings of the 34th Annual Hawaii International Conference on System Sciences. IEEE Society Press, Los Alamitos (2001)

    Google Scholar 

  16. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Lingtier, J., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  17. Koening, A., Stroustrup, B.: Exception Handling for C++. Jornal of Object- Oriented Programmings 3(2), 16–33 (1990)

    Google Scholar 

  18. Lacourte, S.: Exceptions in Guide, an Object-Oriented Language for Distributed Applications. In: America, P. (ed.) ECOOP 1991. LNCS, vol. 512, pp. 268–287. Springer, Heidelberg (1991)

    Chapter  Google Scholar 

  19. Maes, P.: Concepts and Experiments in Computational Reflection. ACM SIGPLAN Notices 22(12), 147–155 (1987)

    Article  Google Scholar 

  20. Medvidovic, N., Oreizy, P., Taylor, R.N.: Reuse of Off-the-Shelf Components in C2-Style Architectures. In: Proceedings of the 1997 Symposium on Software Reusability, pp. 190–198 (1997)

    Google Scholar 

  21. Rakic, M., Medvidovic, N.: Increasing the Confidence in Off-the-Shelf Components: A Software Connector-Based Approach. In: Proceedings of the 2001 Symposium on Software Reusability, pp. 11–18 (2001)

    Google Scholar 

  22. Saridakis, T., Issarny, V.: Fault-Tolerant Software Architectures. Technical Report 3350. INRIA (1999)

    Google Scholar 

  23. Sloman, M., Kramer, J.: Distributed Systems and Computer Networks. Prentice-Hall, Englewood Cliffs (1987)

    Google Scholar 

  24. Sprott, D.: Componentizing the Enterprise Application Packages. Communications of the ACM 43(4), 63–69 (2000)

    Article  Google Scholar 

  25. Stavridou, V., Riemenschneider, A.: Provably Dependable Software Architectures. In: Proceedings of the Third ACM SIGPLAN International Software Architecture Workshop, pp. 133–136. ACM Press, New York (1998)

    Chapter  Google Scholar 

  26. Sun Microsystems: Enterprise Javabeans Specification v2.1 - Proposed Final Draft (2002), Avaliable at http://java.sun.com/products/ejb/

  27. Taft, S.T., Duff, R.A.: Ada 95 Reference Manual. Language and Standard Libraries. LNCS, vol. 1246. Springer, Heidelberg (1997)

    Google Scholar 

  28. Taylor, R.N., Medvidovic, N., Anderson, K.M., Whitehead Jr., E.J., Robbins, J.E.: A Component- and Message- Based Architectural Style for GUI Software. In: Proceedings of the 17th International Conference on Software Engineering, pp. 295–304 (1995)

    Google Scholar 

  29. UCI: ArchStudio 3.0 Homepage, Available at http://www.isr.uci.edu/projects/archstudio

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Filho, F.C., Asterio de C. Guerra, P., Rubira, C.M.F. (2003). An Architectural-Level Exception-Handling System for Component-Based Applications. In: de Lemos, R., Weber, T.S., Camargo, J.B. (eds) Dependable Computing. LADC 2003. Lecture Notes in Computer Science, vol 2847. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45214-0_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-45214-0_23

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20224-0

  • Online ISBN: 978-3-540-45214-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics