- Analyzing the Problem: Involves identifying the problem , inputs the program should accept and the desired output of the program.
- Developing an Algorithm: The solution to the problem represented in natural language is called Algorithm. For a given problem, more than one algorithm is possible and we have to select the most suitable solution.
- Coding: Different high level languages can be used for writing the code based on the algorithm developed.
- Testing and Debugging: To ensure that the software meets all the business and technical requirements and works as expected . The errors or defects found in the testing phases are debugged or rectified and the program is again tested . This continues till all the errors are removed from the program.