1 data flow diagrams. 2 identifying data flows during the analysis stage of a project it is...

27
1 Data Flow Diagrams Data Flow Diagrams

Upload: jennifer-gardner

Post on 31-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

11

Data Flow DiagramsData Flow Diagrams

22

Identifying Data Flows

During the analysis stage of a project it is important to find out how data flows through a system:

Where does the data originate?

What processing is performed on it and by whom?

Who uses the data?

What data is stored and where?

What output is produced and who receives it?

33

DATA FLOW DIAGRAMS [DFDS]

A diagram to show how data is captured, processed, stored and distributed within a system.

This is generally represented during the analysis stage of a project, but can be further refined during the design stage to show more detail of how the system functions.

44

PROCESS

DATA FLOW

E.g. Result of a query to a database, contents of a printed report : data that moves together to common destinations

Actions performed on data so that they are transformed, stored or distributed. This can be a computerised or manual transformation

SYMBOLS USED IN A DFD

55

DATA STORE

A physical location to hold data e.g. a file folder or notebook etc.

SYMBOLS USED IN A DFD

Origin and/or destination of the data. Often referred to as external entities (source or sink)as they are outside the system. We are only interested in how data flows in to or from the system to them.

DATA SOURCE

66

It is often impossible to represent a complete business on one diagram. For this reason it is quite common to use more than one level of Data Flow Diagram with each level showing more detailed information about part of the previous diagram.

It is important that the diagram should be made as clear as possible and for this reason it is not uncommon to draw the same source or sink [external entity] more than once to help achieve this.

How Much Detail ?

77

Main steps when constructing a Level 0 Diagram :

Identify where data is captured from

Identify where data is distributed to

Describe the overall process

Map these out in a diagram using the correct symbols

Link them with data flows that are labelled

Context or Level 0 Diagram

The highest level view of a system. This only has one process which represents the overall function of the system and has no data stores as all the data is stored

within the process.

88

Constructing a Level 1 diagram

Identify and draw the processes that make up the Level 0 process

Allocate descriptions to these

Lay out the sources/sinks and data flows from the Level 0 diagram

Draw in any data stores used in the process

Link the new processes and data stores with named data links

99

IF it is necessary to produce a level 2 or level 3 diagram, the same steps

would be followed as used when constructing the Level 1 diagram

Constructing a Level 2/3 diagram

1010

Here is an example of how Data flow diagrams would be used to

model the logic of data flows in a small business that fits kitchens.

Identify where data is captured from

Identify where data is distributed to

Describe the overall process

Map these out in a diagram using the correct symbols

Link them with data flows that are labelled

1. Context or Level 0 Diagram

1111

Level 0 Context diagram

CUSTOMER

1212

Identify where data is captured from

Identify where data is distributed to

Describe the overall process

Map these out in a diagram using the correct symbols

Link them with data flows that are labelled

1313

CUSTOMER

Level 0 Context diagram

Customer Kitchen Fitter

Owner/ManagerSupplier

1414

Identify where data is captured from

Identify where data is distributed to

Describe the overall process

Map these out in a diagram using the correct symbols

Link them with data flows that are labelled

1515

Level 0 Context diagram

Customer Kitchen Fitter

Owner/Manager

Supplier

Kitchen Invoicing

and supply system

0

1616

Identify where data is captured from

Identify where data is distributed to

Describe the overall process

Map these out using the correct symbols

Link them with data flows that are labelled

1717

Level 0 Context diagram

Customer Kitchen Fitter

Owner/Manager

Supplier

Kitchen Invoicing

and supply system

0Customer Order

Invoice/quotes

Job Details

Product requestsProduct details

Management reports

1818

Constructing a Level 1 diagram

Identify and draw the processes that make up the Level 0 process

Allocate descriptions to these

Lay out the sources/sinks and data flows from the Level 0 diagram

Draw in any data stores used in the process

Link the new processes and data stores with named data links

1919

Level 0 Context diagram

Customer Kitchen Fitter

Owner/Manager

Supplier

Kitchen Invoicing

and supply system

0Customer Order

Invoice/quotes

Job Details

Product requestsProduct details

Management reports

Does this show enough detail?

2020

It is essential that you have a clear idea of EXACTLY what you wish to model.

Examples may be:

creating an invoice

Adding a supplier/customer/product

Searching for supplier/customer/product

Running a backup procedure

Archiving

Level 1 diagram

2121

Creating an invoiceCreating an invoice

• Created by: only the manager can do Created by: only the manager can do thisthis

• How often: either monthly or ad-hocHow often: either monthly or ad-hoc

• Inputs: Customer details (ref) and datesInputs: Customer details (ref) and dates

• Output medium: A4 paperOutput medium: A4 paper

2222

Creating an invoice for Creating an invoice for products collected between products collected between two datestwo dates• List what you need on the invoice, in detail List what you need on the invoice, in detail

(assume it is all in the system and you (assume it is all in the system and you only need to get it out)only need to get it out)– Customer details: name, address, phone, Customer details: name, address, phone,

postcode, email postcode, email – Product name, unit price, reference number, Product name, unit price, reference number,

descriptiondescription– Order details, date(s) of purchase, quantity, Order details, date(s) of purchase, quantity,

product, totalproduct, total– Invoice details: period start/end date, invoice Invoice details: period start/end date, invoice

date (because we are creating the invoice date (because we are creating the invoice these may need to be created at request time these may need to be created at request time and written back to the relevant data store)and written back to the relevant data store)

2323

Owner/Manager

customer data

Customer name/ref

Get customer name

Customer name/ref

Get start date

and end date

dates

order data

dates

list product

Id numbers between dates

Get product

details

product data

Sort into

groups

by customer

Generate

invoicePrint invoice

Customer

Customer details

Dates & product Id

product Id

product Idproduct details

dates

Invoice details

Invoice details

Invoice

Add invoice

date

Invoice date

Invoice date

2424

So that’s about as complex as So that’s about as complex as we need we need

• You can have level 1 DFDs that just You can have level 1 DFDs that just have one entity one process and one have one entity one process and one data storedata store

2525

Do’s and Don’ts when constructing a Data Flow Diagram

2626

Do’s and Don’ts when constructing a Data Flow Diagram

2727

Do’s and Don’ts when constructing a Data Flow Diagram