Activity 7.1:IdentifyingDataIntegrity
Requirements
In this activity, you will evaluate a set of datarequirements from the Ferguson
and Bardell, Inc. case study to determine areas where possible dataintegrity
issues might arise. You will then formulate a set of dataintegrityrequirements
that must be followed by the development team for the Ferguson and Bardell,
Inc. solution.
Objectives
After completing this activity, you will be able to:
!
Identify areas where dataintegrity and validity are required.
!
Specify dataintegrityrequirements as they relate to data requirements.
Before You Begin
This activity will take place in small groups, with a class discussion following
each exercise.
Prerequisites
To complete this activity, you will need the:
!
Data requirements generated in Activity 3.1.
!
Existence and relationship requirements generated in Activity 4.2.
Time to complete this activity: 25 minutes
40 Activity7.1:IdentifyingDataIntegrityRequirements
Exercise 1:
Determining Data Validity Requirements
In this exercise, you will identify data validity requirements for the Ferguson
and Bardell, Inc. case study.
!
Identify data validity requirements
1. Join the group to which you have been assigned by the instructor.
2. With your group, examine the physical data design on the next page.
3. Consider the datarequirements specified in Activity 3.1.
4. Look for areas in the solution that depend upon data being in a certain
format or within a range of values.
These areas are data validity requirements. Your group should attempt to
find five to seven data validity requirements.
5. Document each data validity requirement and its reason in the following
table.
There may be more rows in the table below than data validity
requirements. Only fill in information that you find.
Data validity requirement Description
Timesheet must report positive billable
hours.
Because a timesheet is a revenue-
generating document, it must report a
positive dollar amount.
Invoice cannot bill for negative amount. Ferguson and Bardell, Inc. cannot
generate invoices that lead the client to
expect revenue from Ferguson and
Bardell, Inc.
Customer address and postal code must
be verifiable.
All addresses within the Ferguson and
Bardell, Inc. system must have valid
state and postal codes.
Contract end date must be later than
start date.
For a contract to be valid, it must be for
a length of traceable time.
Vehicle identification number (VIN)
must be traceable through government
records.
The VIN must be in a format that is
specified by the federal government and
automobile manufacturers.
Note
Activity7.1:IdentifyingDataIntegrityRequirements 41
Employee billing rate cannot be zero. All employees must bill at a positive
billing rate.
When you have finished, you will discuss your findings with the class.
42 Activity7.1:IdentifyingDataIntegrityRequirements
Bitmap found in v06_1609a_act61-answer.vsd or .bmp
TypeID (FK) (N)Int
FirstName VChar 25
MiddleInitial VChar 2
LastName VChar 25
Address1 VChar 40
Address2 VChar 40
City VChar 30
State VChar 20
Zip VChar 10
SSN VChar 9
E-Mail VChar 50
Salary Currency
BillableRate Currency
EmployeeID (PK) Int
Employee
ClientID (FK) (N)DInt
EmployeeID (FK) (N)Int
JobID (FK) (N)DInt
TaskID(FK) (N)DInt
Date Date
Expenses Currency
TotalHours Float
BillableHours Float
Description VChar 255
TimesheetID (PK) DInt
Timesheet
ClientID (FK) (N)DInt
TimesheetID (FK) (N)DInt
Date Date
Amount Currency
Work Description VChar 255
InvoiceID (PK) DInt
Invoice
Name VChar 60
Address1 VChar 40
Address2 VChar 40
City VChar 30
State VChar 20
Zip VChar 10
ClientID (PK) DInt
Client
EmployeeID (FK) Int
Make VChar 100
Model VChar 100
VIN VChar 30
Year Date
BeginMileage Int
EndMileage Int
VehicleID (PK) Int
Vehicle
Is Issued
1
Completes
1
1
∞
∞∞
∞
Is Sent To
1
0
∞
∞∞
∞
1
1
∞
∞∞
∞
JobDesc VChar 255
JobID (PK) DInt
Job
TaskID (FK) DInt
JobID (FK) DInt
JobTask_Link
Has
Bills Time To
VehicleID (FK) (N)Int
MaintenanceCost Currency
MaintenanceDesc VChar 255
MaintenanceDate Date
MaintenanceMiles Int
MaintID (PK) Int
VehicleMaint
Can Have
0
∞
∞∞
∞
1
1
1
∞
∞∞
∞
TypeDesc VChar 255
TypeID (PK) Int
EmployeeType
Is Classified As
1
1
1
∞
∞∞
∞
1
1
∞
∞∞
∞
ClientID(FK) DInt
EmployeeID(FK) Int
StartDate Date
EndDate Date
Description VChar 255
ContractID(PK) DInt
Contract
Purchases
1
1
0
∞
∞∞
∞
Is Made From
Contracts With
TaskDesc VChar 255
TaskID (PK) DInt
Task
Has
1
∞
∞∞
∞
1
0
∞
∞∞
∞
VehicleID (FK) Int
EmployeeID(FK) Int
Vehicle_Link
Can Be Assigned To
0
∞
∞∞
∞
1
Bills Time To
1
∞
∞∞
∞
1
Activity7.1:IdentifyingDataIntegrityRequirements 43
Exercise 2:
Determining DataIntegrityRequirements
In this exercise, you will determine the dataintegrityrequirements for the
Ferguson and Bardell, Inc. solution.
!
Determine dataintegrityrequirements
1. Refer to the physical data design on the previous page.
2. Consider the existence and relationship requirements specified in
Activity 4.2.
3. Look for areas in the data design where relationships require integrity or
where the existence of entities will cause integrity issues. These areas are
the relational integrity requirements.
4. Document each dataintegrity requirement and its reason in the following
table.
There may be more rows in the table below than dataintegrity
requirements. Only fill in information that you find.
Data integrity requirement Relationship requirement
Timesheet must contain an existing
employee, client, job, and task.
Timesheet entity must have foreign
keys for employee, client, job, and task
entities.
Contract cannot exist without a valid
employee and customer relationship.
Contract entity must have foreign keys
for employee and customer entities.
Task must be tied to a specific job. Unique foreign key in job entity is
primary key of task entity.
Invoice cannot be generated without a
timesheet.
Invoice entity must have foreign key for
timesheet entity.
Maintenance on a vehicle cannot exist
without a vehicle.
Vehicle maintenance entity cannot have
null foreign key for vehicle entity.
Job cannot be created without a default
task.
Timesheet entity cannot have null
foreign key for job or task entities.
Note
44 Activity7.1:IdentifyingDataIntegrityRequirements
When you have finished, you will discuss your findings with the class.
. complete this activity: 25 minutes
40 Activity 7. 1: Identifying Data Integrity Requirements
Exercise 1:
Determining Data Validity Requirements.
Activity 7. 1: Identifying Data Integrity
Requirements
In this activity, you will evaluate a set of data requirements from the Ferguson