T – DATA MODELING MILESTONE 3

advertisement
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page 3-1
MILESTONE 3 – DATA MODELING
 Synopsis
he requirements analysis phase answers the question, “What does the user
need and want from a new system?” The requirements analysis phase is
critical to the success of any new information system. In this milestone, you
need to identify what information systems requirements need to be defined
from the system users’ perspectives, and draw graphical, logical, models to document
the data requirements for a new and improved system.
T
Data modeling is a technique for organizing and documenting a system’s data. Data
modeling is sometimes called database modeling because a data model is usually
implemented as a database. Data are viewed as a resource to be shared by as many
processes as possible. As a result, data must be organized in a way that is flexible
and adaptable to unanticipated business requirements – and that is the purpose of
data modeling.
In this milestone you will first discover those entities in the system that are or might
be described by data. With each entity you identify, you will define it in respect to
the business. Then, you will construct a Context Data Model that graphically depicts
each of the entities and the relationships they have with each other. Next, you will
refine the context data model to include primary and foreign keys. The resulting
model is called a Key-Based Data Model. Finally, you refine the key-based data
model to include any hierarchies and attributes, and this model is referred to as the
Fully Attributed Data Model.
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page 3-2
 Objectives
After completing this milestone, you should be able to:
 Understand and perform the techniques for entity discovery.
 Define each entity with respect to the business, and complete an entity/definition
matrix.
 Perform the necessary data modeling techniques to organize, and document the
data requirements for the proposed system.
 Construct the Context, Key-Based, and Fully-Attributed data models.
 Prerequisites
Before starting this milestone the following topics should be covered:
1. Data modeling – Chapter 7
2. Milestone 2 Solution
 Assignment
Now that you have studied the current system and analyzed some of its problems and
opportunities, plus gained approval to proceed, you can now start to identify the
business data requirements and graphically model them. In this assignment you will
use your results of the previous Milestone and transcripts of an interview with Julius
Marx, IT Director of Huxley College. The results of this activity will identify the
business data requirements for the proposed system.
Exhibit 3.1 is a copy of the transcript of the interview. Refer to the transcript, sample
forms, and results from Milestones 1 and 2 for the information necessary to complete
the activities.
 Activities
1. Complete an Entity/Definition Matrix. Analyze each of the forms referenced by
the user interview, plus any comments made by Julius Marx. Make assumptions
where necessary.
2. Prepare a Context Data Model.
3. Prepare a Key-Based Data Model.
4. Prepare a Fully-Attributed Data Model including any generalization hierarchies.
Add the data attributes for each entity.
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page 3-3
Deliverable format and software to be used are according to your instructor’s
specifications. Deliverables should be neatly packaged in a binder, separated with a
tab divider labeled “Milestone 3.”
References:
Milestone 2 Solution
Provided by your instructor
Transcripts of Interview with Julius Marx and Accompanying Sample
Forms and Report
Exhibits 3.1-3.5
Templates
See online learning center web site for the textbook.
Deliverables:
Entity Definition Matrix:
Due: __/__/__
Time:_______
Context Data Model:
Due: __/__/__
Time:_______
Key-Based Data Model:
Due: __/__/__
Time:_______
Fully-Attributed Data Model:
Due: __/__/__
Time:_______
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page 3-4
ADVANCED OPTION
For the advanced option, assume that the proposed system must also handle the
entry of Purchase Orders. Your instructor will specify additional system
requirements for the Purchase Order part of the system. Modify your initial Entity
Definition Matrix and Fully-Attributed Data Model to be able to handle this
system requirement.
Entity Definition Matrix:
Due: __/__/__
Time:_______
Fully-Attributed Data Model:
Due: __/__/__
Time:_______
Milestone’s Point Value:
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
_______
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page: 3-5
The following is a copy of the transcript of an interview between Mr. Julius Marx, IT
Director, and Frank Baravelli, the systems analyst assigned to the project. The goal
of this interview was to obtain sample forms used for processing employee
information and to ask questions about them to discover data entities of the system.
Exhibit 3.1
Scene: Frank Baravelli, systems
analyst, is meeting with Julius
Marx, IT Director for Huxley
College, at Mr. Marx’s office.
Mr. Baravelli scheduled the
interview to obtain instructions
and sample forms for designing
the data structure for the IT
Tracker system.
Julius: Good Morning Frank! Well, are
you ready to begin the design for
IT Tracker?
Frank: Yes, sir. Although suddenly it
seems like a big job.
Julius: It is a big job. But I’ll be glad to
help you all I can.
Frank: Thanks. I thought I should start
with designing the data.
Julius: You requested some samples of
the forms we use now. Here are
copies of the main three forms
that I think will be relevant to
you.
Frank: Great! That will be a big help.
Julius: The first form is the PC
Configuration Sheet [Exhibit
3.2]. This is just a spreadsheet
that we currently use to keep
track of equipment in each PC.
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Frank: OK. Are these columns all the
pieces of information that need
to be tracked for each PC?
Julius: Well, I don’t think this whole
format works very well. I can
remember several years ago
when we had to add a column
for CD ROM drive when those
started getting popular. Today, I
think we need a column for
mouse as we are getting all kinds
of specialty mice and other
pointing devices on the market.
We may need a column for web
cam, also. But the point I want to
get at is that we don’t want to be
restructuring the data every time
there’s a technology shift. I want
you to design it with more
flexibility.
Frank: I see. We ought to move away
from having these specific
components as fields.
Julius: Right. Also, we have a problem
with this format in that it doesn’t
allow for multiple hard drives or
multiple CD ROMs. That
happens pretty often.
Frank: Any other problems with this
form?
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Julius: A couple things. Let’s say I
replace the hard drive. I know
what the machine now has. But I
don’t know what it had before,
how long that component was in
service, a history of
replacements for the PC.
Frank: So you want a maintenance
history of each PC.
Julius: From a component standpoint, I
just need to see a list of all
components that have ever been
in the PC, when those
components were added, and
when they were removed.
Frank: So those dates need to be tracked
for each installed component.
What else needs to be tracked
for each installed component?
Julius: For things such as RAM, I
probably need to track a
quantity, too. For other items, I
should track the Serial Number
of the component.
Frank: OK. Given the changes you
want, I think we ought to define
the word component.
Julius: Good question. You have to
think about how we first buy and
later upgrade the equipment.
Sometimes we buy a complete
system with CPU, monitor,
mouse, keyboard – the works in
one package. In those cases there
isn’t anything to enter into some
of the columns.
Page: 3-6
Frank: So a complete system might be a
single component?
Julius: Right. But then later we will
upgrade a hard drive, add RAM,
replace a bad CD drive, etc. A
replacement NIC can be a
component. A PC we build from
individual parts would have lots
of components.
Frank: So, if everything is a component,
is there any information that
pertains to the PC in general?
Julius: Yes. First of all, this PC
Configuration Sheet doesn’t
show it, but we need to track
whether we are talking about a
PC or a printer or some other
kind of technology equipment.
Second, each piece of equipment
is given a name. The names are
printed on labels and affixed to
the machines as identifiers.
Third, everything has an “In
Service Date.” Finally, I want to
track the department that
equipment is assigned to.
Frank: This sheet tracks the user, not
the department.
Julius: Tracking the user doesn’t work.
We don’t get informed of
personnel turnover. So we go
into an office months later and
can’t find the people we have on
file. But we handle moving the
PCs ourselves, so we know
when they change departments.
Frank: Are machines ever renamed?
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Julius: Yes. Some secretary will name
her PC Lemondrop or
something, and then it will go to
some manly guy who wants it
renamed Corvette or Terminator.
Frank: How long do the names get?
Julius: I think the longest we have is 15
letters. It’s not a perfect ID. You
may want to add a numeric ID.
But I want to keep the names.
Users would rather call in with a
problem on Rambo than a
problem on 153934.
Frank: Speaking of that, let’s talk about
handling service requests. That’s
what this Service Request does,
correct? [Exhibit 3.3]
Julius: Yes. This actually works pretty
well. But I’d like to see it more
automated. I would like a system
where the user could submit the
request electronically. Then I
could look at requests that have
come in, and assign a Tech. I’d
like the Techs to be able to add
their work info (the bottom part
of the form) either in the field or
when they get back. Then we’d
have a record of everything done
on that problem and a history.
Frank: OK. That seems pretty
straightforward. But what about
this Purchase Order? [Exhibit
3.4] We’re not keeping POs in
our system, correct?
Julius: Our mainframe accounting
system will handle all the entry
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Page: 3-7
and edit of purchases. But for
warranty purposes, we need to
be able to tie each component
we install to a specific PO.
Frank: Will we be linking to that data
on the mainframe or pulling
down a copy of the data?
Julius: E. H. Calvert, the VP of Finance,
doesn’t want us making any live
connections to the mainframe.
It’s pretty old and doesn’t need
to be taxed anymore. But we can
write some SQL to pull out the
data we need at the end of each
business day, and store it in our
own tables. Then we can query
that information all we want.
Frank: I assume that means I am limited
to the fields available in the
mainframe PO system.
Julius: To a large extent that is true. But
with SQL we can combine fields,
separate fields, and generally
reformat the data about any way
we want.
Frank: So what should tie to what?
Julius: That’s what you’ll have to think
through. But let me tell you what
I want to accomplish. Each
installed component on a PC
should tie back to an individual
line on a PO. That way I can
look up the order related to each
installed component.
Frank: So if you have a PC with a set of
Bose speakers that go bad, you
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
should be able to trace those
speakers back to that second line
on PO 2001-10 and figure out
when they were purchased and
who from.
Julius: Right. That would allow me to
check out the warranty situation.
That should also allow me to run
a list of PO items that have never
been installed anywhere.
Frank: How would that help you?
Julius: The uninstalled items would
either be in inventory or indicate
a problem in the data. Either
way, I want to know about it.
When a Tech finds a bad NIC, he
or she ought to be able to see if
we have any in inventory.
Frank: Wow. I can really see how this
system could be helpful.
Page: 3-8
me look at trends. There is no
end to the management we can
get out of this system – provided
you design the data correctly. It
all comes down to data design.
Frank: Now I feel more nervous than
ever.
Julius: Don’t be. You aren’t in this
alone. We have a steering
committee and users who will
look over your design. We’ll get
it right. Do you have any other
questions for now?
Frank: I don’t believe so. Thanks for
your time, Mr. Marx. You have
been a big help.
Julius: Thank you. Call me if you need
anything else. Goodbye.
Frank: Goodbye.
Julius: Yes, we can use it to help the
Techs, help the users, and help
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page: 3-9
Exhibit 3.2
PC Configuration Sheet
Machine name
Processor
Mertz
Pentium III 700
RAM
128 RTL 8139A
NIC
Hard Drive
Maxtor 10Gb
CD Rom Drive
Asus 50X
User
Child
Pentium III 700
16Mb AtiRage
Maxtor 60gb.
2/Asus 50X
AJM
Rambo
Pentium III 700
128 RTL 8139A
32Mb. Savage 4
Maxtor 10Gb
Asus 50X
Isiah A.
Gilligan
Pentium III 700
128 AEF 360 TX Fast PCI
32Mb Diamond Viper
Maxtor 60gb.
Asus 50X
JB Richland
Moll
Pentium III 700
128 AEF - 360 TX Fast PCI
8 Mb Rage Pro AGP
Maxtor 30 Gb
Creative 52X
Laura
Poe
Pentium III 700
96 Realtek RTL 8029 PCI
8Mb Rage IIC AGP
IBM 13 Gb.
Creative 52X
Mark
Bradbury
Pentium III 700
128 RTL 8139A
8 Mb Rage Pro AGP
Maxtor 10Gb
Asus 50X
Vanessa
Marlow
Pentium III 700
128 Soho Fast Ethernet
32 Mb 3dfx Voodoo 4
Maxtor 20 Gb
Asus 50X
DeSoto
Pentium II 233
64 3 Com Fast Etherlink XL
1 Mb SiSV
Western Dig. 4Gb
Mitsumi 32X
Princeton
Pentium II 350
64 AEF 360 TX Fast PCI
8Mb Rage IIC AGP
Seagate 6Gb
Creative infra 60
Frag
Pentium II 350
64 AEF - 360 TX Family PCI Fast
4 Mb Rage IIC AGP
Maxtor 9Gb
Acer 40X
Jennifer
Hoser
Pentium II 350
64 3 Com Fast Etherlink XL
Creative 52X
Lisa
Rose
Pentium II 350
64 3 Com Fast Etherlink XL
4 Mb Rage IIC PCI
Maxtor 6 Gb
Creative 24X
Norma
Troi
Pentium II 350
64 Realtek RTL 8029 PCI
Matrox Millennium 4Mb
Seagate 6Gb
Creative infra 60
Rebecca
Nimitz
Pentium II 400
64 3 Com Fast Etherlink XL
8Mb Rage IIC AGP
Maxtor 9Gb
Creative 48X
Mary
Beetle
Pentium II 450
128 AEF 360 TX Fast PCI
8Mb Rage IIC AGP
IBM 13 Gb.
Creative 48X
Beth C.
Reverb
Pentium II 450
128 AEF 360 TX Fast PCI
32Mb Rage Pro
IBM 20 Gb
Creative 52X
Lab
Reliant
Pentium II 450
64 3 Com Fast Etherlink XL
8Mb Rage Pro AGP
IBM 13 Gb.
Creative 52X
Lab
Tiger
Pentium II 450
64 AEF - 360 TX Fast PCI
32Mb. Viper 770
IBM 10Gb.
Creative 52X
Lab
Goober
Pentium II 450
64 AEF - 360 TX Fast PCI
32Mb. Creative Blaster
Maxtor 4Gb.
Creative 48X
Lab
Lamer
Pentium II 450
128 3 Com Fast Etherlink XL PCI
8Mb Rage IIC AGP
Seagate 13Gb.
Asus 50X
Lab
Bug
Pentium II 450
128 3 Com Fast Etherlink XL
16Mb AtiRage
IBM 14Gb.
Creative 52X
Lab
OkieDokie
Pentium II 450
64 Realtek RTL 8029 PCI
8Mb Rage IIC
Maxtor 9Gb
Creative 52X
CIS
Enola
Pentium II 450
128 3 Com Fast Etherlink XL PCI
4 Mb Rage IIC AGP
IBM 9Gb.
Creative 52X
CIS
Wplfman
Pentium II 450
128 3 Com Fast Etherlink XL PCI
16Mb AtiRage
Horsefeathers
Pentium II 450
Encroachment
Pentium II 500
128 AEF 360 TX Fast PCI
16Mb AtiRage
Coyote
Pentium II 550
128 AEF 360 TX Fast PCI
Swordfish
Pentium II 550
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
96 3 Com Fast Etherlink XL
Video Card
32 Mb Savage 4
64 AEF - 360 TX Fast PCI
64 AEF - 360 TX Fast PCI
Rich
CIS
16Mb AtiRage
Creative 52X
Sonya
Western Dig. 20Gb
Asus 50X
Byron
4 Mb Rage IIC PCI
IBM 10Gb.
Creative 52X
Stephanee
4 Mb Rage IIC AGP
Maxtor 10Gb
Creative 52X
Teri
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page: 3-10
Exhibit 3.3
Service Request
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
SADM 5/ed – CASE STUDY 4 – Milestone 3: Data Modeling
Page: 3-11
Exhibit 3.4
Purchase Order
Prepared by Gary B. Randolph for
Systems Analysis & Design Methods 5ed
by J. L. Whitten, L. D. Bentley, & K. C. Dittman
Copyright Irwin/McGraw-Hill 2001
Download