Skip to main content

Logic versus Magic in Critical Systems

  • Conference paper
  • First Online:
Reliable SoftwareTechnologies — Ada-Europe 2001 (Ada-Europe 2001)

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

Included in the following conference series:

Abstract

A prevailing trend in software engineering is the use of tools which apparently simplify the problem to be solved. Often, however, this results in complexity being concealed or “magicked away”. For the most critical of systems, where a credible case for safety and integrity must be made prior to there being any service experience, we cannot tolerate concealed complexity and must be able to reason logically about the behaviour of the system. The paper draws on real-life project experience to identify some historical and current magics and their effect on high-integrity software development; this is contrasted with the cost and quality benefits that can be made from taking a more logical and disciplined approach.

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. Dijkstra, Edsger: Go To Statement Considered Harmful. CACM Vol 11.No. 3 March 1968, pp 147–148.

    MathSciNet  Google Scholar 

  2. RTCA-EUROCAE: Software Considerations in Airborne Systems and Equipment Certification. DO-178B/ED-12B. 1992.

    Google Scholar 

  3. Ives, Blake and Earl Michael: Mondex International: Reengineering Money. London Business School Case Study 97/2. See http://isds.bus.lsu.edu/cases/mondex/mondex.html

  4. Littlewood, Bev; and Strigini, Lorenzo: Validation of Ultrahigh Dependability for Software-Based Systems. CACM 36(11): 69–80 (1993)

    Google Scholar 

  5. Butler, Ricky W.; and Finelli, George B.: The Infeasibility of Quantifying the Reliability of Life-Critical Real-Time Software. IEEE Transactions on Software Engineering, vol. 19,no. 1, Jan. 1993, pp 3–12.

    Article  Google Scholar 

  6. Littlewood, B: Limits to evaluation of software dependability. In Software Reliability and Metrics (Procedings of Seventh Annual CSR Conference, Garmisch-Partenkirchen). N. Fenton and B. Littlewood. Eds. Elsevier, London, pp. 81–110.

    Google Scholar 

  7. Carré, Bernard: Reliable Programming in Standard Languages. In High-integrity Software. RSRE Malvern, Chris Sennett (Ed). ISBN 0-273-03158-9, 1989.

    Google Scholar 

  8. Amey, Peter: The INFORMED Design Method for SPARK. Praxis Critical Systems 1999.

    Google Scholar 

  9. Barnes, John: The SPARK Way to Correctness is Via Abstraction. ACM SIGAda 2000

    Google Scholar 

  10. Professor C.A.R. Hoare, The 1980 Turing award lecture. The Emperor’s Old Clothes. CACM Vol. 24.No.2 February 1981. pp 75–83

    Google Scholar 

  11. Finnie, Gavin et al: SPARK–The SPADE Ada Kernel. Edition 3.3, 1997, Praxis Critical Systems

    Google Scholar 

  12. Finnie, Gavin et al: SPARK 95–The SPADE Ada 95 Kernel. 1999, Praxis Critical Systems

    Google Scholar 

  13. Barnes, John: High Integrity Ada–the SPARK Approach. Addison Wesley Longman, ISBN 0-201-17517-7.

    Google Scholar 

  14. Sutton, James and Carré, Bernard: Ada, the Cheapest Way to Build a Line of Business”. 1994

    Google Scholar 

  15. Sutton, James and Carré, Bernard: Achieving High Integrity at Low Cost: A Constructive Approach. 1995

    Google Scholar 

  16. Croxford, Martin and Sutton, James: Breaking through the V&V Bottleneck. Lecture Notes in Computer Science Volume 1031, 1996.

    Google Scholar 

  17. Sutton, James: Cost-Effective Approaches to Satisfy Safety-critical Regulatory Requirements. Workshop Session, SIGAda 2000.

    Google Scholar 

  18. King, Hammond, Chapman and Pryor: Is Proof More Cost-Effective than Testing?. IEEE Transaction on Software Engineering, Vol. 26,No. 8, August 2000, pp 675–686.

    Article  Google Scholar 

  19. Bergeretti and Carré: Information-flow and data-flow analysis of while-programs. ACM Transactions on Programming Languages and Systems 1985.

    Google Scholar 

  20. Santhanam, Viswa; Wright, Peggy A.; Decker-Lindsey, Barbara: Dataflow Coverage in the Boeing 777 Primary Flight Control Software. Boeing 1995

    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 paper

Cite this paper

Amey, P. (2001). Logic versus Magic in Critical Systems. In: Craeynest, D., Strohmeier, A. (eds) Reliable SoftwareTechnologies — Ada-Europe 2001. Ada-Europe 2001. Lecture Notes in Computer Science, vol 2043. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45136-6_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-45136-6_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics