What is it?
Software engineering is a field that concerns with the design, development, testing, and maintenance of software applications. The idea is to manage the process of software development as a project, instead of letting each developer write its own code.
In other words, itās the application of a systematic approach to software development, that is, the application of engineering to software.
Some processes are fundamental to software engineering, and should be done to every software project:
-
Specifications
All functionality, restrictions, and scope, should be well defined before development.
-
Development
The software needs to be developed in a way that it complies with the specifications.
-
Validation
The software needs to be validated before shipping to the user, ensuring that it meets the userās expectation.
-
Evolution
The software needs to evolve to meet any changes in the requirements or needs of the user along itās life cycle.