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

Process Models:

Data Flow Diagrams


Special thanks goes to Dr. Jack T. Marchewka for many of the ideas
and examples contained in these notes.

Process Modeling
Objective:
Understand the concept of business
processes
Understand and create Data Flow
Diagrams.
DFDs
Visually represent
data flows
processes
Emphasize the logic of system
Provide documentation for Analysis &
Design
Data Flow Diagrams
Data Flow
Process
File or Data Store
Source or Entity
Gane & Sarson Methodology
DFDs
Do not show technical aspects
Show interrelations of systems &
subsystems
Facilitates
developer understanding
user-developer communication
Completeness of data & process
definitions
The Systems Concept
Input Process
Output
DFDs
1
Process
Data Flow

Input
Data Flow

Output
Developing DFDs
Context Diagram
System Overview
Little or no detail
Zero Level Explosion
More detailed
First,Second, Third Levels
More detailed levels
Context DFD
Basic overview of the system
Contains only 1 process
given the number zero
Shows all external entities
Major data flows among entities
Generally no data stores
Assign a name to the whole system
Context DFD Examples
0
Apartment
Rental
System
Tenant
Bank
External
Manager
Lease,
Payments
Bank Deposit
Lease
Cash
Report
Receipts, Notices
Apartment Rental
Recall: on-line university registration
(from Use Case examples)
The system should enable the staff of each academic department to
examine the course offered by their department, add and remove
course, and change the information about them (e.g., the maximum
number of students). It should permit students to examine currently
available courses, add and drop courses to and from their schedules,
and examine the course for which they are enrolled. Department staff
should be able to print a variety of reports about the courses and the
students enrolled in them. They system should ensure that no student
takes too many course and that students who have any unpaid fees
are not permitted to register. (Assume that a fees data store is
maintained by the university's financial office that the registration
system accesses but does not change.)
Department
Staff
Course
Registration
System
Course
information
Course
offerings
Enrollment
information
0
Students
Student
schedules
Registration Context Diagram
Recall: real estate (from Use Case
examples)
A Real Estate Inc. (AREI) sells houses. People who want to sell their
houses sign a contract with AREI and provide information on their house.
This information is kept in a database by AREI and a subset of this
information is sent to the citywide multiple-listing service used by all real
estate agents. AREI works with two types of potential buyers. Some
buyers have an interest in one specific house. In this case, AREI prints
information from its database, which the real estate agent uses to help
show the house to the buyer (a process beyond the scope of the system
to be modeled). Other buyers seek AREIs advice in finding a house that
meets their needs. In this case, the buyer completes a buyer information
form that is entered into a buyer database, and AREI real estate agents
use its information to search AREIs database and the multiple-listing
service for houses that meet their needs. The results of these searches
are printed and used to help the real estate agent show houses to the
buyer.
Sellers
AREI
System
House
information
Buyer
information
House
Information
0
Buyers
House
information
House
Information
Multiple
Listing
Service
AREI Context Diagram
Level 0 DFD
Detail from exploding the context-
level DFD
Show less than 9 processes
Number each process
Show data stores (master files)
Ignore the handling of exceptions
Show all external entities
1
2
3
Tenant
New
Tenant
Process
Collection
Process
Delinquent
Process
Lease
D1 Tenant File
Tenant Info Level 0 DFD: Apartment Rental

Payments
Bank
Bank
Deposit
Receipt
Ext.
Mgr
Cash Report
D1 Tenant File
Unpaid
Charges
Delinquency
Report
Tenant
Info
Delinquencies
Copy of lease
Notice
Level 0 DFD: Registration

Dept
Staff
1
Maintain
department
course
offerings
2
Maintain
student
enrollments
3
Course
Enrollment
Reports
Course Offering
Changes
Course
Offerings
Available
courses
D1 Fees
D2 Course Offerings
D3 Enrollments
Course
information
Student Enrollment
Report Request
Student
Enrollment
Report
Enrollment
information
Students
Course
Offering
Updates
Course Offering
List
Fee Payment
History
Available
course request
Available courses
Available
courses
Course enrollment
Student schedule
Student
schedule
Course
enrollment
request
Level 0 DFD: AREI

Sellers
Maintain
house
seller
information
D2
Sales Contracts
House
information
Generate
requested
report
1
2
Sales Contract
D3
Offered Houses
House information
Buyer information form
D1
Multiple Listing
Services File
House information
Sales
Contract
House information
House information
House information
Buyers
House information request
D4
Buyers
Buyer
information
Create Child Diagrams
Vertical Balancing
A child diagram cannot produce output or
receive input that the parent does not
produce or receive
External entities are not shown
May contain additional data stores
e.g.., transaction files
Primitive when no longer exploded
Deposit Checks
Rent Checks
2.1
2.2
Collect
Security
Deposit
Collect
Rent
Deposit Receipts
Payment Receipts
Unpaid
Charges
Bank Deposit
Bank Deposit
D1 Tenant File
Tenant
Info
Tenant
Info
Cash
Report
Level 1 DFD: Apartment Rental

Deposit
Check
2.1.1
Make
Bank
Deposit
Bank
Deposit
2.1.2
Update
Tenant
File
Deposit
Info
D1 Tenant File
Update
Info
2.1.3
Create
Receipt
Tenant
Info
Receipt
Level 2 DFD: Apartment Rental

Level 1 DFD (1 of 3): Registration

Dept.
Staff
Produce
course
offering
list
Add new
course
Department ID
Department ID
D2 Course Offerings
Course to
delete
Course modifications
Course Offering
List Request
Course offering list
New Course
information
New Course
Delete
course
Modify
existing
courses
Course to delete
Course modifications
Existing Course
information
1.1
1.2
1.3
1.4
Level 1 DFD (2 of 3): Registration

Students
Produce
course
offering
list
Add course
to schedule
D2
Course Offerings
Course to
delete
Current schedule request
Available courses
Course to add
to enrollment
Course enrollment add
Delete
course from
schedule
Obtain
current
schedule
Course to delete
2.1
2.2
2.3
2.4
Available Course
Request
Available
Courses
D3 Enrollments
D1 Fees
Student enrollment
information
Fee payment history
Course enrollment
add
Student schedule
Level 1 DFD (3 of 3): Registration

Dept.
Staff
Obtain
report
type
D2
Course Offerings
Report
type
Course offering
information
Generate
requested
report
3.1
3.2
Report
Request
D3
Enrollments
Enrollment
information
Requested
report
Common Errors
Forgetting data flows
Arrow pointing wrong way
Connecting data stores & sources
Incorrectly labeling processes or flows
Too many processes (break it up!)
Data flows entering a process must be
different when leaving!
Logical & Physical DFDs
Logical
focuses on modeling the business
system independent
Physical
focuses on modeling the system
system dependent
Logical DFDs - Current System
Good for communication &
understanding
Focus on business activities
User view of the current system
Model of the business
Logical DFDs - New System
Look for improvements
effectiveness - i.e., doing the right thing
efficiency - i.e., doing the thing right
Transition from Analysis to Design
Physical DFDs
Use the new logical DFD to make transition to
a CBIS
Define Machine versus manual boundaries
processes = programs or manual procedures
data stores = data files or manual files
Define controls, validations, & security
Define actual file names & printouts
Master & transaction files
Partitioning the Physical DFD
Defining
manual procedures
automated procedures
circled using a dotted line
Batch versus On-Line Procedures
Deposit
Check
2.1.1
Make
Bank
Deposit
Bank
Deposit
2.1.2
Update
Tenant
File
Deposit
Info
D1 Tenant File
Update
Info
2.1.3
Create
Receipt
Tenant
Info
Receipt

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