27
Data Flow Diagrams

Documenting and modeling_user_requiremnts_df_ds_29082011

Embed Size (px)

Citation preview

Page 1: Documenting and modeling_user_requiremnts_df_ds_29082011

Data Flow Diagrams

Page 2: Documenting and modeling_user_requiremnts_df_ds_29082011

Data flow diagrams can be used to provide a clear representation of any business function.

The technique starts with an overall picture of the business and continues by analyzing each of the functional areas of interest.

This analysis can be carried out to precisely the level of detail required.

The technique exploits a method called top-down expansion to conduct the analysis in a targeted way.

Page 3: Documenting and modeling_user_requiremnts_df_ds_29082011
Page 4: Documenting and modeling_user_requiremnts_df_ds_29082011

The result is a series of diagrams that represent the business activities in a way that is clear and easy to communicate.

A business model comprises one or more data flow diagrams (also known as business process diagrams).

Initially a context diagram is drawn, which is a simple representation of the entire system under investigation.

Page 5: Documenting and modeling_user_requiremnts_df_ds_29082011

This is followed by a level 0 diagram; which provides an overview of the major functional areas of the business.

Using the context diagram together with additional information from the area of interest, the level 0 diagram can then be drawn.

Page 6: Documenting and modeling_user_requiremnts_df_ds_29082011

The level 0 diagram identifies the major business processes at a high level and any of these processes can then be analyzed further - giving rise to a corresponding level 1 business process diagram.

This process of more detailed analysis can then continue – through level 2, 3 and so on; until the simplest required level referred to as the functional primitive.

Page 7: Documenting and modeling_user_requiremnts_df_ds_29082011

There are only five symbols that are used in the drawing of business process diagrams (data flow diagrams).

Page 8: Documenting and modeling_user_requiremnts_df_ds_29082011

This diagram represents a banking process, which maintains customer accounts.

In this example, customers can withdraw or deposit cash, request information about their account or update their account details.

The five different symbols used in this example represent the full set of symbols required to draw any business process diagram.

Page 9: Documenting and modeling_user_requiremnts_df_ds_29082011

External Entity

An external entity is a source or destination of a data flow which is outside the area of study.

Only those entities which originate or receive data are represented on a business process diagram.

The symbol used is an oval containing a meaningful and unique identifier.

Page 10: Documenting and modeling_user_requiremnts_df_ds_29082011

Process

A process shows a transformation or manipulation of data flows within the system.

The symbol used is a rectangular box which contains 3 descriptive elements:

Firstly an identification number appears in the upper left hand corner..

Page 11: Documenting and modeling_user_requiremnts_df_ds_29082011

Process

This is allocated arbitrarily at the top level and serves as a unique reference

Secondly, the person responsible for carrying out the activity may be indicated at the top right corner of the process.

Finally, a descriptive title is placed in the centre of the box. This should be a simple imperative sentence with a specific verb, for example 'maintain customer records' or 'find driver’

Page 12: Documenting and modeling_user_requiremnts_df_ds_29082011

Data Flow

A data flow shows the flow of information from its source to its destination.

A data flow is represented by a line, with arrowheads showing the direction of flow.

Information always flows to or from a process and may be written, verbal or electronic.

Each data flow may be referenced by the processes or data stores at its head and tail, or by a description of its contents

Page 13: Documenting and modeling_user_requiremnts_df_ds_29082011

Data Store

A data store is a holding place for information within the system:

It is represented by an open ended narrow rectangle.

Data stores may be long-term files such as sales ledgers, or may be short-term accumulations: for example batches of documents that are waiting to be processed.

Each data store should be given a reference followed by an arbitrary number.

Page 14: Documenting and modeling_user_requiremnts_df_ds_29082011
Page 15: Documenting and modeling_user_requiremnts_df_ds_29082011
Page 16: Documenting and modeling_user_requiremnts_df_ds_29082011

DFD Diagramming Rules-Process

No process can have

only outputs or only

inputs…processes

must have both

outputs and inputs.

Process labels should be verb phrases.

Page 17: Documenting and modeling_user_requiremnts_df_ds_29082011

DFD Diagramming Rules-Data Store

Data store labels should be noun phrases.

All flows to or from a data store must

move through a process.

Page 18: Documenting and modeling_user_requiremnts_df_ds_29082011

DFD Diagramming Rules-Source/Sink

Source and sink labels should be noun phrases.

No data moves directly between external entities

without going through a process.

Interactions between external entities without

intervening processes are outside the system and

therefore not represented in the DFD.

Page 19: Documenting and modeling_user_requiremnts_df_ds_29082011

DFD Diagramming Rules-Data Flow

Joined data flow

must refer to exact

same data item (not

different data items)

from multiple

sources to a

common location.

Data flow cannot

go directly from a

process to itself,

must go through

intervening

processes.

Page 20: Documenting and modeling_user_requiremnts_df_ds_29082011

DFD Diagramming Rules-Data Flow (cont.)

Data flow from a process to a data store means update (insert, delete or change).

Data flow from a data store to a process means retrieve or use.

Data flow labels should be noun phrases.

Page 21: Documenting and modeling_user_requiremnts_df_ds_29082011

•© 2011 Pearson Education, Inc.

Publishing as Prentice Hall

•21

•Chapter 7

Four Different Types of DFDs

Current Physical Process labels identify technology (people or systems)

used to process the data.

Data flows and data stores identify actual name of the physical media.

Current Logical Physical aspects of system are removed as much as

possible.

Current system is reduced to data and processes that transform them.

Page 22: Documenting and modeling_user_requiremnts_df_ds_29082011

•© 2011 Pearson Education, Inc.

Publishing as Prentice Hall

•22

•Chapter 7

Four Different Types of DFDs (Cont.)

New Logical

Includes additional functions.

Obsolete functions are removed.

Inefficient data flows are reorganized.

New Physical

Represents the physical implementation of the new system.

Page 23: Documenting and modeling_user_requiremnts_df_ds_29082011

Assume four activities for a sales order processing system

Verify stock

Process order

Request for invoice

Send order

Draw a data flow diagram from the context diagram

Page 24: Documenting and modeling_user_requiremnts_df_ds_29082011

For the process verify stock what other processes may there be for a manufacturing concern?

Draw a dfd based on these other processes

Page 25: Documenting and modeling_user_requiremnts_df_ds_29082011

Rules for stopping decomposition

When each process has been reduced to a single decision, calculation or database operation

When each data store represents data about a single entity

Page 26: Documenting and modeling_user_requiremnts_df_ds_29082011

Draw a dfd from the following narrative.

Page 27: Documenting and modeling_user_requiremnts_df_ds_29082011

The Causeway Co. uses the following procedure to process the cash received from credit sales. Customers send cheques and remittance advises to Causeway. The mailroom clerk at Causeway endorses the cheques and writes the amount paid and the cheque number on the remittance advice which is the document that a customer returns with accompanying payment. Periodically, the mailroom clerk prepares a batch total of the remittance advices and sends the batch of remittance advices to accounts receivable, along with a copy of the batch total. At the same time, the clerk sends the corresponding batch of cheques to the cashier. In accounts receivable, a clerk enters the batch into the computer by keying the batch total, the customer number the invoice number, the amount paid and the cheque number. After verifying that the invoice is open and that the correct amount is being paid, the computer updates the accounts receivable master data. If there are any discrepancies, the clerk is notified. At the end of each batch (or at the end of the day), the computer prints a deposit slip in duplicate in the cashier’s office. The cashier compares the deposit slip to the corresponding batch of cheques and then takes the deposit to the bank. As they are entered, the cheque number and the amount of each payment are logged on a disk. This data is used to create a cash receipts listing at the end of each day. A summary of customer accounts paid that day is also printed at this time. The accounts receivable clerk compares these reports to the remittance advices and batch totals and sends the total of the cash receipts to the general ledger office.