Skip to main content

The role of structure: a software engineering perspective

  • Chapter
  • 196 Accesses

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. Baker FT (1972) System Quality Through Structured Programming, AFIPS Conference Proceedings 41:I, pp339–343.

    Google Scholar 

  2. Bass L, Clements P, Kazman R (1998) Software Architecture in Practice, Addison-Wesley

    Google Scholar 

  3. Böhm C, Jacopini G (1966), Flow diagrams, Turing machines and languages with only two formation rules. Communications of the ACM 9:5, pp366–371

    Article  Google Scholar 

  4. Calder M, Kolberg M, Magill EH, Reiff-Marganiec S (2003) Feature interaction: a critical review and considered forecast, Computer Networks 41:1, pp115–141

    Article  Google Scholar 

  5. Cantwell Smith B (1995) The Limits of Correctness, Prepared for the Symposium on Unintentional Nuclear War, Fifth Congress of the International Physicians for the Prevention of Nuclear War, Budapest, Hungary

    Google Scholar 

  6. Report of the Presidential Commission on the Space Shuttle Challenger Accident, http://history.nasa.gov/rogersrep/51lcover.htm

    Google Scholar 

  7. Constantine LL, Barnett TO eds (1968) Modular Programming: Proceedings of a National Symposium, Cambridge, MA, Information & Systems Press

    Google Scholar 

  8. Conway ME (1963), Design of a separable transition-diagram compiler, Communications of the ACM 6:7, pp396–408

    Article  MATH  Google Scholar 

  9. De Remer F, Kron H (1976) Programming-in-the-large versus Programming-in-the-small, IEEE Transactions on Software Engineering 2:2, pp80–87

    Google Scholar 

  10. Dijkstra EW (1968) A Case Against the Go To Statement, EWD 215, published as a letter to the Editor (Go To Statement Considered Harmful): Communications of the ACM 11:3, pp147–148

    MathSciNet  Google Scholar 

  11. Dijkstra EW (1976) A Discipline of Programming, Prentice-Hall

    Google Scholar 

  12. Feynman RP (2001) What Do You Care What Other People Think? As told to Ralph Leighton, Norton, paperback edition

    Google Scholar 

  13. Godden Structural Engineering Slide Library, http://nisee.berkeley.edu/godden/, National Information Service for Earthquake Engineering at the University of California, Berkeley

    Google Scholar 

  14. Gries D (1981) The Science of Programming, Springer-Verlag

    Google Scholar 

  15. Holloway CM (1999) From Bridges and Rockets, Lessons for Software Systems. In: Proceedings of the 17th International System Safety Conference, Orlando, Florida, pp598–607

    Google Scholar 

  16. Jackson MA (1975) Principles of Program Design, Academic Press

    Google Scholar 

  17. Jackson D, Shlyakhter I, Sridharan M (2001) A Micromodularity Mechanism. In: Proceedings of the ACM SIGSOFT Conference on the Foundations of Software Engineering / European Software Engineering Conference (FSE / ESEC’ 01)

    Google Scholar 

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

    Article  Google Scholar 

  19. Jones CB (2003) The Early Search for Tractable Ways of Reasoning about Programs, IEEE Annals of the History of Computing 25:2, pp26–49

    Article  MATH  MathSciNet  Google Scholar 

  20. Journal of Structural Engineering November 2002, 128:11, pp1367–1490

    Google Scholar 

  21. Levy M, Salvadori M (1994) Why Buildings Fall Down: How Structures Fail, W W Norton and Co

    Google Scholar 

  22. Loeb V (2002) ‘Friendly Fire’ Deaths Traced To Dead Battery: Taliban Targeted, but US Forces Killed, Washington Post 24 March 2002, p21

    Google Scholar 

  23. Morgenstern J (1995) The Fifty-Nine-Story Crisis, The New Yorker, May 29 1995, pp45–53

    Google Scholar 

  24. Nuseibeh B (2001) Weaving Together Requirements and Architectures, IEEE Computer 34:3, pp115–117

    Google Scholar 

  25. Perry DE, Wolf AL (1992) Foundations for the Study of Software Architecture, ACM SE Notes October 1992, pp40–52

    Google Scholar 

  26. Randell B (1975) System Structure for software fault tolerance, IEEE Transactions on Software Engineering 1:2, pp220–232

    Google Scholar 

  27. Risks Digest (1990) http://catless.ncl.ac.uk/Risks/9.61.html

    Google Scholar 

  28. Scherlis WL (1989) responding to E W Dijkstra “On the Cruelty of Really Teaching Computing Science”, Communications of the ACM 32:12, p407

    Google Scholar 

  29. Shaw M, Garlan D (1996) Software Architecture: Perspectives on an Emerging Discipline, Prentice-Hall

    Google Scholar 

  30. Shelton CP, Koopman P (2001) Developing a Software Architecture for Graceful Degradation in an Elevator Control System. In Proceedings of the Workshop on Reliability in Embedded Systems (in conjunction with SRDS), October 2001

    Google Scholar 

  31. Sterling B (1992) The Hacker Crackdown: Law and Disorder on the Electronic Frontier, Bantam Books

    Google Scholar 

  32. Turing AM (1949) Checking a large routine. In Report on a Conference on High Speed Automatic Calculating Machines, Cambridge University Mathematical Laboratory, pp67–69

    Google Scholar 

  33. Turski WM (1986), And No Philosopher’s Stone Either. In: Information Processing 86, Proceedings of the IFIP 10th World Computer Congress, Dublin, Ireland, North-Holland, pp1077–1080

    Google Scholar 

  34. Vincenti WG (1993) What Engineers Know and How They Know It: Analytical Studies from Aeronautical History, paperback edition, The Johns Hopkins University Press, Baltimore

    Google Scholar 

  35. von Neumann J, Morgenstern O (1944) Theory of Games and Economic Behaviour, Princeton University Press

    Google Scholar 

  36. Wilkes MV (1980) Programming Developments in Cambridge. In: A History of Computing in the Twentieth Century, N Metropolis, J Howlett and G-C Rota eds, Academic Press

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag London Limited

About this chapter

Cite this chapter

Jackson, M. (2006). The role of structure: a software engineering perspective. In: Besnard, D., Gacek, C., Jones, C.B. (eds) Structure for Dependability: Computer-Based Systems from an Interdisciplinary Perspective. Springer, London. https://doi.org/10.1007/1-84628-111-3_2

Download citation

  • DOI: https://doi.org/10.1007/1-84628-111-3_2

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-84628-110-5

  • Online ISBN: 978-1-84628-111-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics