Software Design and Development
Representational & Software Tools in SDD
1. Context diagrams 5. Storyboard
2. Data flow diagram 6. Structure Chart
3. Data Dictionary 7. System flowcharts
4. IPO Chart 8. CASE tools
NSW BOS Course Specifications
Context diagrams are used to represent entire information systems.
The system is shown as
• a single process along with
• the inputs and outputs (external entities) to the system.
TEXT TEXT TEXT
• the external entities are connected to the single process by data flow arrows.
The symbols used are:
process a single process representing the entire system as a circle
data flow representing the flow of data between the single
process and external entities
any person or organisation that provides data to the system
or receives data from the system, represented by a box
Data Flow Diagram
A data flow diagram provides more detail at a lower level
for a context diagram.
Data flow diagrams represent the information system as a
number of processes that together form the single process
of a context diagram.
The source of data, its flow between processes and its
destination along with data generated by the system is
Data Flow Diagram
Circles used to represent processes. Processes are actions
taking place to transform inputs to outputs.
Curved lines represent data flows between processes, data
stores and external entities. Data flows should be named to
identify the piece of data.
External Boxes used to represent external entities. These are any item,
Entity person or organisation sitting outside the systems that provides
data to the system or receives data from the system.
An open-ended rectangle is used to represent a data store. It is a
location where data is stored. It can be in computer format, such
as a diskette, or in non-computer format, such as a filing cabinet
or an answering machine.
Data Flow Diagram
The example below shows the processes involved in borrowing a video.
A data dictionary is a table providing a comprehensive description of each
field in the database.
•This commonly includes: Field name Data type Data format Field size Description Example
•field name Unique eight-digit
•data type, UserId Text NNNNNNNN 8 number represented as 0001539
•data format text
(incl.. no. of decimal places,
if applicable) FirstName Text 25 First name of employee Bill
(i.e. no. of characters or field width) Surname Text 25 Surname of employee Smith
•Description Date of birth as a short
•example. DOB Date DD/MM/YYYY 10
Rate of pay expressed
HourlyPayRate Currency #####.## 8 34.50
in dollars per hour
•This is shown in Height in metres, with
Height Real #.## 3 1.58
the example on the right. two decimal places
FeesPaid Boolean 1 Y or N for Yes or No Y
These charts are used to document
• the inputs into a process,
• the general nature of the processes performed on this input,
• outputs produced for each task or process in a system.
When used in conjunction with a structure chart, one IPO chart
should be produced for each lowest level process on the
The IPO chart is in the form of a table with 3 columns:
The IPO chart is in the form of a table with 3 columns, one for each of
Input, Process and Output.
Validation of student information: The same information can be expressed
in a different format, as follows:
Input Process Output System School Library System
Student id Read Valid-
(read from student student-flag
Process Name: Validate student information
magnetic card) record
Input: Student id
Password Compare (read from magnetic card)
(read from entered
keyboard) password Password
(read from keyboard)
Check if 0 if correct
correct 1 if incorrect Process: Read student record
Compare entered password
Check if correct
Output: Valid Student Flag
(0 if valid, 1 if invalid)
Storyboards are used to document the screens used in a system,
and the flow between them.
• Screens should contain sufficient
detail to indicate the general layout of
• The flow between screens is
indicated by the use of arrows.
• Where a button click causes the
movement to the next screen, the
arrow should start from the
The storyboard example shows the
relationship between three pages of
information aimed at promoting a
school canteen on a website.
Elements of each screen are clearly
identified and the links between
Structure diagrams allow the representation of a system
broken down into its separate
• subtasks or
The relationship between each of these processes should also be evident
from the diagram.
Rectangles are used to represent tasks, with lines used to show
the connections between tasks.
The chart is read from:
• top to bottom, with component subtasks on successively lower
levels, and from
• left to right to show the order of execution of tasks at the same level.
The symbols used in Structure Charts are:
Data movement between tasks (usually passed as
parameters) is shown with the use of arrows.
A filled circle is used to indicate a flag.
A decision (ie optional execution of a task) is indicated by use
of a small diamond at the intersection of the line.
Repetition (execution of a particular task multiple times) is
shown by a circular arrow.
The following example illustrates the features of a Structure Chart:
System flowcharts are a diagrammatic way of representing both the
• flow of data and
through an information system.
They were once the primary tool for documenting systems; however,
data flow diagrams are often used instead.
1. Standard flowcharting symbols are used along with
2. Symbols for representing physical devices that
• Capture data
• Store data
• Display data.
N.B. Many of these symbols have become out of date as a result of changes in technology.
Symbols used in System Flowcharts
CASE tools software must allow the production and maintenance of:
• Manuals, incorporating
• screen shots
• table of contents
• Gantt charts
• Data dictionary
• System flowcharts
• Modelling tools such as:
• Structure charts
• Data flow diagrams
•Other appropriate modelling tools.
• Word processing
• Drawing packages with appropriate graphics items.
• CASE Tools such as
• Rational Rose.
Gantt charts display the overall timeline for a project.
They present a sequential breakdown of individual tasks showing the
relationship between tasks and the time taken for each task.
The duration of tasks are shown as horizontal bars.
Gantt charts should have labelled axes:
• Y-axis for tasks and
• X-axis for time.
A time scale should be shown, including dates.
Milestones should also be included.
The example below shows the main elements of a Gantt chart.