Skip to main content

Where, Exactly, Is Software Development?

  • Chapter
  • 332 Accesses

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

Abstract

Viewed narrowly, software development is concerned only with formal computations; viewed more broadly, it is concerned also with the problem world outside the computer. The broader view compels us to deal with the physical and human world by formalisations that bring it within the scope of formal reasoning, allowing us to deal effectively with the causal chain that relates the customer’s requirements to the formally described external behaviour of the computer. It offers not only a sparsely explored field of application for formal techniques, but also fresh challenges that can contribute to shaping and extending those techniques. The primary challenge centres on the impossibility of exact true description of the problem world: any description is only an approximation to the reality. Appropriate specification and design structures can achieve the reliability and extensibility necessary for each particular system. The study of such structures merits an important place in computer science.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ackoff, R.: Scientific Method: Optimizing Applied Research Decisions. With the collaboration of S. K. Gupta and J. S. Minas. Wiley, Chichester (1962)

    MATH  Google Scholar 

  2. Banach, R., Poppleton, M.: Retrenchment, Refinement and Simulation. In: Bowen, J.P., Dunne, S., Galloway, A., King, S. (eds.) B 2000, ZUM 2000, and ZB 2000. LNCS, vol. 1878, pp. 304–323. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  3. Dijkstra, E.W.: On the Cruelty of Really Teaching Computer Science; CACM 32, December 12, pp. 1398–1404 (1989)

    Google Scholar 

  4. Ferguson, E.S.: Engineering and the Mind’s Eye, p. 168. MIT, Cambridge (1992)

    Google Scholar 

  5. Gunter, C.A., Gunter, E.L., Jackson, M., Zave, P.: A Reference Model for Requirements and Specifications. In: Proceedings of ICRE 2000, Chicago Ill, USA (2000); reprinted in IEEE Software 17(3), pp. 37–43 (May/June 2000)

    Google Scholar 

  6. Jackson, M., Zave, P.: Distributed Feature Composition: A Virtual Architecture For Telecommunications Services. IEEE Transactions on Software Engineering. Special Issue on Feature Interaction 24(10), 831–847 (October 1998)

    Google Scholar 

  7. Jackson, M.: Problem Analysis and Structure; in Engineering Theories of Software Construction. In: Hoare, T., Broy, M., Steinbruggen, R. (eds.) Proceedings of NATO Summer School, Marktoberdorf. IOS Press, Amsterdam (August 2000)

    Google Scholar 

  8. Jackson, M.: Problem Frames: Analysing and Structuring Software Development Problems. Addison-Wesley, Reading (2000)

    Google Scholar 

  9. Laprie, J.C. (ed.): Dependability: Basic Concepts and Associated Terminology; Dependable Computing and Fault-Tolerant Systems 5. Springer, Heidelberg (1992)

    Google Scholar 

  10. Leveson, N.G., Turner, C.S.: An Investigation of the Therac-25 Accidents. IEEE Computer 26(7), 18–41 (1993)

    Google Scholar 

  11. Milner, R.: Communicating and Mobile Systems: the π-Calculus. Cambridge University Press, Cambridge (1999)

    Google Scholar 

  12. Newton, I.: letter to Nathaniel Hawes, quoted in R V Jones, Most Secret War; Wordsworth edn., p. 377 (1998)

    Google Scholar 

  13. Nuseibeh, B., Russo, A.: Using Abduction to Evolve Inconsistent Requirements Specifications. Austrialian Journal of Information Systems 7(1), 1039–7841 (1999) ISSN: 1039-7841

    Google Scholar 

  14. Randell, B.: System structure for software fault tolerance. IEEE Trans-actions on Software Engineering SE-1(2), 220–232 (1975)

    Google Scholar 

  15. Rushby, J.: Critical System Properties: Survey and Taxonomy. Reliability Engineering and System Safety 43(2), 189–219 (1994)

    Article  Google Scholar 

  16. Rushby, J.: Formal Methods and Their Role in the Certification of Critical Systems. In: Shaw, R. (ed.) Safety and Reliability of Software Based Systems: Twelfth Annual CSR Workshop. Springer, Heidelberg (1997)

    Google Scholar 

  17. Scherlis, W.: Responding to E W Dijkstra’s On the Cruelty of Really Teaching Computer Science. CACM 32(12), p. 1407 (1989)

    Google Scholar 

  18. Zave, P.: Feature-Oriented Description, Formal Methods, and DFC. In: Proceedings of the FIREWORKS Workshop on Language Constructs for Describing Features. Springer, Heidelberg (2000)

    Google Scholar 

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 chapter

Cite this chapter

Jackson, M. (2003). Where, Exactly, Is Software Development?. In: Aichernig, B.K., Maibaum, T. (eds) Formal Methods at the Crossroads. From Panacea to Foundational Support. Lecture Notes in Computer Science, vol 2757. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-40007-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-40007-3_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20527-2

  • Online ISBN: 978-3-540-40007-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics