The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. [NATO1969]
The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software.[IEEE Std 610.12-1990]
The systematic activities involved in the design, implementation and testing of software to optimize its production and support. [Canadian Standards Association]