"It has been over thirty-five years since the first organized, formal discussion of software engineering as a discipline took place at the 1968 NATO Conference on Software Engineering [Naur 69]. The term ‘software engineering' is now widely used in industry, government, and academia: hundreds of thousands of computing professionals go by the title ‘software engineer'; numerous publications, groups and organizations, and professional conferences use the term software engineering. However, there are still disagreements and differences of opinion about the meaning of the term. The following definitions provide several views of the meaning and nature of software engineering. Nevertheless, they all possess a common thread, which states, or strongly implies that software engineering is more than just coding – it includes quality, schedule and economics, and the knowledge and application of principles and discipline.
"Over the years, numerous definitions of the discipline of Software Engineering have been presented...
"There are aspects of each of these definitions that contribute to the perspective of software engineering. One particularly important aspect is that software engineering builds on computer science and mathematics. But, in the engineering tradition, it goes beyond this technical basis to draw upon a broader range of disciplines.
"These definitions clearly state that software engineering is about creating high-quality software in a systematic, controlled, and efficient manner. Consequently, there are important emphases on analysis and evaluation, specification, design, and evolution of software. In addition, there are issues related to management and quality, to novelty and creativity, to standards, to individual skills, and to teamwork and professional practice that play a vital role in software engineering."
– Excerpt from [IEEE 04]
"Software Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering", The Joint Task force on Computing Curricula, IEEE Computer Society and The Association of Computing Machinery, August 23, 2004, pp 5, 6.
Bauer, F.L., "Software Engineering", Information Processing, 71, 1972.
SEI Report on Undergraduate Software Engineering Education, CSI/SEI-90-TR-003, Software Engineering Institute, Carnegie Mellon, 1990.
IEEE STD 610.12-1990, IEEE Standard Glossary of Software Engineering Terminology, IEEE Computer Society, 1990.
Naur, P. and Randell, B. (editors), Software Engineering: Report on a Conference Sponsored by the NATO Science Committee, Oct. 7-11, 1968, Brussels, Scientific Affairs Division, NATO, 1969.