Steps in Software Development
Clear understanding of the problem : Problem Specification.
Careful solution design paying attention all the constraints : Robust Algorithm Design.
Transform algorithm into a program : Abstraction and coding.
Complete debugging : Error removal.
Thorough testing : Make sure it works for all cases
Maintenance dictated by the environmental changes and time.