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
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ackoff, R.: Scientific Method: Optimizing Applied Research Decisions. With the collaboration of S. K. Gupta and J. S. Minas. Wiley, Chichester (1962)
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)
Dijkstra, E.W.: On the Cruelty of Really Teaching Computer Science; CACM 32, December 12, pp. 1398–1404 (1989)
Ferguson, E.S.: Engineering and the Mind’s Eye, p. 168. MIT, Cambridge (1992)
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)
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)
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)
Jackson, M.: Problem Frames: Analysing and Structuring Software Development Problems. Addison-Wesley, Reading (2000)
Laprie, J.C. (ed.): Dependability: Basic Concepts and Associated Terminology; Dependable Computing and Fault-Tolerant Systems 5. Springer, Heidelberg (1992)
Leveson, N.G., Turner, C.S.: An Investigation of the Therac-25 Accidents. IEEE Computer 26(7), 18–41 (1993)
Milner, R.: Communicating and Mobile Systems: the π-Calculus. Cambridge University Press, Cambridge (1999)
Newton, I.: letter to Nathaniel Hawes, quoted in R V Jones, Most Secret War; Wordsworth edn., p. 377 (1998)
Nuseibeh, B., Russo, A.: Using Abduction to Evolve Inconsistent Requirements Specifications. Austrialian Journal of Information Systems 7(1), 1039–7841 (1999) ISSN: 1039-7841
Randell, B.: System structure for software fault tolerance. IEEE Trans-actions on Software Engineering SE-1(2), 220–232 (1975)
Rushby, J.: Critical System Properties: Survey and Taxonomy. Reliability Engineering and System Safety 43(2), 189–219 (1994)
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)
Scherlis, W.: Responding to E W Dijkstra’s On the Cruelty of Really Teaching Computer Science. CACM 32(12), p. 1407 (1989)
Zave, P.: Feature-Oriented Description, Formal Methods, and DFC. In: Proceedings of the FIREWORKS Workshop on Language Constructs for Describing Features. Springer, Heidelberg (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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