Software Engineering
Application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software
An engineering discipline that provides knowledge, tools, and methods for
Defining software requirements
Performing software design
Software construction
Software testing
Software maintenance tasks
Software project management