Also known as the Programming tools, Program Design tools are the tools used to develop a program. During designing a program, different tools are required to solve several problems. Some of the frequently used tools are:
A decision table allows an analyst to identify the exact course of action for given condition. A decision table provides unambiguous (clear) decisions leading to a good program design. A decision table generally consists of two parts: Conditions and Actions.
A decision table is preferred when one of the large numbers of actions is to be selected depends on upon a large number of conditions.
Decision tree also does more or less same job as decision table, except that it allows the tree structure and each node of tree denote conditions. A decision tree is more user-friendly because it provides a graphical hierarchical diagrammatic view of the conditions and actions.
Fig. Decision tree
The general meaning of Pseudo code is false code or fake code. Before we write a real program, we write a program that looks like a code on the basis of algorithm and flowchart, which may not be syntactically correct but looks like a program code is called Pseudo code.The instruction of pseudo code is written by using English phrase and mathematical expression. It has no hard or fast rules for writing instruction but the instruction is closer to high-level language instructions. Therefore, the pseudo code designers should have basic knowledge about high-level language before writing it. It is independent of any programming language.
Example: Pseudo code for calculating area of rectangle
Input length, breadth
Calculate area= length*breadth
An algorithm is a sequence of instructions or step by step instruction to find the solution of a problem. An algorithm should be simple and clear. It must be to the point and should lead to the solution of the problem in a finite number of steps.
In other words, the set of rules that define how a particular problem can be solved in a finite number of steps is known as an algorithm. An algorithm is composed of a finite set of steps, each of which may require one or more operations. Each operation must be definite, effective and finite
A program is the expression of an algorithm in a programming language. Thus, the success of a program depends on upon the algorithm. Therefore, the logic of the problem must be clearly expressed in an algorithm. In another way, we can say that an algorithm is a collection of a finite number of instructions arranged in a sequence to find the solution of a problem.
Example 1: Algorithm for adding the two numbers.
Step1: Start the program
Step2: Input number x,y
Step3: Read x, y
Step5: Print Z
Step6: Stop the program
Example 2: An algorithm to go to the cinema and see a movie.
Step1: Start the program
Step2: Go to the cinema hall
Step3: Is the ticket counter open?
Step4: If it is not open, return home
Step5: If it is open, buy a ticket
Step6: Get into the cinema hall
Step7: Watch the movie
Step8: Return home
Step9: End the program
A flowchart is a pictorial representation of an algorithm. We can also define it as a program planning tool for organizing a sequence of steps necessary to solve a problem, which is shown in terms of symbols.
Flowchart uses symbols that have geometrical shapes to indicate the different operations. These symbols are connected by flow lines which indicate the order of execution of the various activities. It is used by the programmers to develop programs and by system, designers to represent the overall system while analyzing and developing the system.
The advantages of flowchart are:
The disadvantages of flowchart are:
Symbols for flowcharts:
Fig. Basic symbol for flowchart
A flowchart that gives information about a system is called system flowchart. The system can be data processing system, production system, reservation system, inventory system, accounting system and evaluation system. It plays a very important role in analysis and designing of the new system.
In system flowchart, the information flows from one section of the organizational unit to another section or forms one processing machine to another. It is drawn by the system designer while developing the new system. It does not focus on the process to solve a particular problem. An information processing cycle can be illustrated below:
In other words, a system flowchart describes the data flow and operations for a data processing system. It shows how the data processing is to be accomplished.
Program flowchart describes the sequence of operations and decisions for a particular program. In other words, we can say that a diagrammatical or pictorial sequence of instructions used by a programmer to solve any problem is called Program Flowchart.
Program flowchart is a flowchart which is used by the programmer to solve a problem. It is the detailed program which is shown in the form of pictures that how program processing steps will be performed within the computer to convert input data into the desired output.
It is designed by system designers.
It is designed by programmers.
It shows a system’s flow of data.
It shows a program’s flow of instructions.
It gives a broad overview of the overall system.
It gives a specific view of a control flow of a program.
It is used to design large sized real world problems.
It is used to design small sized logical & mathematical problems.
Since there are limited symbols, it is easy to understand for normal people also.
One must have good knowledge of various existing symbols to understand the system flowchart.
(Bhusal, Khanal, & Manandhar, 2013)
Bhusal, R., Khanal, R., & Manandhar, S. (2013). Computer Essentials I. Putalisadak, Kathmandu: Asmita's Publication.
Program Design Tools: