Вы находитесь на странице: 1из 20

Chapter 6

Data Flow Diagramming

McGraw-Hill/Irwin

Copyright 2010 by The McGraw-Hill Companies, Inc. All rights reserved.

Outline
Objectives DFD symbols Leveled sets of DFDs

System boundary
DFD design conventions Comparison with flowcharts Database design
6-2

Objectives
When you finish this chapter, you should be able to:
Explain the symbols and design considerations associated with DFDs Compare and contrast flowcharts and DFDs with regard to purpose, content, structure and use in AIS Discuss ways DFDs are used in AIS work Construct a leveled set of DFDs Design normalized database tables from a DFD

6-3

DFD symbols
Processes are labeled with verb phrases, like prepare sales invoice

External entities are labeled with noun phrases, like vendor

6-4

DFD symbols

Data flows are labeled with noun phrases like remittance advice

Data stores are labeled with noun phrases, like accounts payable master file

6-5

Leveled sets of DFDs


To manage complexity, DFDs are prepared in leveled sets. Each level shows more detail than the level before it. The next three slides are examples of partial DFDs; they are incomplete because of space limitations on the slide.

6-6

Leveled sets of DFDs


This is a context diagram. It shows the highest level view of a system. Car database

Salesperson

Sales pitch

0 Buy new car system

Car information

Negotiation data

Financing information

Financing

Credit application

Bank

6-7

Leveled sets of DFDs


Car database

Salesperson
Car information 1.0 Research new cars Desired car information 2.0 Visit dealership Bank Credit application Financing needs Negotiation data Sales pitch

3.0
Financing information Arrange financing Financing

This is a Level Zero diagram. Notice how it is balanced with the context diagram.
6-8

Leveled sets of DFDs


Bank
Credit application 3.1 Complete credit application Financing information 3.2 Receive money Financing This Level One diagram decomposes Process 3.0. Again, notice the balancing.

Evaluated credit application

6-9

Leveled sets of DFDs


Every leveled set has exactly one context diagram and exactly one Level Zero diagram. A leveled set may contain multiple diagrams at other levels. When a process cannot be decomposed any further, it is said to be primitive. Not all processes must be decomposed to the same level.
6-10

System boundary
Establishing a clear boundary is critical in creating DFDs. Without a clear boundary, the leveled set of DFDs can grow out of control quickly. Determining the boundary is a matter of judgment.

6-11

DFD design conventions


All processes should have unique names The inputs to a process should differ from the outputs to a process Any single DFD should not have more than about seven processes No process can have only outputs No process can have only inputs A process has a verb phrase label Data must be moved by a process from one data store to another data store Data cannot move directly from an external entity to a data store
6-12

DFD design conventions


Data must be moved by a process to an external entity from a data store A data store has a noun phrase label Data of any concern to the system cannot move directly between external entities An external entity has a noun phrase label A data flow has only one direction between symbols A data flow cannot go directly back to the same process it leaves A data flow can go directly into a data store A data flow has a noun phrase label

6-13

Comparison with flowcharts


Symbols
DFDs have four: circles, rectangles, lines and parallel lines Flowcharts have many, including rectangles, diamonds and triangles

Organization
DFDs are in leveled sets, each depicting more detail than the previous level Flowcharts are organized in columns which depict areas of responsibility, such as departments

6-14

Comparison with flowcharts


Numbers
In DFDs, processes are numbered based on their level. Process 1.0 can lead to Processes 1.1 and 1.2; Process 1.1 can lead to Processes 1.1.1 and 1.1.2 In flowcharts, numbers and / or letters are used for onand off-page connectors

Focus
DFDs focus on data and how it moves between elements of an information system Flowcharts are concerned with data, but also with documents and processing tools

6-15

Comparison with flowcharts


Use of lines
In a data flow diagram, lines represent data. They are labeled with noun phrases In a flowchart, lines represent movement between processes, areas of responsibility and the like. They are not labeled

6-16

Database design
Fundamental design element: the table
Rows are records Columns are fields A record usually comprises many fields A field captures a single information item, like a date, last name or invoice number

Keys
Each record is uniquely identified by its primary key.
Student ID number Textbook ISBN

If a single field alone wont suffice, a table can have a compound primary key.
Last name and first name Department, course code and section

A foreign key is a primary key that appears in another table.

6-17

Database design
Other design elements
Queries: sets of instructions for retrieving data, performing calculations and other tasks
Display all sales invoice numbers from January 1 to January 15 Calculate the total amount due from customers whose last names start with C

Other design elements


Forms: used for entering and looking up data
Order forms on the Internet Looking up class schedules on your schools information system

Reports: used to display data

Do not store derivable data in a table.


6-18

Database design
Data normalization
The set of rules used to ensure that databases are as efficient and effective as possible Minimize database size, optimize table design and access data more quickly and efficiently Six normal forms exist; the first three are usually enough for business applications

Normal forms
1st normal form (1NF): eliminate repeating groups 2nd normal form (2NF): eliminate repeating groups AND eliminate redundant data 3rd normal form (3NF): eliminate repeating groups, redundant data AND columns not dependent on primary key

6-19

6-20

Вам также может понравиться