dfds (data flow diagrams)

39
DFDs (Data Flow Diagrams)

Upload: others

Post on 25-Oct-2021

21 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DFDs (Data Flow Diagrams)

DFDs (Data Flow Diagrams)

Page 2: DFDs (Data Flow Diagrams)

Data Flow Diagrams (DFDs)

Data flow diagram (DFD) is a picture of the movement of data between external entities and the processes and data stores within a system

1.0

CheckStatus

2.0

IssueStatus

Messages

3.0

GenerateShipping

Order

ACCOUNTING

CUSTOMER WAREHOUSE

4.0

Manage Accounts

Receivable5.0

ProduceReports

Order In-Stock Request

Status Data

Status Message

PendingOrdersD1

Order Data

Order Data

Shipping Order

Shipping Confirmation

Invoice

Payment

Accounts ReceivableD2

Accounting Data Accounts Receivable Data

Order Data

Inventory Reports

Page 3: DFDs (Data Flow Diagrams)

DFD Symbols

Process

Data Flow

Data Store

Source/Sink (External Entity)

or

Page 4: DFDs (Data Flow Diagrams)

sample

Page 5: DFDs (Data Flow Diagrams)

Process

Work or actions performed on data (inside the system)

Labels should be verb phrases: active verb + object clause

Receives input data and produces output

Grade Report1.0

ProduceGrade Report

Page 6: DFDs (Data Flow Diagrams)

Rule 1: Process Can have more than one outgoing data flow

or more than one incoming data flow

1.0Grade

Student Work

3.0Calculate Gross Pay

Page 7: DFDs (Data Flow Diagrams)

Rule 2: Process Can connect to any other symbol (including

another process symbol)

1.0Verify Order

2.0Assemble Order

Page 8: DFDs (Data Flow Diagrams)

Process: Correct/Incorrect?1.0

Create Invoice

Apply Insurance Premium

2.1Calculate

Gross Pay

Page 9: DFDs (Data Flow Diagrams)

Data Flow

Is a path for data to move from one part of the IS to another

Arrows depicting movement of data Can represent flow between process and data

store by two separate arrows

Accounts Receivable

D1

Deposit

2.1

Post Payment

Page 10: DFDs (Data Flow Diagrams)

Data Store

Is used in a DFD to represent data that the system stores

Labels should be noun phrases

Page 11: DFDs (Data Flow Diagrams)

Rule: Data Store Must have at least one incoming and one

outgoing data flow

Daily Payment

Page 12: DFDs (Data Flow Diagrams)

Data Flow: Correct/Incorrect?

Customer Payment

5.0

Post Payment

6.0

Prepare Deposit

Page 13: DFDs (Data Flow Diagrams)

Data Store: Correct/Incorrect?

FightRequest

2.0

Book Flight

3.0

Post Payment

Page 14: DFDs (Data Flow Diagrams)

Source/Sink (External Entity)

External entity that is origin or destination of data (outside the system)

Is the singular form of a department, outside organisation, other IS, or person

Labels should be noun phrases

Invoice

Source – Entity that supplies data to the system

Sink – Entity that receives data from the system

1.0

Verify Order

Page 15: DFDs (Data Flow Diagrams)

Rule: External Entity Must be connected to a process by a data flow

2.0

Prepare Deposit

Page 16: DFDs (Data Flow Diagrams)

External Entity: Correct/Incorrect?

PAYROLLDEPARTMENT

Paycheck

CUSTOMER

3.0

Apply Payment

Page 17: DFDs (Data Flow Diagrams)

Rules for Using DFD Symbols Data Flow That Connects

YES NOA process to another process

A process to an external entity

A process to a data store

An external entity to another external entity

An external entity to a data store

A data store to another data store

Page 18: DFDs (Data Flow Diagrams)

List the errors of this DFD

E1

E1

P2

P1

1.0

2.0

DS1

DF2

DF2

DF6

DF4

DF3

DF1

DF5

Page 19: DFDs (Data Flow Diagrams)

Guidelines for drawing DFDs Identify all external entities Identify all inputs and outputs Work your way through from Inputs to

outputs Label all data flows and data stores

descriptively Follow the rules

Page 20: DFDs (Data Flow Diagrams)

Levelling Typically DFD are traditionally drawn at three levels

The top-level DFD is context diagram (level 0)consisting of only one process, representing the entire system; It shows the interfaces between the system and the external entities.

Immediately beneath the context diagram is the system level diagram (level 1) i.e. highest level view of the major functions within the system, as well as the major interfaces between those functions.

Further levels can be decomposed to any depth by expanding individual processes

Page 21: DFDs (Data Flow Diagrams)

Levelled Diagram

Page 22: DFDs (Data Flow Diagrams)

Context Level Diagram

Page 23: DFDs (Data Flow Diagrams)

0

Order System

Order

OrderReject Notice

PickingList

CompletedOrder

Payment Invoice

SALESREP

CUSTOMER WAREHOUSE

ACCOUNTING

Commission Bank Deposit

CashReceiptsEntry

Context Diagram of Order System

Page 24: DFDs (Data Flow Diagrams)

A video shop (1) Expanding this process (context level)

Customer

Distributor

customer order Purchase

order

invoiceDelivery note

Delivery note

ProcessOrders

Page 25: DFDs (Data Flow Diagrams)

A video shop (2)

CustomerVerifyOrderValid

1.0

D2 Customer Data

D1 Video FileVideo details

customerorder

D3 Pending Orders

CreatePurchaseOrders

2.0validCust-omerorder

Distributor

purchaseorder

batched order

AssembleCustomerOrders

3.0

creditstatus

invoice

Videoorderdetails

D4 Distributor fileDistributor details

delivery notedelivery note

address

Page 26: DFDs (Data Flow Diagrams)

DFD Process Numbering Rules The process boxes on the level 1 diagram should be numbered

arbitrarily, so that no priority is implied. Even where data from one process flows directly into another process, this does not necessarily mean that the first one has to finish before the second one can begin.

3

3.2 3.33.1 3.4

3.2.1 3.2.2 3.2.3

21 Level 1

Level 2

Level 3

Page 27: DFDs (Data Flow Diagrams)

Numbering Expand Assemble Customer Orders

New process 3.1 New process 3.2 etc

AssembleCustomerOrders

3.0

invoice

Videoorderdetails

delivery notedelivery note

address

Page 28: DFDs (Data Flow Diagrams)

Expanded

D3 Pending Orders

Videoorderdetails

Distributor

Assigndelivery topendingorders

3.1

delivery note

Customer

CreateInvoice

3.3

VerifyCorrectDelivery

3.2

D5 A/c Receivable

invoice copy

invoice

indiv.Ordersdetails

assembledorders

CreateDelivery

Note

3.4delivery note

assembledorders

D2 Customer Data

Address

Page 29: DFDs (Data Flow Diagrams)

Some Principles (1) Each DFD figure should have no more than 8

or 9 processes and related stores. The number of level and partition should be

based on the above principle: The number of levels is dependent on system

complexity. Complexity of each level may not be the same. Some can be more complex than other levels.

Page 30: DFDs (Data Flow Diagrams)

Some Principles (1) Make sure that the levels of DFDs are

consistent with each other: the data flow coming into and going out of a process at one level must correspond to the data flows coming into and going out of an entire figure at the next lower level which describe that process.

Show a store at the highest level where it first serves as an interface between two more processes; then show it again in EVERY lowerlevel

Page 31: DFDs (Data Flow Diagrams)

DFD COMMON MISTAKES

Page 32: DFDs (Data Flow Diagrams)

Mistake 1 : Verb vs. Noun

.1.0

OrderVerify order

Login

Incorrectly labeling processes or data flow

Processlabels should be verbphrases

Data flow labels should be noun phrases

1.0

Login

Page 33: DFDs (Data Flow Diagrams)

What DFD’s do not do (1) DFDs do not handle sequence

There is no notion of time in a DFD. It cannot be inferred that process 2 always follows process 1.

In many instances DFDs are drawn by considering a sequence of actions (which is a very sensible way of going about things) but that still does notmean that we can infer sequentially from a DFD.

DFDs do not handle priorities In a situation where two processes want to read

from the same file at the same time, which one wins? DFDs do not address the problem.

Page 34: DFDs (Data Flow Diagrams)

Mistake 2 : DFD Flowchart

DFDs are not Flowcharts

Page 35: DFDs (Data Flow Diagrams)

Mistake 3 : Complicated Including more than nine processes on a DFD

Decomposition is needed The purpose of data flow diagrams is to provide a semantic bridge between

USERS and systems developers. User understanding and reviewing

Page 36: DFDs (Data Flow Diagrams)

Mistake 4: Diagramming rules

Miracles

Black holes

Page 37: DFDs (Data Flow Diagrams)

What DFD’s do not do (2) DFDs do not define the structure of the

data The structure of the data in the data stores is

glossed over in DFDs and any structure of the data in data flows is similarly ignored in DFDs. The structure of the data is left to the data view of the system.

Page 38: DFDs (Data Flow Diagrams)

Summary Know 4 main symbols Naming is very important Know Context level, systems level and

lower levels Know how to decompose processes to

lower levels

Page 39: DFDs (Data Flow Diagrams)

The end…Thank you!

Ainee – SAD Team (2007)