Applying engineering methodologies to our current programming capabilities.
IEEE definition: "The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software."
We're going to build thought-out, testable, scalable software that is meets set out requirements and is easily maintained
What happens in a world without good software engineering principles being used?
Software engineering fundamentally exists to allow businesses and organisations to de-risk their business goals compared to just hacking away.
Software engineering adds small overheads through the software development process to provide higher assurances overall.
1. Requirements Analysis
2. Design
3.Development
4. Testing
5. Deployment
6. Maintenance