🔨🔧📦 Software Engineering
Software engineering is the study and practice of methods helpful for the construction and maintenance of large software systems.
💠 Phases of life cycle
Analyze the problem precisely and completely. Be sure to
specify all necessary user interface with care.
Build a prototype and
experiment with it until all specifications can be finalized.
Design the algorithm, using the tools of data structures and of other algorithms whose function is already known.
Verify that the algorithmm is correct, or make it so simple that its correctness is self-evident.
Analyze the algorithm to determine its requirements and make sure that it meets the specifications.
Code the algorithm into the appropriate programming language.
evaluate the program on carefully chosen test data.
repeat the foregoing steps are neeeded for additional subprograms until the software is complete and fully functional.
Optimize the code to improve performance, but only if necessary.
Maintain the program so that it will meet the changing needs of its users.