Steps for Developing a Software
If we carefully design each program using good structured development techniques, our programs will be efficient, error-free, and easy to maintain.
System's Requirements
Any requirements of the system to be developed are captured in this phase. The requirements are a set of functions that the end user(who will use the system) is expecting from the system.
The requirements are collected from the end user in the early phase of the software development.
Steps for Developing a Software
AnalysisUnderstand the problem statement thoroughly
Understand the process required to arrive at the solution
Understand the inputs that will be given to the program, their ranges and limitations if any
Understand the outputs.
Design
Write an algorithm that precisely delineates all the steps that are required to arrive at the solution for a given, well defined problem.
Code
Write a code in a stepwise manner to convert the design of the flow chart in to programming constructs and reach a complete solution of the problem.
System Testing
Verify the program that is created in the above step with different inputs that will test the error cases and boundary cases.
If any errors are identified, then the bugs in the programs are to be identified and the process is to be repeated again.
Documentation
There are two types of Documentation required
1.Inline Documentation
Inline Documentation consists of the comments included in the program. They generally fall in three places: at the heads of procedures, at declarations, and at particularly complicated or unclear sections of the code.
2. External Documentation
External Documentation in which the user may include as a long comment right at the beginning of the program itself. It has two types: for the typical user and for someone who wants to understand how the program works.
Maintenance
The requirements of the program may change or a previously unidentified bug may be identified which needs maintenance. For a proper maintenance, the design and documentation play a key role.