You are on page 1of 12

Chapter 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

 It represents the process or task of the system.


 There are three types module.

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.

Control Module Module

Module Module Module

Sub Module Library Module


Structure Chart Symbols (2/5)

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.

Control Module Module Example Phonebook Menu

Module Module Display Add Find


Contents Contents Contents

Sub Module
Structure Chart Symbols (3/5)

3. Loop (Repetitive call of module)


 It represents the repetitive execution of module by the sub module. A curved
arrow represents loop in the module.
 It is used to represent repetition and highlight that a process can occur multiple
times.
Control Module Module

Sub Module Module Module Module


Structure Chart Symbols (4/5)
4. Data Flow parameter
Module 1
 It represents the flow of data between the modules, Labels

which is labelled with the symbol. Labels


 It is represented by directed arrow with empty circle Module 2
at the end.

5. Control Flow parameter


 It represents the flow of control between the modules, it Module 1
providing confirmation for system to proceed. Labels

 It is represented by directed arrow with filled circle at the end.


Labels

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

Verify Login Compose


View Messages
Details Messages

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!!

You might also like