The Name and Nature of Software Engineering

  • Authors:
  • Michael Jackson

  • Affiliations:
  • Department of Computing, The Open University, Milton Keynes, United Kingdom MK7 6AA

  • Venue:
  • Advances in Software Engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software engineering is discussed with particular reference to software-intensive application systems--those whose fundamental purpose is to bring about desired effects in a physical and human problem world by interaction with a programmed machine . Such systems bring together a problem world--typically composed of non-formal heterogeneous domains--and the formal or semi-formal domain of the machine. Clean engineering separation of the two is rarely, if ever, possible; and treating the problem world as an extension of the formal machine is hard because of its non-formal nature. Software engineers can learn from the structure and practices of the established branches of engineering--their treatment of formal analysis and reasoning, their practice of intense specialisation, and their attention to particular instances no less than to general concerns. Above all we can learn from their reliance on normal artifact design and normal design disciplines--both the golden fruit of specialisation.