Skip to main content

On the role of software reliability in software engineering

  • Chapter
  • First Online:
Software Reliability Modelling and Identification

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

Abstract

We place reliability in the context of other relevant software qualities and try to define it rigorously. Then we discuss two complementary approaches to reliability: the constructive approach, which tries to produce a-priori reliable software, and the analytic approach, which tries to measure reliability by inspecting software a-posteriori, after its development.

The paper reviews two relevant technologies that may provide a constructive contribution to improving software reliability: formal specifications and programming languages. Although our emphasis is on constructive approaches, we briefly review the principles and techniques of software validation, that can be used to check software reliability after development.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Proceedings ACM Conference on Language Design for Reliable Software, SIGPLAN Notices Vol. 12 no. 3 (March 77).

    Google Scholar 

  2. ACM Sigsoft Notes, Special Issue on "Formal Verification Workshop" August 1985.

    Google Scholar 

  3. Brent Auernheimer, Richard Kemmerer, RT-Aslan: a Specification Language for Real-Time Systems, IEEE Transactions on Software Engineering, Vol. SE-12, no. 9, September 1986.

    Google Scholar 

  4. B. Boehm et al., Characteristics of Software Quality, North Holland, Amsterdam, 1978.

    Google Scholar 

  5. B. Boehm, Software Engineering Economics, Prentice Hall, Englewood Cliffs, NJ, 1981.

    Google Scholar 

  6. Frederick P. Brooks, No Silver Bullet, Essence and Accidents of Software Engineering, Computer Vol. 20, no. 4, April 1987.

    Google Scholar 

  7. J. P. Cavano, J. A. Mc Call, A Framework for the Measurement of Software Quality, Proc. ACM Software Quality Assurance Workshop, Nov. 1978.

    Google Scholar 

  8. B. Cohen, W. T. Hartwood, M. I. Jackson, The Specification of Complex Systems, Addison Wesley, 1986.

    Google Scholar 

  9. L. D. Fosdick, L. G. Osterweil, Data Flow Analysis in Software Reliability, ACM Computer Surveys, Vol. 8, September 1976.

    Google Scholar 

  10. Marie Claude Gaudel, Logic Programming and Authomatization of Software Test Strategies, ESPRIT technical Report, Project Meteor, (Project n 432) December 1986.

    Google Scholar 

  11. Carlo Ghezzi, Levels of Static Program Validation, in Computer Program Testing, B. Chandrasekaran and S. Radicchi eds., North Holland, Amsterdam, 1981.

    Google Scholar 

  12. N. Gehani, A. McGettrick, Software Specification Techniques, Addison Wesley, 1986.

    Google Scholar 

  13. Ghezzi, C., M. Jazayeri, Programming Language Concepts, 2nd edition, J. Wiley & Sons, New York, 1987.

    Google Scholar 

  14. Ghezzi, C., D. Mandrioli, On Eclecticism in Specifications: A Case Study Centered Around Petri Net, Proc. 4th Int. Workshop on Software Specification and Design, Monterey, April 1987.

    Google Scholar 

  15. William E. Howden, A Functional Approach to Program Testing and Analysis, IEEE Transactions on Software Engineering, Vol. SE-12, no. 10, October 1986.

    Google Scholar 

  16. Richard A. Kemmerer, Testing Formal Specifications to Detect Design Errors, IEEE Transactions on Software Engineering, Vol. SE-11, no. 1, January 1985.

    Google Scholar 

  17. James C. King, Symbolic Execution and Program Testing, Communications of the ACM, Vol. 19, no. 7, July 1976.

    Google Scholar 

  18. C. E. Landwehr, Formal Models for Computer Security, ACM Computing Surveys, Vol. 13, September 1981.

    Google Scholar 

  19. Nancy G. Leveson, Software Safety: What, Why, and How, ACM Computing Surveys, Vol. 18, no. 2, June 1986.

    Google Scholar 

  20. Dave L. Parnas, Software aspects of strategic defense systems, Communications of the ACM, Vol. 28, no. 12, December 1985.

    Google Scholar 

  21. H. Partsch, R. Steinbruggen, Program Transformation Systems, ACM Computing Surveys, Vol. 15, no. 3, September 1983.

    Google Scholar 

  22. L. J. White, Basic Mathematical Definitions and Results of Testing, in Computer Program Testing, B. Chandrasekaran and S. Radicchi eds., North Holland, Amsterdam, 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Sergio Bittanti

Rights and permissions

Reprints and permissions

Copyright information

© 1988 Springer-Verlag

About this chapter

Cite this chapter

Ghezzi, C., Morzenti, A., Pezzè, M. (1988). On the role of software reliability in software engineering. In: Bittanti, S. (eds) Software Reliability Modelling and Identification. Lecture Notes in Computer Science, vol 341. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0034285

Download citation

  • DOI: https://doi.org/10.1007/BFb0034285

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-50695-9

  • Online ISBN: 978-3-540-46072-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics