Sei sulla pagina 1di 32

Data Flow Modelling (DFM)

Part 1

Dr. Thareendhra Keerthi Wijayasiriwardhane


Faculty of Science
University of Kelaniya
thareen@kln.ac.lk

Introduction
Used to model data processing in the system
DFM consists of

A set of Data Flow Diagrams (DFDs) and


Associated textual descriptions

Defines partitions into sub systems


Presents different parts of the system at appropriate
levels of details for different stakeholders of the project

Client
End-user
Developer
2

Example

Presenting
different parts
at appropriate
levels of details
for different
stakeholders

DFD

Illustrates

Way in which the data is passed around the system


How data is processed within the system
Where data is stored in the system

Components

External Entities
Data Flows
Processes
Data Stores

External Entity
Represents people, organizations or other systems
external to the system under investigation
Acts as a source or a recipient of data
Name should refer to a generic type, not to an instance
of that type
Example

Customer

Data Flows
Show flows of data to, from and within the system
Link other components in a DFD
Could be one-way or two-way
Represented with solid arrows
Between two external components are shown by
dashed arrows
Intersections should be avoided
Example

customer details

Context Diagram
A DFD with the highest level of abstraction
Represents the entire system as a single process
Shows how system interacts with its external entities
Provides an over-view of the system

Context Diagram Cont.,

How to Draw

Identify all the external entities interact with the system


Identify data flows from the external entities to the
system as well as from system to external entities
Represent external entities in their graphical form
Represent the system as a single process
Add data flows between external entities and the system

Camp Reservation System

Data flows crossing the systems boundary


External Entity

Customer

Site Supervisor
Management

Source (S) or
Recipient (R)

Data Flow

package enquiry

package details

customer details

payment details

payment receipt

booking-note

daily-collection summary

new site information

revised package rates


9

Camp Reservation System Cont.,

10

Process
Represents business activities carried out in the system
Three properties

Id
Name
Location

Cashier
Handle Payments

11

Data Store
Used to hold data within the system
Four types

Manual - M
Computerized - D
Temporary - T
Manual Temporary - T(M)

Three properties

Id
Type
Name

M3

Payment

12

Rules

Data can flow directly between

A direct data flow can NOT exist between

Two external entities


An external entity and a process
Two processes
A process and a data store
An external entity and a data store
Two data stores

Processes and data stores must NOT

Originate data
Be dead ends
13

Document Flow Diagram


Acts as a bridge between the Context Diagram and the
Level 1 DFD
Illustrates physical documents passed in the system
Documents could be

Papers
Conversations
Data passed between computers

14

Document Flow Diagram Cont.,

How to draw

Identify sources and recipients of documents


Identify the documents which connect them
Represent both sources and recipients in external entity
symbol
Add data flow arrows to represent the documents
connecting the sources and recipients
Add systems boundary to exclude the external entities
identified in the Context Diagram

15

Camp Reservation System


Source
Management

Document
new site information

Recipient
Reservation Clerk

Reservation Clerk package

Sales Desk

Customer

package enquiry

Sales Desk

Sales Desk

package details

Customer

Customer

customer details

Sales Desk

Sales Desk

pending reservation

Cashier

Customer

payment details

Cashier

Cashier

payment receipt

Customer

Cashier

daily-collection summary Management

16

Camp Reservation System Cont.,


Source

Document

Recipient

Cashier

stamped pending reservation

Reservation Clerk

Sales Desk

expired pending reservation

Reservation Clerk

Reservation Clerk confirmed reservation

Sales Desk

Reservation Clerk booking-note

Site Supervisor

Customer

payment receipt

Site Supervisor

Management

revised package rates

Reservation Clerk

Reservation Clerk revised package

Sales Desk

17

Camp Reservation System Cont.,

18

Transforming to L1 DFD

For each document flow,

Identify the process that

Make sure whether the document flow is

Generates the document or


Receives the document
Stored by the process or
Created by the process from stored data
Then identify the data store

Identify the business activities carried out by the process


and name it

19

Camp Reservation System

20

Lower Level DFDs

Context Diagram

Most abstract and highest level DFD


Provides an overview of the system

Level 1 DFD

Provides a higher level overview of the systems


processing
Shows data movements among the major components of
the system
Must be consistent with the Context diagram
Typically limited to 10 12 processes
21

Lower Level DFDs Cont.,

Lower level DFDs

Level 2, 3,
Provide a way to go into more details successively
Enable the top down approach
Must be consistent with the parent DFD
Typically limited to 4 - 6 processes

22

Lower Level DFDs Cont.,

23

Rules on Decomposition
Id and Name of the higher level process should
become the Id and Location of the lower level DFD
Data Sources and Recipients of the higher level process
should remain outside the boundary of the lower level
DFD
If higher level process N is decomposed,

Its lower level processes are identified as N.1, N.2,


Its private data stores are labeled as Type N/1,
Type N/2,

24

Camp Reservation System

25

Elementary Process
A process that doesnt need any further decomposition
Associates a textual description known as Elementary
Process Description (EPD)
EPD

Contains enough details for program specification


Written in plain English or pseudo code

26

Camp Reservation System


Elementary Process Description
Process Id: 2.2
Process Name: Prepare daily collection summary
Description:
Triggered by end of the day routine. First, get relevant payment
details from M3 data store. Then prepare daily collection summary
and send it to Management

27

Camp Reservation System Cont.,

28

Camp Reservation System Cont.,


Elementary Process Description
Process Id: 2.1.1
Process Name: Verify pending reservation
Description:
Triggered by customers request to make payment. First, get
payment details from Customer. Then get relevant pending
reservation from T1(M) data store. If pending reservation is valid,
then call Process 2.1.2 and pass payment details & pending
reservation.

29

Camp Reservation System Cont.,


Elementary Process Description
Process Id: 2.1.2
Process Name: Prepare payment receipt
Description:
Triggered by Process 2.1.1s call. First, get payment details and
pending reservation passed by Process 2.1.1. If payment is ok,
then prepare payment receipt and issue it to Customer. Then add
payment details to M3 data store. Finally, call Process 2.1.3 and
pass pending reservation.

30

Camp Reservation System Cont.,


Elementary Process Description
Process Id: 2.1.3
Process Name: Stamp pending reservation
Description:
Triggered by Process 2.1.2s call. First, get pending reservation
passed by Process 2.1.2. Then put Paid stamp on pending
reservation. Finally, add stamped pending reservation to T1(M)
data store.

31

Questions

32

Potrebbero piacerti anche