Flow Diagrams: Rise and Fall of the First Software Engineering Notation

  • S. J. Morris
  • O. C. Z. Gotel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4045)


Drawings of water are the earliest, least abstract forms of flow diagram. Representations of ideal or generalised sequences for manufacturing or actual paths for materials between machines came next. Subsequently documentation of production and information flow become subjects for graphical representation. A similar level of abstraction was necessary for representations of invisible flows such as electricity. After initial use to define control, flow diagrams became a general purpose tool for planning automated computation at all levels of composition. Proliferation of syntax variants and the need for a common language for documentation were the motivations behind standardisation efforts. Public communication of metalevel systems information superseded private comprehension of detailed algorithmic processes as a primary function. Changes to programming language structures and their associated processes caused the initial demise of flow diagrams in software engineering.


Software Engineering Flow Diagram Engineering Drawing Block Schematic Diagram Shockwave Boundary Layer Interaction 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Goldstine, H.H., von Neumann, J.: On the principles of large scale computing machines. In: Traub, A.H. (ed.) Design of computers, theory of automata and numerical analysis, John von Neumann, Collected Works, vol. V, p. 30. Pergamon Press, Oxford (1963)Google Scholar
  2. 2.
    Goldstine, H.H., von Neumann, J.: Planning and coding of problems for an electronic computing instrument, Part II, Report prepared for US Army Ordnance Department, April 1947, vol. 1 (1947), In: Traub, A.H. (ed.), pp. 80–151 (1963)Google Scholar
  3. 3.
    Il Codice Atlantico di Leonardo da Vinci nella Biblioteca Ambrosiana di Milano. Editore Milano Hoepli, pp. 1894–1904 (656a) (January 2006), Also: http://www.museoscienza.org/english/leonardo/portellochiusa_d.jpg
  4. 4.
    Clark, K., Pedretti, C.: The Drawings of Leonardo da Vinci in the Collection of H.M. In: The Queen at Windsor Castle, 2nd edn., London, Phaidon (1968) (12579, 12659-12663) (January 2006), Also: http://www.geocities.com/davincigateway/oldmanwater.14.jpg
  5. 5.
    Richter, J.P.: The Literary Works of Leonardo da Vinci, 2nd edn. Oxford (1939)Google Scholar
  6. 6.
    Ferguson, E.S.: Engineering and the Mind’s Eye. MIT Press, Cambridge (1992)Google Scholar
  7. 7.
    Amos, P.A.: Processes of flour manufacture, pp. 171–178. Longmans Green, London (1912)Google Scholar
  8. 8.
    Industrial and Chemical Engineering. American Chemical Society, vol. 35, p. 295 (1943)Google Scholar
  9. 9.
    Industrial and Chemical Engineering. American Chemical Society, vol. 25, p. 375 (1933)Google Scholar
  10. 10.
    ibid, p. 1159Google Scholar
  11. 11.
    Oxford English Dictionary (August 2004), Online edition at: http://www.oed.com
  12. 12.
    Knoeppel, C.E.: Graphic Production Control, p. 135. The Engineering Magazine Company, New York (1920)Google Scholar
  13. 13.
    ibid, p. 126Google Scholar
  14. 14.
    Proceedings of the Institute of Radio Engineers, vol. 23(7), p. 706Google Scholar
  15. 15.
    Goldstine, H.H.: The Computer from Pascal to von Neumann, Princeton, NJ, p. 266 (1972)Google Scholar
  16. 16.
    ibid, p. 267Google Scholar
  17. 17.
    Planning and coding problems, p. 87Google Scholar
  18. 18.
    Burks, A.W., Goldstine, H.H., von Neumann, J.: Preliminary discussion of the logical design of an electronic computing instrument, Part I. Report prepared for US Army Ordnance Department, 2nd edn., September 1947, p. 75 (1947); In: Traub, A.H.(ed.), pp34-79 (1963)Google Scholar
  19. 19.
    Planning and coding problems, p. 100Google Scholar
  20. 20.
    Planning and coding problems, p. 101Google Scholar
  21. 21.
    NPL Archive, National Museum of Science and Industry, London, N30/30. ACE Version 8A Description, index, form of instruction word. Seven programs: 2 problems of Wilkinson, INORD, Laplace’s equation of relaxation, forward integration, method of characteristics for vibrating string, interpolation (1947/1948)Google Scholar
  22. 22.
    Wilkinson, J.H.: Turing’s work at the NPL and the construction of Pilot Ace, DEUCE and ACE. In: Metopolis, et al. (eds.) A History of Computing in the Twentieth Century, p. 105. Academic Press, New York (1980)Google Scholar
  23. 23.
    NPL Archive N26/38 Programmers’ Handbook for Manchester Electronic Computer Mark II (March 1951) (January 2006), Also in facsimile at: http://www.turingarchive.org/browse.php/B/32
  24. 24.
    ibid, p. 64Google Scholar
  25. 25.
    Chapin, N.: Flowcharting with the ANSI standard. A tutorial. Computing Surveys 2(2), 119–146, 143 (1970)Google Scholar
  26. 26.
    NPL Archive N9. Points arising from the example of program 4532(6) in Algol. (December 1959)Google Scholar
  27. 27.
    NPL Archive N9 File: Simplified programming systems for ACE. M. Woodger work 1959. Incl. complete DEUCE prog. for shockwave boundary layer interaction, Ma4532 (1957-1959)Google Scholar
  28. 28.
    Ferranti Limited. Ferranti Pegasus Computer Programming Manual Issue 1, List CS 50, p1.7 (September 1955)Google Scholar
  29. 29.
    ibid, p. 1.6Google Scholar
  30. 30.
    Ferranti Limited. Ferranti Pegasus Computer A description of a wage programme for a large dispersed organisation List CS 169 (September 1957)Google Scholar
  31. 31.
    For example Ferranti Limited. Ferranti Pegasus Computer A simple programme ‘Special Factorize’, List CS 153 (June 1957)Google Scholar
  32. 32.
    Bright, H.S.: Proposed standard flow chart symbols. Communications of the ACM 2(10), 17 (1959)CrossRefGoogle Scholar
  33. 33.
    International Standards Organisation. ISO 5807-1985, Information processing - Documentation symbols for data, program and system flowcharts, program network network charts and system resource chartsGoogle Scholar
  34. 34.
    Backus, J.: The syntax and semantics of the proposed international algorithmic language of the Zurich ACM-GAMM conference. In: Proceedings of the International Conference on Information Processing, UNESCO, Paris, June 1959, p. 129 (1960)Google Scholar
  35. 35.
    Taylor, W., Turner, L., Waychoff, R.: A syntactical chart of Algol. 60. Communications of the ACM 4(9), 393 (1961)CrossRefGoogle Scholar
  36. 36.
    Gorn, S.: Common symbolic language for computers. Introductory speech. In: Proceedings of the International Conference on Information Processing, UNESCO, Paris, June 1959, p. 117 (1960)Google Scholar
  37. 37.
    Dykstra, E.W.: Letters to the Editor: go to statement considered harmful. Communications of the ACM 11(3) (March 1968)Google Scholar
  38. 38.
    Naur, P., Randell, B. (eds.): Software Engineering, Report on a Conference Sponsored by the NATO Science Committee, Garmisch, Germany, October 7-11, 1968. NATO (January 1969) Google Scholar
  39. 39.
    Nassi, I., Shneiderman, B.: Flowchart Techniques for Structured Programming. SIGPLAN Notices 8(8) (August 1973)Google Scholar
  40. 40.
    Booch, G., Jacobson, I., Rumbaugh, J.: The Unified Modeling Language for Object-Oriented Development, Documentation Set Version 0.91 Addendum, Rational Software Corporation, Santa Clara CA, September 1996, pp. 27–30 (1996)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • S. J. Morris
    • 1
  • O. C. Z. Gotel
    • 2
  1. 1.Department of ComputingCity UniversityLondon
  2. 2.Department of Computer SciencePace UniversityNew York

Personalised recommendations