Summary
We explored the field of software engineering, its relation to computer science, and how it expands beyond programming. Software engineering, like many applications of engineering, is a process that can be broken down into many phases. It’s these interconnected steps that allow the software to serve its intended purpose for a long time.
Careful planning ensures the project will reach a final point of agreed completion, which enables a detailed and accurate design, makes implementation easier, provides clear testing strategies, and allows for deployment with minimal setbacks and maintenance. It all works together! So, while software engineers will code in a software project, they will also expand their awareness, apply their domain knowledge to all of these phases, and make a concerted team effort to deliver quality software.
In the next chapter, we’ll leave behind the bridge analogy and focus solely on the software engineering process, diving deeper into the practices within these phases.