Startertutorials Blog
Tutorials and articles related to programming, computer science, technology and others.
Subscribe to Startertutorials.com's YouTube channel for different tutorial and lecture videos.

Categories: Programming. No Comments on Program Development Steps
Program development
0
(0)

In this article we will learn about program development steps. These steps are common for any programming language in general. If not already done, have a look at the basics of programming languages.

 

Before going to start reading this article, see our complete C programming tutorial for beginners.

 

 A computer program is a set of formal instructions, which the computer executes in order to carry out some designated task.  Whether that task is as simple as adding two numbers together or as complex as maintaining a large inventory for a multi-national corporation, there is a common element involved. They are both achieved by the computer executing a series of instructions – the computer program.

 

Programming can be defined as the development of a solution to an identified problem.

 


Subscribe to our monthly newsletter. Get notified about latest articles, offers and contests.


Program development steps

The six basic program development steps are:

  1. Define the problem
  2. Outline the solution
  3. Develop the outline into an algorithm
  4. Code the algorithm
  5. Run the program
  6. Document and maintenance

Program development steps

 

Define the problem

This step (often overlooked) involves the careful reading and re-reading of the problem until the programmer understands completely what is required.

 

Outline the solution (analysis)

Once the problem has been defined, the programmer may decide to break the problem up into smaller tasks or steps, and several solutions may be considered. The solution outline often takes the shape of a hierarchy or structure chart.

 

Develop the outline into an algorithm (design)

Using the solution outline developed in step 2, the programmer then expands this into a set of precise steps (algorithm) that describe exactly the tasks to be performed and the order in which they are to be carried out. This step can use both structured programming techniques and pseudocode.

 

Code the algorithm into a specific programming language (coding)

It is only after all design considerations have been met that a programmer should actually start to code the program. In preceding analysis it may have been necessary to consider which language should be used, as each has its own peculiarities (advantages and disadvantages).

 

Run the program on the computer (testing)

This step uses a program compiler and test data to test the code for both syntax and logic errors. If the program is well designed then the usual time-wasting frustration and despair often associated with program testing are reduced to a minimum. This step will often need to be done several times until the programmer is satisfied that the program is running as required.

 

Document and maintain the program (documentation)

Program documentation should not be just listed as the last step in the development process, as it is an ongoing task from the initial definition of the problem to the final test results. Documentation also involves maintenance – the changes that are made to a program, often by another programmer, during the life of that program. The better a program has been documented and the logic understood, the easier it is for another to make changes.

 

Now, let’s learn about an algorithm.

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Suryateja Pericherla

Suryateja Pericherla, at present is a Research Scholar (full-time Ph.D.) in the Dept. of Computer Science & Systems Engineering at Andhra University, Visakhapatnam. Previously worked as an Associate Professor in the Dept. of CSE at Vishnu Institute of Technology, India.

He has 11+ years of teaching experience and is an individual researcher whose research interests are Cloud Computing, Internet of Things, Computer Security, Network Security and Blockchain.

He is a member of professional societies like IEEE, ACM, CSI and ISCA. He published several research papers which are indexed by SCIE, WoS, Scopus, Springer and others.

Leave a Reply

Your email address will not be published. Required fields are marked *