Skip to main content

Challenges in the utilization of formal methods

  • Invited Lectures
  • Conference paper
  • First Online:
Formal Techniques in Real-Time and Fault-Tolerant Systems (FTRTFT 1998)

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

Abstract

Despite the established benefits of formal methods, they remain poorly accepted by industrial software developers. This paper examines the issues surrounding the use of formal methods in industrial software development. It is argued that the reason for their limited use is that the introduction of formalism into software development is a more complex undertaking than it appears to be. This idea is explored in three areas: the software lifecycle; software dependability analysis; and development tools and environments. It is shown that many capabilities must be present in order for formal methods to fit into the complete software lifecycle, that the results of formal methods are difficult to use in software dependability analysis, and that the development of tools to support formal methods comprehensively is a difficult undertaking.

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. Ardis, M., Chaves, J., Jagadeesan, L., Mataga, P., Puchol, C., Staskauskas, M., Von Olnhausen, J.: A framework for evaluating specification methods for reactive systems: Experience report. IEEE Trans. on Software Engr. 22(6) (1996) 378–389

    Article  Google Scholar 

  2. Butler, R.: Finelli, G. The infeasibility of quantifying the reliability of life-critical real-time software. IEEE Trans. on Software Engr, 19(1) (1991) 3–12

    Article  Google Scholar 

  3. Craigen, D., Gerhart, S., Ralston, T.: An international survey of industrial applications of formal methods. U.S. Department of Commerce, March (1993)

    Google Scholar 

  4. DeJong, C., Gibble, M., Knight, J., Nakano, L.: Formal specification: A systematic evaluation. Technical Report CS-97-09, Department of Computer Science, University of Virginia, Charlottesville, VA (1997)

    Google Scholar 

  5. Dill, D., Rushby, J.: Acceptance of formal methods: Lessons from hardware design. IEEE Computer 29(4) (1996) 23–24

    Google Scholar 

  6. Faulk, S.: Software requirements: A tutorial. Technical Report NRL/MR/ 5546-95-7775, Naval Research Laboratories, (November 1995)

    Google Scholar 

  7. Gibble, M., Knight, J., Nakano, L., DeJong, C.: Experience report using PVS for a nuclear reactor control system. Technical Report CS-97-13, Department of Computer Science, University of Virginia, Charlottesville, VA (1997)

    Google Scholar 

  8. Hall, A.: What is the formal methods debate about? IEEE Computer, 29(4) (1996) 22–23

    Google Scholar 

  9. Heitmeyer, C., McLean, J.: Abstract requirements specification: A new approach and its application. IEEE Trans. on Software Engr. 9(5) (1983)

    Google Scholar 

  10. Heninger, K.: Specifying software requirements for complex systems: New techniques and their application. IEEE Trans. on Software Engr, 6(1) (1980) 2–13

    Google Scholar 

  11. Holloway, M., Butler, R.: Impediments to industrial use of formal methods. IEEE Computer, 29(4) (1996) 25–26

    Google Scholar 

  12. Houstan, I., King, S.: CICS project report: Experiences and results from the use of Z in IBM. VDM ’91. Formal Software Development Methods, Vol. 1: Conference Contribution. Lecture Notes in Computer Science, 552 Springer Verlag (1991) 588–596

    Google Scholar 

  13. iLogix, Inc.: http://www.ilogix.com/company/success.htm (1997)

    Google Scholar 

  14. Knight, J., DeJong, C., Gibble, M., Nakano, L.: Why are formal methods not used more widely? NASA Langley Formal Methods Workshop, Hampton, VA (1997)

    Google Scholar 

  15. Lutz, R., Ampo, Y.: Experience report: Using formal methods For requirements analysis of critical spacecraft software. 19th Annual Software Engineering Workshop, NASA Goddard Space Flight Center (1994) 231–248

    Google Scholar 

  16. Lyu, M. Handbook of Software Reliability Engineering, IEEE Computer Society Press, Los Alamitos, CA (1995)

    Google Scholar 

  17. Modarres, M.: What Every engineer should know about reliability and risk analysis. Marcel Dekker, New York, NY (1993)

    Google Scholar 

  18. Nobe, C., Warner, W.: Lessons learned from a trial application of requirements modeling using statecharts. Second International Conference on Requirements Engineering, IEEE Computer Society Press, Los Alamitos, CA (1996) 86–93

    Google Scholar 

  19. Rushby, J.: Formal methods and the certification of critical systems. Technical Report CSL-93-7, SRI International, Menlo Park, CA (1993)

    Google Scholar 

  20. Saaltink, M., Meisels, I.: The Z/EVES Reference Manual. Technical Report TR-97-5493, ORA Inc., Toronto, Canada (1997)

    Google Scholar 

  21. Singpurwalla, N.: The failure rate of software: does it exist? IEEE Trans. on Reliability, 44(3) (1995) 463–469

    Article  Google Scholar 

  22. Sullivan, K., Knight, J.: Experience assessing an architectural approach to large-scale systematic reuse. International Conference on Software Engineering, IEEE Computer Society Press, Los Alamitos, CA (1997) 220–229

    Google Scholar 

  23. Vesely, W., Goldberg, F., Roberts, N., Haasl, F.: Fault Tree Handbook, NUREG-0492, U.S. Nuclear Regulatory Commission, Washington, DC (1981)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Anders P. Ravn Hans Rischel

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Knight, J.C. (1998). Challenges in the utilization of formal methods. In: Ravn, A.P., Rischel, H. (eds) Formal Techniques in Real-Time and Fault-Tolerant Systems. FTRTFT 1998. Lecture Notes in Computer Science, vol 1486. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055331

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65003-4

  • Online ISBN: 978-3-540-49792-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics