Software engineering is the study and an application of engineering to the design, development, and maintenance of software.
Typical formal definitions of software engineering are:
- "the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software";
- "an engineering discipline that is concerned with all aspects of software production";
- and "the establishment and use of sound engineering principles in order to economically obtain software that is reliable and works efficiently on real machines