26
DATA FLOW DIAGRAM (PART 2)

DATA FLOW DIAGRAM ( PART 2 )

  • Upload
    graham

  • View
    59

  • Download
    2

Embed Size (px)

DESCRIPTION

DATA FLOW DIAGRAM ( PART 2 ). Four basic rules. The DFD must have at least one process, and must not have any freestanding objects or objects connected to themselves A process must receive at least one data flow coming into the process and create at least one data flow leaving from the process - PowerPoint PPT Presentation

Citation preview

Page 1: DATA FLOW DIAGRAM  ( PART 2 )

DATA FLOW DIAGRAM (PART 2)

Page 2: DATA FLOW DIAGRAM  ( PART 2 )

Four basic rules The DFD must have at least one process, and must not have

any freestanding objects or objects connected to themselves A process must receive at least one data flow coming into the

process and create at least one data flow leaving from the process

A data store should be connected at least one process External entities should not be connected to each other.

Although they communicate independently, that communication is not part of the system we design using DFDs

Page 3: DATA FLOW DIAGRAM  ( PART 2 )

Creating Data Flow DiagramsCreating DFDs is a highly iterative process of

gradual refinement.General steps:1. Create a preliminary Context Diagram2. Identify Use Cases, i.e. the ways in which users

most commonly use the system3. Create DFD fragments for each use case4. Create a Level 0 diagram from fragments5. Decompose to Level 1,2,…6. Go to step 1 and revise as necessary7. Validate DFDs with users.

Page 4: DATA FLOW DIAGRAM  ( PART 2 )

Context Diagram

Top-level view of IS A data flow diagram (DFD) of the scope of an

organizational system that shows the system boundaries, external entities that interact with the system and the major information flows between the entities and the system

Example: Order system that a company uses to enter orders and apply payments against a customer’s balance

Page 5: DATA FLOW DIAGRAM  ( PART 2 )

DFD Rules—Context Diagram One process, numbered 0. Sources and sinks (external entities) as

squares Main data flows depicted No internal data stores are shown

They are inside the systemExternal data stores are shown as external

entitiesHow do you tell the difference between an

internal and external data store?

Page 6: DATA FLOW DIAGRAM  ( PART 2 )

0

Order System

SALESREP

CUSTOMER WAREHOUSE

BANKACCOUNTING

Order

OrderReject Notice

PickingList

CompletedOrder

Payment Invoice

Commission Bank Deposit

CashReceiptsEntry

Context Diagram of Order System

Page 7: DATA FLOW DIAGRAM  ( PART 2 )

Level-0 DFD

Shows the system’s major processes, data flows, and data stores at a high level of abstraction

When the Context Diagram is expanded into DFD level-0, all the connections that flow into and out of process 0 needs to be retained.

Page 8: DATA FLOW DIAGRAM  ( PART 2 )

0

Order System

SALESREP

CUSTOMER WAREHOUSE

BANKACCOUNTING

Order

OrderReject Notice

PickingList

CompletedOrder

Payment Invoice

Commission Bank Deposit

CashReceiptsEntry

Context Diagram of Order System

Page 9: DATA FLOW DIAGRAM  ( PART 2 )

1.0

Fill Order

2.0

CreateInvoice

3.0

ApplyPayment

SALESREP BANK ACCOUNTING

CUSTOMER WAREHOUSE

Order

Order RejectNotice

Picking List

AccountsReceivableD1

Invoice

Invoice

Invoice DetailPayment

Detail

Payment

Commission Bank Deposit Cash Receipts Entry

Completed Order

Level-0 DFD of Order System

Page 10: DATA FLOW DIAGRAM  ( PART 2 )

Lower-Level Diagrams

Functional Decomposition Balancing

Page 11: DATA FLOW DIAGRAM  ( PART 2 )

Decomposition of DFDs Functional decomposition

An iterative process of breaking a system description down into finer and finer detail

Uses a series of increasingly detailed DFDs to describe an IS

Act of going from one single system to many component processes

Repetitive procedure Lowest level is called a primitive DFD

Level-N Diagrams A DFD that is the result of n nested decompositions of

a series of subprocesses from a process on a level-0 diagram

Page 12: DATA FLOW DIAGRAM  ( PART 2 )

Balancing DFDs When decomposing a DFD, you must conserve

inputs to and outputs from a process at the next level of decomposition

Ensures that the input and output data flows of the parent DFD are maintained on the child DFD

This is called balancing Example: Hoosier Burgers

In Figure 1, notice that there is one input to the system, the customer order

Three outputs: Customer receipt Food order Management reports

Page 13: DATA FLOW DIAGRAM  ( PART 2 )

Figure 1Context diagram of Hoosier Burger’s Food ordering

system

Page 14: DATA FLOW DIAGRAM  ( PART 2 )

Balancing DFDs Example (Continued)

Notice Figure 2. We have the same inputs and outputs

No new inputs or outputs have been introduced

We can say that the context diagram and level-0 DFD are balanced

Page 15: DATA FLOW DIAGRAM  ( PART 2 )

Figure 2Level-0 DFD of Hoosier Burger’s food ordering system

Page 16: DATA FLOW DIAGRAM  ( PART 2 )

Balancing DFDs:An unbalanced example Figure 3:

In context diagram, we have one input to the system, A and one output, B

Level-0 diagram has one additional data flow, C

These DFDs are not balanced

Page 17: DATA FLOW DIAGRAM  ( PART 2 )

Figure 3: An unbalanced set of data flow diagrams

SOURCESINK

(a) Context diagram

(b) Level-0 diagram

SOURCE 1

SINK

0

SOURCE 2

1.0

2.0

A B

A

C

B

Page 18: DATA FLOW DIAGRAM  ( PART 2 )

Balancing DFDs

We can split a data flow into separate data flows on a lower level diagram (see Figure 4)

Balancing leads to four additional advanced rules

Page 19: DATA FLOW DIAGRAM  ( PART 2 )

Example of data flow splitting

x.0Payment & coupon

x.1Payment

x.2Coupon

Composite data flow

Disaggregated data flow

Page 20: DATA FLOW DIAGRAM  ( PART 2 )

Advanced Rule for DFD A composite DF on 1 level can be split into component

DF as the next level, but no new data can be added n all data in the composite must be accounted for in 1 or more subfollows

The inputs to a process must b sufficient to produce the outputs from the process

At the lowest level of DFD, new data flows may be added to represent data that r transmitted under exceptional condition, these data flows typically represent error message

To avoid having data flow lines cross each other, u may repeat data strores or sources/sinks on a DFD. Use an additional symbol, like a double line on the middle vertical line of data strore symbol, or a diagonal line in a corner of a sink/source square to indicate a repeated symbol

Page 21: DATA FLOW DIAGRAM  ( PART 2 )

Strategies for Developing DFDs

Top-down strategyCreate the high-level diagrams (Context

Diagram), then low-level diagrams (Level-0 diagram), and so on

Bottom-up strategyCreate the low-level diagrams, then higher-

level diagrams

Page 22: DATA FLOW DIAGRAM  ( PART 2 )

Exercise:Precision Tools sells a line of high-quality woodworking tools. When customers place orders on the company’s Web site, the system checks to see if the items are in stock, issues a status message to the customer, and generates a shipping order to the warehouse, which fills the order. When the order is shipped, the customer is billed. The system also produces various reports, such as inventory reports for Accounting. Draw a context diagram for the order system Draw DFD diagram 0 for the order system

Page 23: DATA FLOW DIAGRAM  ( PART 2 )

Identify Entities,Process,Data Stores & Data Flow Entities

Customer Warehouse Accounting

Processes 1.0 Check Status 2.0 Issue Status Messages 3.0 Generate Shipping Order 4.0 Manage Accounts

Receivable 5.0 Produce Reports

Data Stores D1 Pending Orders D2 Accounts Receivable

Data Flows Order In-Stock Request Order Data Status Data Status Message Shipping Order Order Data Invoice Shipping Confirmation Payment Accounting Data Accounts Receivable Data Order Data Inventory Reports

1.0

2.0

3.0

4.0

5.0

Page 24: DATA FLOW DIAGRAM  ( PART 2 )

ACCOUNTING

WAREHOUSECUSTOMER

0

Order System

Order

Payment

In-StockRequest

StatusMessage

Invoice Shipping Confirmation

Shipping Order

Inventory Reports

Context Diagram of Order System

Page 25: DATA FLOW DIAGRAM  ( PART 2 )

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

Level-0 of Order System

Page 26: DATA FLOW DIAGRAM  ( PART 2 )