Professional Documents
Culture Documents
CH 6
CH 6
Program Design
Wassihun Beyene
What is program design?
Program design is the process of converting a set of requirements into a collection of
commands or a program that can be executed on a computer system.
Program design is an essential part of software development and depending on the
methodology used, can be a significant step in the process.
Generally, program design consists of:
o Translating requirements into general operations or commands.
o Identifying important attributes and characteristics of the commands and grouping them.
o Establishing an order and relationships between the groups.
There are two most common types of program design approaches:
o Top down program design is an approach to program design that starts with the general
concept and repeatedly breaks it down into its component parts.
o Bottom up program design works in the exact opposite way. It starts with the component
parts and repeatedly combines them to achieve the general concept.
Steps in program design
Program design contains the following steps
1. Identify a potential need
2. Conduct a needs assessment
3. Research potential programs for filling need
4. Select an evidenced-based design
5. Develop the program design
6. Pilot the program
7. Roll out the program
8. Monitor and evaluate
During program design, the design or design decision can be represent either the following
technique used for system development.
o Structure chart
o Data Dictionary
o Pseudocode
Structure Chart
It is top down inverted tree representation of a system.
It uses functional decomposition to breaks a large program down into
programmable components.
Structure charts are used to represent graphically model, the hierarchy of
processes within a system. Complete the hierarchical format, the sequence of
processes along with the movement of data and control parameters can be
mapped for interpretation.
Structure chart is a chart derived from data flow diagram (DFD).
o It represents the system in more detail than DFD.
It breaks down the entire system into lowest functional modules, describes functions
and sub-functions of each module of the system to a greater detail than DFD.
o It is a chart which shows the breakdown of a system to its lowest manageable levels.
Structure Chart Symbols (1/5)
1. Module
It is a serious of instructions that are to be carried out by the program at a specific point
o Control Module A control module branches to more than one sub module.
o Sub Module Sub Module is a module which is the part (Child) of another module.
o Library Module Library Module are reusable and invokable from any module.
2. Conditional Call/Decision
It represents that control module can select any of the sub module on the basis
of some condition.
It is used to represent selection and split the charts sequence into multiple paths.
Sub Module
Structure Chart Symbols (3/5)
Module 2
Structure Chart Symbols (5/5)
6. Physical Storage
Physical Storage is that where all the information are to be stored.
Physical Storage
7. Call line
It shows the program flow path between modules.
o Indicates the path between modules
Description of Structure Chart:
Every program has a structure.
Structure chart – a graphical representation of structure
Structure chart represents modules an interactions
Each module is represented by a box
If A invokes B, an arrow is drawn from A to B
Different types of modules in a structure chart
Input, output transform and coordinate module
Structure charts shows the static structure, not the logical structure
Major decisions and loops can be shown
Structure is decided during design
Implementation does not change structure
Example: Structure chart for an Email server
Enter Login
View mailbox
Details
Login details
Load Account
Open
Create Message
Message
Login
Message
details
Messag Delete ok Recipient
Details ok Address Sent ok
e
Messag
e
Send Messages
Compose in Database Replay Delete Messages
Thank you!!