Fifth Chapter Lesson-3: Program organization and Steps of developing a Program.

At the end of this lesson-

1. You will be able to explain the organization of program.

2. You will be able to describe the characteristics of a standard program.

3. You will be able to explain the steps of developing a program.


Go for Bangla Version


Organization of Program:

Every complete program has three essential parts which make a program standard through interaction with each other parts. These parts are-

Input: Every program should have input system to process.

Process: Every program should have processing system taking inputs from the user.

Output: Every program should have output system to show the result after processing.


A standard program must have the following characteristics:

1. Program should be easy and understandable so that another programmer can update the program later.

2. Time and memory complexity have to be efficient to run the program.

3. Program has to be upgradeable.

4. Debugging and Testing should be easier.

5. Program has to be maintainable easily.


Steps or process of developing a Program: 

A particular problem has been solved by creating a program. So the problem can be solved easily if some steps are followed to develop a program. A program development process or steps consists of various steps that are followed to develop a computer program. These steps are followed in a sequence in order to develop a successful and  effective computer program. Following is the brief description about program development process.

1. Problem Specification

2. Problem Analysis

3. Program Design

4. Program Development

5. Program Implementation

6. Documentation

7. Program Maintenance


Problem Specification:

The main aim of creating a program is to solve a particular problem. So to solve a problem through creating a program the problem should be identified properly. In case of problem Specification, It needs to know what the problem is and what the facts of problem are. If the problem is not properly identified,  It is not possible to get expected solution from the developed program.


Problem Analysis:

In this step, a programmer studies the problem. He analyzes how to solve the problem and how many probable solutions. In this case, the problem is divided into some small parts and trying to solve each part that make the whole problem solve. Lastly he decides the best way to solve the problem. Studying a problem is also necessary because it helps a programmer to decide about the following things:

1. The facts and figures which are necessary for developing the program.

2. The way in which the program will be designed

3. Also, the language in which the program will be most suitable.

4. What is the desired output and in which form it is needed, etc


Program Design:

In this step, the programmer designs an algorithm or flowchart to help visual possible alternatives in a program. Algorithm or flowchart is a written documentation of how the problem can be solved using efficient time and memory. The following points are considered in this step-

1. Input Design

2. Output Design

3. Relation between input and output


Program Development:

The next step after designing the algorithm or flowchart is to write the program in a high-level language according to algorithm or flowchart.This process is known as coding or programming or program development.

In this case, C, C++, java, python etc are used as high-level language


Program Implementation:

Program testing and program debugging are performed in this step.

1. Testing

2. Debugging

Testing: The process of checking error/s in a program after completing the program is called program testing.  Testing is done so that the program runs or functions according to the end user’s requirement. In this case, Outputs of the program are checked for different inputs. If output is not expected then there is error in the program.The errors in a program are-

1. Syntax Error

2. Logical Error

3. Run time or execution time error

Syntax Errors: Syntax errors are like “spelling and grammar” errors in program. It is called compile time errors. Any violation of rules of the programming language results in syntax errors. This type of error can be resolved easily because the translator program can detect such errors. If syntax errors are present in the program then the compilation of the program fails and is terminated after showing the list of errors and the line number where the errors have occurred. Correction of one or two errors in the program may remove the entire list of errors.

For example- not using semicolon(;) at the end of statement, using print() instead of using printf() etc. 

Logical Errors: These errors are related to the logic of the program. Logical errors are not detected by translator program and cause incorrect results. It is difficult to solve logical error. These errors occur due to incorrect translation of algorithm into the program, poor understanding of the problem and a lack of clarity of hierarchy of operators.

For example – writing a<b instead of writing a>b, writing s=a+b instead of writing s=a-b. 

Run-time Errors: Run-time errors are the errors that occur during the execution of the program. Some examples are, dividing by zero error, insufficient memory for dynamic memory allocation, referencing an out-of-range array element. These are not detected by compiler while compilation process. A program with these kinds of errors will run but may cause termination of program. Detection and removal of a run-time error is a difficult task. Logical error is one kind of run-time error because this type of error can not be detected by the compiler (debugging).

Debugging: Error of a program is called Bug. Debugging is a process of detecting, locating and correcting the bugs in a program. It is performed by running the program again and again. Debugging tools (called debuggers) are used to identify program errors at various development stages.

Syntax error can be resolved in debugging but it is very difficult or almost impossible to resolve Logical Error and Run-time Error. 

In 1945, a moth entered into the Mark-1 computer and made its home, causing the computer to become inoperable. Since then, the word bug in computer science means error.



The program documentation is a kind of documentation written in comment section that gives a comprehensive procedural description of a program. It shows as to how program is written. Program documentation even has the capability to sustain any later maintenance or development of the program. The program documentation describes what exactly a program does by mentioning about the requirements of the input data and the effect of performing a programming task.

Program documentation includes-

1. Description of program

2. Algorithm or flowchart

3. Written program

4. Result etc

These are some of the advantages of providing program documentation −

1. Keeps track of all parts of a program

2. Maintenance is easier

3. Programmers other than the developer can understand all aspects of program

4. Improves overall quality of the program 


Program Maintenance:

Program maintenance is the process of modifying a program after delivery to achieve any of these outcomes,

1. Correct errors

2. Improve performance

3. Add functionalities

4. Remove obsolete portions


Lesson Evaluation-

Knowledge Based Questions:

a) What is testing?

a) What is bug?

a) What is debugging?

a) What is syntax error?

a) What is logical error?

a) What is rum-time error?

Go for Answer


Comprehension Based Questions:

b) Algorithm or flowchart is related in which step of program development? Explain.

b) Debugging or Testing is related in which step of program development? Explain.

Go for Answer


Creative Questions:

Read the following stem and answer the questions:

Monir asked the ICT teacher about the leap-year. As a result, the ICT teacher explained step by step through the picture. Following the picture, Monir wrote a program to determine leap-year but the program was not working properly. So he shows his friend Rokon. Rokon checks the program and corrects the errors.

c) The solution process of ICT teacher mentioned in the stem is related to which step of program development? Explain.

d) “The activity of Rokon mentioned in the stem is an important step in developing a program” -Analyze. 


Multiple Choice Questions:

1. Which is the previous step of program coding?

a) Problem analysis                 b) Program design

c) Program implementation     d) Program maintenance

2. For what kind of error in the program computer gives message?

a) Syntax incorrect       b) Logical error

c) Data is incorrect       d) Any error

3. What is called the method of fixing the error in the program and correcting it?

a) Coding            b) Decoding

c) Encoding        d) Debugging

4. It requires for programming –

i. Problem identification

ii. Program bugs

iii. Program debugging

Which one is correct?

a) i & ii         b) i & iii

c) ii & iii       d) i, ii & iii

5. The work involved in program design is-

i. Algorithm formulation

ii. Create flow chart

iii. Create pseudo code

Which one is correct?

a) i & ii         b) i & iii

c) ii & iii       d) i, ii & iii


Written by,

Spread the love

Leave a Reply

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