Skip to main content

An Architectural-Based Reflective Approach to Incorporating Exception Handling into Dependable Software

  • Chapter
  • First Online:
Advances in Exception Handling Techniques

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

Abstract

Modern object-oriented software is inherently complex and has to cope with an increasing number of exceptional conditions to meet the system’s dependability requirements. In this context, the goal of our work is twofold: (i) to present an exception handling model which is suitable for developing dependable object-oriented software, and (ii) to provide a systematic approach to incorporating exception handling during the design stage, that is, from the architectural design stage to the detailed design stage. The proposed approach employs the computational reflection concept to achieve a clear and transparent separation of concerns between the application’s functionality and the exception handling facilities. This separation minimizes the complexity caused by the handling of abnormal behavior and facilitates the task of building dependable software with better readability, maintainability and reusability.

Acknowledgments

This work has been supported by CNPq/Brazil under grant No. 141457/2000-7 for Alessandro, and grant No. 351592/97-0 for Cecìlia. She is also supported by the FINEP “Advanced Information Systems” Project (PRONEX-SAI-7697102200).

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 16.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. Avizienis, A.: Toward Systematic Design of Fault-Tolerant Systems. Computer 30(4):51–58 (1997)

    Article  Google Scholar 

  2. Beder, D., Romanovsky, A., Randel, A., Snow, C., Stroud, R.: An Application of Fault Tolerance Patterns and Coordinated Atomic Actions to a Problem in Railway Scheduling. ACM Operating System Review, 34(4):21–31 (2000)

    Article  Google Scholar 

  3. Borgida, A.: Language Features for Flexible Handling of Exceptions in Information Systems. ACM Transactions on Database Systems, 10(4):565–603 (1985)

    Article  Google Scholar 

  4. Borgida, A.: Exceptions in Object-Oriented Languages. ACM Sigplan Notices, 21(10):107–119 (1986)

    Article  Google Scholar 

  5. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: A System of Patterns: Patterns-Oriented Software. John Wiley & Sons, (1996)

    Google Scholar 

  6. Campbell, R., Randell, B.: Error Recovery in Asynchronous Systems. IEEE Trans-actions on Software Engineering, 12(8):811–826 (1986)

    Google Scholar 

  7. Cristian, F.: Exception Handling and Software Fault Tolerance. IEEE Transactions on Computers, C-31(6):531–540, (1982)

    Article  Google Scholar 

  8. Cui, Q., Gannon, J.: Data-Oriented Exception Handling. IEEE Transactions on Software Engineering, 18(5):393–401, (1992)

    Article  Google Scholar 

  9. Dony, C.: Exception Handling and Object-Oriented Programming: Towards a Synthesis. ACM Sigplan Notices, 25(10): 322–330, (1990)

    Article  Google Scholar 

  10. de Lemos, R., Romanovsky, A.: Exception Handling in the Software Lifecycle. Int. Journal of Computer Systems Science and Engineering, (Accepted in 2000)

    Google Scholar 

  11. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns-Elements of Reusable Object-Oriented Software. Addison Wesley Publishing Company, (1995)

    Google Scholar 

  12. Garcia, A.: Exception Handling in Concurrent Object-Oriented Software. Master’s thesis, Institute of Computing, University of Campinas, Brazil, March (2000)

    Google Scholar 

  13. Garcia, A., An Exception Handling Mechanism for Developing Dependable Object-Oriented Software Based on a Meta-Level Approach. Proceedings of the 10th IEEE ISSRE, USA, November (1999), 52–61

    Google Scholar 

  14. Garcia, A., Beder, D., Rubira, C.: An Exception Handling Software Architecture for Developing Fault-Tolerant Software. Proceedings of the 5th IEEE HASE, USA, November (2000), 311–320

    Google Scholar 

  15. Garcia, A., Rubira, C., Romanovsky, A., Xu, J.: A Comparative Study of Exception Handling Mechanisms for Building Dependable Object-Oriented Software. Technical Report CS-TR-714, Comput. Dept., Univ. of Newcastle upon Tyne, (2000)

    Google Scholar 

  16. Goodenough, J.: Exception Handling: Issues and a Proposed Notation. Communi-cations of the ACM, 18(12): 683–696, (1975)

    Article  MATH  MathSciNet  Google Scholar 

  17. Liskov, B., Snyder, A.: Exception Handling in CLU. IEEE Transactions on Software Engineering, 5(6):546–558, (1979)

    Article  Google Scholar 

  18. Maes, P.: Concepts and Experiments in Computacional Reflection. ACM SIG-PLAN Notices, 22(12):147–155, (1987)

    Article  Google Scholar 

  19. Moon, D., Weinreb, D.: Signalling and Handling Conditions. LISP Machine Manual, 4th Edition, MIT Artif. Intelligence Lab, Cambridge, Massachussets, (1983)

    Google Scholar 

  20. Oliva, A., Buzato, L.: Composition of Meta-Objects in Guaraná. Proceedings of the Workshop on Reflective Programming in C++ and Java, OOPSLA’98, Vancouver, Canada, (1998), 86–90

    Google Scholar 

  21. Pitman, K.: Error/Condition Handling. Contribution to WG16, revision 18, Proposals for ISO-LISP. AFNOR, ISO/IEC JTC1/SC 22/WG 16N15, (1988)

    Google Scholar 

  22. Shaw, M. and Garlan, D.: Software Architecture-Perspectives on an Emerging Discipline. Prentice Hall, (1996)

    Google Scholar 

  23. Sommervile, I.: Software Engineering. Fifth Edition, Addison-Wesley, (1995)

    Google Scholar 

  24. van Lamsweerde, A., Letier, E.: Handling Obstacles in Goal-Oriented Requirements Engineering. IEEE Trans. on Software Engineering, 26(10):978–1005, (2000)

    Article  Google Scholar 

  25. Yemini, S., Berry, D.: A Modular Verifiable Exception Handling Mechanism. ACM Transactions on Programming Languages and Systems, 7(2):214–243, (1985)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Garcia, A.F., Rubira, C.M.F. (2001). An Architectural-Based Reflective Approach to Incorporating Exception Handling into Dependable Software. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A. (eds) Advances in Exception Handling Techniques. Lecture Notes in Computer Science, vol 2022. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45407-1_12

Download citation

  • DOI: https://doi.org/10.1007/3-540-45407-1_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics