Skip to Main Content
Software engineers suffer from excessive introspection and self-doubt about the existence of the field. This paper takes a look at the history of engineering to find examples consistent with the practice of software engineering. We find that: software engineering does not have to wait until there is a mature underlying science, as engineering practice has generally led science; software engineering has characteristics of design practice that closely match what is normally considered to be engineering design; and software engineering has many attributes of any other new branch of engineering. Finally we consider the reasons why software engineering is not recognized, mostly due to inconsistencies in practice.