Identifying Appropriate Test Statistics Involving Population Mean
Data flow diagram
1. 1
SOFTWARE ENGINEERING
DATA FLOW DIAGRAM
Learning outcomes:
Describe the steps to approach the construction of multi-level DFDs
Develop context diagrams
Develop Level 0 DFDs
Develop Level 1 DFDs
Steps to Construct DFDs:
Build the context diagram
Create the level 0 diagram.
Decompose level 0 processes into level 1 DFDs
Decompose level 1 processes into level 2 DFDs and decompose further if needed
Creating the context diagram
Identify ‘user roles’ (external entities)
Identify the information that each external entity sends to the system and receives from
the system
Creating the level 0 DFD
Identify the major functions of the system (processes)
Identify which processes produce the data sent to the external entities and which
processes require the data produced by the external entities
Identify data flows and data stores and their interaction
Data flow to data store means ‘update’, data flow from data store means ‘retrieve’
Creating level 1, level 2, etc. DFDs
Functional decomposition in an iterative process which results in DFDs that give more
details about a process
The lowest level DFDs are called primitive DFDs
Describing a process can help to decide whether it is necessary to decompose the
corresponding DFD
If a process requires to carry out several tasks (logical functions), it is a good candidate
for decomposition
Ensure the conservation of inputs and outputs (data flows) when decomposing
processes (balancing)
Ensure completeness, consistency, no timing dependence, iterative development,
creation of primitive DFDs
2. 2
Example No 1
The DFD takes an input-process-output view of a system. That is, data objects flow into the
software, are transformed by processing elements, and resultant data objects flow out of the
software. Data objects are represented by labeled arrows, and transformations are represented
by circles (also called bubbles). The DFD is presented in a hierarchical fashion. That is, the first
data flow model (sometimes called a level 0 DFD or context diagram) represents the systemas a
whole
A level 0 DFD for the security function is shown in Figure. The primary external entities (boxes)
produce information for use by the systemand consume information generated by the system.
The level 0 DFD must now be expanded into a level 1 data flow model. Let us consider the
narrative of the Safehome
During installation, the SafeHome PC is used to program and configure the system. Each sensor
is assigned a number and type, a master password is programmed for arming and disarming the
system, and telephone number(s) are input for dialing when a sensor event occurs.
When asensor event is recognized, the software invokes an audible alarmattached to the system.
After a delay time that is specified by the homeowner during system configuration activities, the
software dials a telephone number of a monitoring service, provides information about the
location, reporting the nature of the event that has been detected. The telephone number will
be redialed every 20 seconds until telephone connection is obtained.
3. 3
The homeowner receives security information via a control panel, the PC, or a browser,
collectively called an interface. The interface displays prompting messages and system status
information on the control panel, the PC, or the browser window.
Level 1 DFD for Safehome
4. 4
Level 2 DFD for Monitor Sensors Process
Example No. 2
Creating Data Flow Diagrams: Lemonade Stand Example
The operations of a simple lemonade stand will be used to demonstrate the creation of
dataflow diagrams. Steps are as follows:
1. Create a list of activities
2. Construct Context Level DFD
(identifies sources and sink)
3. Construct Level 0 DFD
(identifies manageable sub processes )
4. Construct Level 1- n DFD
(identifies actual data flows and data stores )
5. 5
Think through the activities that take place at a lemonade stand. Create a list of activities:
Customer Order
Serve Product
Collect Payment
Produce Product
Store Product
Also think of the additional activities needed to support the basic activities.
Customer Order
Serve Product
Collect Payment
Produce Product
Store Product
Order Raw Materials
Pay for Raw Materials
Pay for Labor
Group these activities in some logical fashion, possibly functional areas:
Group 1
Customer Order
Serve Product
Collect Payment
Group 2
Produce Product
Store Product
Order Raw Materials
Group 3
Pay for Raw Materials
Pay for Labor
6. 6
Create a context level diagram identifying the sources and sinks (users).
Create a level 0 diagram identifying the logical subsystems that may exist
7. 7
Create a level 1 decomposing the processes in level 0 and identifying data stores.
Customer Order
Collect Payment
Serve Product
Produce Product
Store Product
8. 8
Order Raw Materials
Pay for Raw Materials
Pay for Labor
9. 9
Example No 3
University Registration System. The system should enable staff of each academic department to
examine the modules offered by their department, add and remove modules, and change the
information about them (e.g. the maximum number of students permitted). It should permit
students to examine currently available modules, add and drop modules to and from their
schedules, and examine the modules for which they are enrolled. Department staff should be
able to print a variety of reports about the modules and the students enrolled in them. The
system should ensure that no student takes too many modules and that students who have any
unpaid fees are not permitted to register (students can verify their fee paying status). Note:
assume that a fees data store is maintained by the university’s financial office and this data store
is accessed by the registration systembut the fees data store is not modified by the registration
system.
Class Task: Draw level 0 and level 1 diagram for the following system
Home Task: Bus Garage Repairs
Buses come to a garage for repairs.
A mechanic and helper perform the repair, record the reason for the repair and record
the total cost of all parts used on a Shop Repair Order.
Information on labor, parts and repair outcome is used for billing by the Accounting
Department, parts monitoring by the inventory management computer systemand a
performance review by the supervisor.