download

for the Small Enterprise
Systems Analysis and Design
chapter4
section II
Analysis
data fundamentals
file processing fundamentals
entity-relationship diagrams
the cornucopia case
portfolio project
Chapter Objectives
When you complete this chapter you will be able to:
• Identify data types and structures within a file
• Distinguish between master and transaction files
• Define the relationship between two files
• Construct and normalize an entity-relationship
diagram
Chapter 4
Systems Analysis and Design
for the Small Enterprise
2
Data Fundamentals
The Data Model:
• Data is organized into data files, which appear
as data stores on the DFD
• On a DFD, a data store may actually represent
– an independent data file
– a data file that is part of a database
– a database consisting of several related data
files
• The data model provides detailed information
on the data stores identified in the DFD
Chapter 4
Systems Analysis and Design
for the Small Enterprise
3
Figure 4-1: Data Models and the Six CIS Components
Chapter 4
Systems Analysis and Design
for the Small Enterprise
4
Data Fundamentals
Data Definition and Structure:
• Data is defined by three attributes: name, size, and
type
– Data names provide unique and descriptive labels
– Data size determines the amount of space
required to store the data
– Data type specifies how the computer stores the
data and restricts how the data can be used
• Data elements are organized into structures
– a record is a collection of related data elements or
fields
– a data file is a collection of related records
Chapter 4
Systems Analysis and Design
for the Small Enterprise
5
File Processing Fundamentals
Data File Types:
• One way to classify files is to consider how file
content correlates to events or activities within
the enterprise
– A master files is a collection of data that
represents an identifiable person or thing
– A transaction file is a collection of data that
represents a particular event or activity of
the enterprise
Chapter 4
Systems Analysis and Design
for the Small Enterprise
6
Figure 4-2: Silhouette Sea Charter Files – Part 1
The Charter Contract contains
details of individual charters.
The Customer master file
contains one record for each
customer.
The Charter transaction file
contains one record for each
charter.
Chapter 4
Systems Analysis and Design
for the Small Enterprise
7
File Processing Fundamentals
Database Structure:
• A relational database is a collection of data
files that are tied together by common fields
• The records in each data file are
distinguished from one another by key fields
• A key field may contain a unique value,
known as a primary key value.
Chapter 4
Systems Analysis and Design
for the Small Enterprise
8
Figure 4-2: Silhouette Sea Charter Files – Part 2
The Customer master file
contains one record for each
customer.
The Charter transaction file
contains one record for each
charter.
The Boat master file contains
one record for each boat.
The Captain master file contains
one record for each captain.
Chapter 4
Systems Analysis and Design
for the Small Enterprise
9
Figure 4-2: Silhouette Sea Charter Files – Part 3
CustID is added as a primary
key to the Customer master
file record.
CharterID is added as a
primary key to the Charter
transaction file.
Registration # is added as a
primary key to the Boat master
file.
SSN is added as a primary key
to the Captain master file.
Chapter 4
Systems Analysis and Design
for the Small Enterprise
10
Entity Relationship Diagrams
• The entity-relationship diagram (ERD) presents
the data model
• The data stores of the DFD become the entities
of the ERD
• Entities are related to one another when they
share a common field
• Cardinality is the term used to describe the
nature of the entity relationship, which may be:
– one-to-one
– one-to-many
– many-to-many
Chapter 4
Systems Analysis and Design
for the Small Enterprise
11
Silhouette Sea Charter’s Initial ERD
This many-to-many cardinality reflects the possibility that
… A single charter may have many customers
… Over time, a customer may take many charters
This one-to-many
cardinality reflects the
possibility that, over
time, a boat may be
used for many charters
This one-to-many
cardinality reflects the
possibility that, over time,
a captain may be assigned
to many charters
Reference Figure 4-5: Illustrated ERD Symbols and Silhouette Sea Charter
Chapter 4
Systems Analysis and Design
for the Small Enterprise
12
Entity Relationship Diagrams
Many-to-Many Cardinalities:
• Relational database software, such as
Microsoft Access, cannot implement manyto-many cardinalities
• Silhouette considers two solutions to the
many-to-many problem … both of which
create new problems
Chapter 4
Systems Analysis and Design
for the Small Enterprise
13
Figure 4-6: Silhouette Sea Charter Inefficient File Diagrams
Solving the many-to-many problem this way increases data
redundancy
Solving the many-to-many problem this
way creates a repeating group
Chapter 4
Systems Analysis and Design
for the Small Enterprise
14
Entity Relationship Diagrams
Normalization:
• Many-to-many cardinalities should be
eliminated through a process called
normalization
• Silhouette’s ERD can be normalized by
adding a new file between Charter and
Customer
Chapter 4
Systems Analysis and Design
for the Small Enterprise
15
Figure 4-7: Silhouette Sea Charter Normalized ERD
To maintain the relationship between Charter and Customer,
this new intersection file contains two fields: CharterID
CustID
Chapter 4
Systems Analysis and Design
for the Small Enterprise
16
TECHNOTE 4-1
Three Normal Forms
Formal database design theory outlines a process
that ensures file efficiency, referred to as normalcy.
•First normal (1NF) eliminates repeating groups
•Second normal form (2NF) requires every field to be
dependent on or determined by the key field
•Third normal form (3NF) requires that all of the
dependencies be contained within the file
Chapter 4
Systems Analysis and Design
for the Small Enterprise
17
ThinkingCritically
Database Accuracy
To what extent is the analyst
responsible to clean up the errors
that may appear in the enterprise’s
existing data files before the new
database can be implemented?
Chapter 4
Systems Analysis and Design
for the Small Enterprise
18
The Cornucopia Case
THE CORNUCOPIA
CASE
The analysis of the current system continues
with the development of the data model.
The analysts start the process with the
existing system file descriptions and ERD
and then introduce some early modifications
and improvements.
Chapter 4
Systems Analysis and Design
for the Small Enterprise
19
Figure 4-8: Cornucopia
Existing Entity Attributes
Customer
Chapter 4
Supplier
Order
Inventory
Attribute 1 name
name
order number
UPC
Attribute 2 address
supp. phone
order date
title
Attribute 3 cust. phone
Supplier phone
artist
Attribute 4
UPC(1)
label
Attribute 5
quantity ordered (1)
price
Attribute 6
UPC(1)
Attribute 7
quantity ordered (1)
Attribute 8
UPC (1)
Attribute 9
quantity ordered (1)
Systems Analysis and Design
for the Small Enterprise
20
Figure 4-9: Cornucopia
Existing System ERD
Chapter 4
Systems Analysis and Design
for the Small Enterprise
21
Figure 4-10: Cornucopia
Improved Entity Attributes
Customer
Chapter 4
Supplier
Order
Order/
Customer
Inventory
Attribute 1
*cust ID
*supp ID
*order num
*order num
*UPC
Attribute 2
first name
name
order date
*UPC
title
Attribute 3
last name
street
supp ID
quan ord
artist
Attribute 4
street
city
quan rec
label
Attribute 5
city
state
price
Attribute 6
state
zip code
quan in stk
Attribute 7
zip code
phone
supp ID
Attribute 8
phone
e-mail
Attribute 9
e-mail
fax
Attribute 10
status
Systems Analysis and Design
for the Small Enterprise
22
Figure 4-11: Cornucopia Normalized ERD
Customer is not related
to any other file in the
existing system ERD
Chapter 4
This intersection file is required to
normalize the many-to-many relationship
between Order and Inventory
Systems Analysis and Design
for the Small Enterprise
23
Figure 4-12: Cornucopia Data Modeling with
Visible Analyst
Enlarge
Chapter 4
Systems Analysis and Design
for the Small Enterprise
24
PortfolioprojectPortfolio Project
Team Assignment 4: Data Modeling
•Prepare the existing system entityrelationship diagram
Chapter 4
Systems Analysis and Design
for the Small Enterprise
25
Chapter Summary (1/2)
• Every data element is defined, in part, by its
data type
• Data elements are organized into data
structures, the most familiar of which is the
data file
• Data files, first identified as data stores on the
DFD, form the basis of the data model
Chapter 4
Systems Analysis and Design
for the Small Enterprise
26
Chapter Summary (2/2)
• A database, which is usually at he heart of an
information system, is a collection of related
data files
• The detailed relationships between database
files is portrayed on the entity-relationship
diagram
Chapter 4
Systems Analysis and Design
for the Small Enterprise
27