Professional Documents
Culture Documents
Essentials of Systems Analysis and Design 5th Edition Valacich Solutions Manual
Essentials of Systems Analysis and Design 5th Edition Valacich Solutions Manual
Essentials of Systems Analysis and Design 5th Edition Valacich Solutions Manual
Chapter 7
Structuring System Requirements:
Conceptual Data Modeling
Chapter Overview
Chapter 7 presents the techniques used to structure the data requirements for an
information system application. This chapter emphasizes entity-relationship (E-R)
diagramming; the most common notation used by practicing systems and data analysts.
This chapter explains how E-R diagramming is used along with process and logic
modeling techniques to develop a thorough, unambiguous description of system
requirements. In addition to the standard constructs of the E-R model (entities,
attributes, and relationships), the data-oriented questions that should be raised during
requirements determination are presented.
Instructional Objectives
Specific student learning objectives are included at the beginning of the chapter. From
an instructor’s point of view, the objectives of this chapter are to:
2. Present the E-R model as a conceptual data model that can be used to capture the
structure and much (although not all) of the semantics (or meaning) of data in
several front-end stages of the systems development process.
3. Show students how data, process, and logic models all represent data
requirements, but that conceptual data models (such as E-R diagrams (ERD))
provide a more thorough and stable representation of data than do other types of
system structures.
4. Show students, via an example from Hoosier Burger, how to match data
requirements from data and process system models. This example emphasizes the
differences between data stores and data entities, yet shows how to reconcile
process and data models to be sure each model covers all data requirements.
Classroom Ideas
1. This chapter covers a topic addressed in most database management courses.
Depending on your curriculum, this chapter may review previously covered material
or may be covered (in more depth) in a subsequent course. We believe that
conceptual data modeling is not strictly a database topic, but is essential for
thorough systems analysis, thus it is an activity that should not be assigned to only
specialists (database analysts). Although you are strongly encouraged to cover this
chapter in your systems analysis and design course, it would be good to coordinate
how you address this topic with those who teach database courses. This chapter is
carefully written for the systems analysis and design student. First, data modeling
is presented as a step of the larger systems development process. Second,
questions to ask users and to investigate via other requirements determination
techniques are introduced, again placing data modeling within the whole systems
development effort. Finally, the wording is less technical, and the breadth and
depth of coverage has been reduced to make the material more accessible to those
who do not have an extensive database background. This chapter is an excellent
refresher for those who have already studied E-R modeling and will provide a solid
introduction to E–R modeling for those students who will study this topic later in a
database course.
2. This is a very detailed chapter, and there are many concepts as well as notations to
cover. It is recommended that you devote at least two lecture periods to this
chapter, and if possible, schedule a third session that is devoted entirely to working
sample exercises with students.
3. It is important to review with students how central a role data modeling and data
design play in systems development. Discuss Figure 7–2 with your students and
show examples of the types of data models, designs, and code developed in each
phase of the systems development process. Discuss who in the organization is
most involved in each of these phases and how end users may best participate in
the process.
4. Introduce the notation that is used in the chapter for E-R diagrams (Figure 7–5).
Give an example (and then have students give examples) for each of the constructs
shown in the figure.
5. Contrast the terms “entity type” and “entity instance.” Discuss other examples, such
as STUDENT (with each student in the classroom as an instance). Warn students
that the term “entity” is often used either way, with the meaning intended to come
from the context in which it is used.
7. Discuss relationships and their different degrees (Figure 7–6). Have students
develop additional examples.
10. Unary and ternary relationships can be especially difficult for some students.
Present several examples of each (for unary, for example, a hierarchical
organization structure or the relationships between geographical areas or
governmental territories; for ternary, for example, a faculty member advising
students about majors, or a customer buying products through different sales
channels).
11. If you have the time, an exciting way for students to better appreciate conceptual
data modeling is to listen to a guest speaker who has developed an enterprise data
model for a local organization. Students are usually amazed by how many entities
and relationships exist in any reasonably-sized organization (several dozen entities
and relationships are common, and models with a hundred entities exist). Such a
guest can usually discuss: the difficulties in developing this data model;
misunderstandings people had or controversies that existed before the data model
was developed; how the data model is being used to guide the development of
many new or redesigned systems; and the administrative effort necessary to
maintain such a data model (as well as many other topics).
12. We have discovered that students who study process modeling before data
modeling often have some difficulties with this chapter. First, students may try to
include entities for the sources and sinks for the process model. You must
emphasize that data entities have to be described by attributes, and each instance
must have a primary key. Further, there will usually be multiple instances. For
example, in a data model for a retail store, a student might include the store or the
store’s manager as a data entity. Such concepts do not satisfy the definition of a
data entity.
Second, students may try to use relationships to represent data flows rather than
structural associations between entities. This often occurs when students try to
model system outputs as entities. For example, some students will create an entity
for a major system report (say a monthly sales summary report), and then show a
relationship between the customer entity and the report. Emphasize that although
copies of the report may be kept on file, system outputs are derived from other data;
these data are used to produce any of the system outputs, and hence the outputs
are redundant.
Lecture Notes
Chapter 7 introduces students to data modeling concepts. Data models show the
definition, structure, and relationships within data. Figure 7–1 shows that data modeling
is performed during systems analysis. Data modeling is important because: (1) the
characteristics of data captured during data modeling are crucial in the design of
databases, programs, computer screens, and printed reports; (2) data rather than
processes are the most complex aspects of many modern information systems; (3) the
characteristics about data are permanent; and (4) structural information about data is
essential to generate programs automatically.
A conceptual data model is a detailed model that shows the overall structure of
organizational data while being independent of any database management system or
other implementation considerations. Conceptual modeling is performed during systems
analysis, generally at the same time as other requirements analysis and structuring
steps. An entity-relationship diagram (E-R) is a commonly used data model, showing
how data are organized within an information system. Interviews, questionnaires, and
JAD sessions are common techniques used to gather information for conceptual
modeling.
A conceptual model is usually built for the existing system, then another conceptual
model is prepared for the new system. As Figure 7–2 shows, different kinds of data
models and database design occur during the systems development life cycle. For
instance, during systems design a logical data model is prepared and physical file and
database design is performed; during systems implementation and operation, database
and file definitions are prepared, and the data model is evolved. A project repository
links the data models and database design.
When performing requirements structuring, the analyst must formulate questions and the
investigation to include a data focus. These questions identify the rules and policies
governing how work is performed. Table 7–1 identifies categories of questions to ask.
Data modeling is performed using both top-down and bottom-up approaches. As Figure
7–4 shows, an analyst uses specific documents to gain a bottom-up perspective of the
data.
On an E-R diagram, three main constructs are used: data entities, relationships, and
their associated attributes. This textbook uses the crow’s foot modeling notation. Figure
7–5 shows the basic E-R diagram notations. An entity is a person, place, object, event,
or concept in the user environment about which the organization wishes to maintain
data. An entity type is a collection of entities that share common properties, and an
entity instance is a single occurrence of an entity. An attribute is a characteristic of an
entity.
The degree of a relationship indicates the number of entity types that participate in a
relationship. Figure 7–6 shows three common relationships: unary, binary, and
ternary. The cardinality of a relationship is noted on an E-R diagram; both minimum
and maximum cardinalities are noted. An associative entity is an entity type that
associates the instances of one or more entity types and contains attributes that are
peculiar to the relationship between those entity instances. Figures 7–7 and 7–8 provide
examples of how to model associative entities.
The Hoosier Burger’s food ordering system example illustrates how to prepare a
conceptual data model. Figure 7–9 is the level-0 data flow diagram for Hoosier Burger’s
new logical inventory control system; Figure 7–10 is the preliminary E-R diagram for
Hoosier Burger’s inventory control system; Figure 7–11 is the final E-R diagram for
Hoosier Burger’s inventory control system.
Conceptual data model preparation for an electronic commerce application follows the
same approach used for more traditional applications. The authors use Pine Valley’s
WebStore as an Internet-based application example for conceptual modeling. Table 7–
2 lists the customer and inventory information for the WebStore; Figure 7–12 shows the
level-0 data flow diagram for the WebStore. Tables 7–3 identifies the data flows within
each data category; Table 7–4 identifies the unique data flows within each data
category. Figure 7–13 shows the WebStore’s E-R diagram.
system. The description of a process can shed light on business rules that must
be represented in the data model.
11. List the four types of E-R diagrams produced and analyzed during
conceptual data modeling.
E-R diagrams are produced: (1) to cover just the data needed in the project’s
application; (2) for the application system being replaced; (3) to document the
entire database from which the new application’s data are extracted; and (4) for
the whole database from which data for the application being replaced are drawn.
13. Explain the difference between a candidate key and the identifier of an entity
type.
A candidate key is an attribute(s) that uniquely identifies each instance of an entity
type. An identifier is a candidate key that has been chosen as the unique,
identifying characteristic for that entity type.
PE # 1
Product Component
PK Product No PK ComponentNo
Cost C_Description
P_Description UnitOfMeasure
Comprised Of GoesInto
3 PK,FK2,I2 Product No PK,FK1,I1 ComponentNo
PK,FK1,I1 Component No PK SubComponentNo
C_Quantity Quantity
Concert_Hall
Concert_Hall_ID
Room#
3. A restaurant chain has several store locations in a city (with a name and
zipcode stored for each), and each is managed by one manager. Managers
manage only one store. Each restaurant location has its own unique set of
menus. Most have more than one menu (e.g., lunch and dinner menus).
Each menu has many menu items, and items can appear on multiple menus,
and with different prices on different menus. Represent this situation of
restaurants with an E-R diagram.
Restaurant Manager
Restaurant_ID Manager_ID
Name Name
zipcode
Menu
Menu_ID
Type
Menu_Menu_Item Menu_Item
Menu_ID Menu_Item_ID
Menu_Item_ID Name
Price
5. Study the E-R diagram of Figure 7–20. Based on this E-R diagram, answer
the following questions:
a. How many PROJECTs can an employee work on?
This is a many-to-many relationship, so any number of employees can work
on a project.
Sales_Agent
Agent_ID
Name
Salary
Customer Car
Customer_ID Car_ID
Name Make
Phone# Model
Year
Rental
Begin_date
End_date
7. Consider the E-R diagram in Figure 7–21. Are all three relationships—
Holds, Goes_on, and Transports—necessary (i.e., can one of these be
deduced from the other two)? What, if any, reasonable assumptions make
all three relationships necessary?
A vessel holds potentially many consignments, and a consignment is on at most
one vessel, which probably means that Holds tracks the consignments currently
held on a vessel (and the vessel, if any, which currently holds a consignment).
A vessel goes on potentially many voyages, but a voyage involves only one
vessel. The Transports relationship says that a consignment is transported on
zero to many voyages (which may involve the same or different vessels), and a
voyage transports zero to many consignments.
Given that a consignment might be on many voyages, and even though each
voyage involves exactly one vessel, we do not know from just Transports and
Goes_on which vessel a consignment is currently on (there are no attributes from
which to infer this).
8. Draw an E-R diagram to represent the sample customer order in Figure 7-4.
A suggested answer is provided below. The following E-R diagram was created
with Microsoft Visio.
Customer OrderDetails
Order Product
PK CustomerNo PK,FK1,I1 OrderNo
PK OrderNo PK ProductNo
PK,FK1 CustomerNo
PK,FK1,I1 CustomerNo
Name PK,FK2,I2 ProductNo
ProductDescription
Street_Address OrderDate UnitPrice
City Quantity
PromiseDate
State
Zip
a. Represent the EMPLOYEE entity and its degree attributes using the
notation for multivalued attributes.
Employee
Emp_ID
Name
{Degree,
Date_earned}
b. Represent the EMPLOYEE entity and its degree attributes using two
entity types.
Employee Degree
Emp_ID Deg_ID
Name Name
Date_earned
c. Finally, assume the company decides to also keep data about the
institution from which the employees’ degrees were earned, including
name of institution, city, and state where the institution is located.
Augment you answer to part b to accommodate this new entity type.
Employee Degree
Emp_ID Deg_ID
Name Name
Date_earned
Institution
Institution_ID
Name
City
State
PK Date Married
Married /
For 10c:
PK Date Married
Married /
11. Draw an E-R diagram for each of the following situations. (The scenarios
are provided in the textbook.)
Suggested answers are provided below. The ERDs were prepared using
Microsoft Visio.
Chemist
Equipment Project
PK,I1 Employee_ID
PK Serial_No PK,I1 Project_ID
Name
Cost Start_Date Phone_No
Assignment
PK Assignment_No
PK,FK1,I4,I3 Project_ID
PK Employee_ID
Assign_Date
Course Section
PK Course_ID PK Course_ID
PK Section_No
Course_Name PK Semester_ID
Units
analysis provide for you as a decision maker? What insight do you gain
into the decision-making process involved in choosing the best alternative
system design?
In the first accompanying spreadsheet, the weights have been changed to reflect
a weighting that represents systems development projects in governmental
agencies. In these settings, a great deal of weight is given to the costs and time
frame of the system being proposed. As often happens in governmental
agencies, by weighting costs and timing more heavily in this example the outcome
has changed. Alternative A and Alternative C have traded places; Alternative A
now has the highest score. By changing the weighting, we may have just traded
the more technically proficient solution for the more cost-effective solution (at least
in terms of “short term” costs).
The third spreadsheet has the additional criteria of “references” and “in use”.
“References” are written references from other organizations currently using the
vendor’s systems. “In use” means that the technology proposed must have been
in use by a paying customer for six months. These are very common criteria for
organizations that value stability of the vendor, technology over performance, and
having state-of-the-art technology. These additional criteria change the
outcomes; Alternative B now has the highest score. These changes appear to
have caused the more stable vendor (i.e., the vendor with the better references
and the track record for using the technology it has proposed) to be chosen over
the vendor who scored higher on other performance indicators.
13. The method for evaluating alternatives used in Figure 7–19 is called
weighting and scoring. This method implies that the total utility of an
alternative is the product of the weights of each criterion times the weight of
the criterion for the alternative. What assumptions are characteristic of this
method for evaluating alternatives? That is, what conditions must be true
for this to be a valid method of evaluation alternatives?
For this method of evaluation to be valid, one assumes that all relevant criteria are
known and included and that the weights and ratings are accurate. More
important, this method assumes that the alternatives and criteria lend themselves
to a quantitative analysis. Some people argue that some parts of the analysis
inherently cannot be quantified. For example, it is difficult to truly rate and weight
the amount of trust that you can place in a vendor and your belief that they will
indeed follow through on their claims. Further, this method assumes that the
criteria are independent of each other, and thus scores are additive.
14. Weighting and scoring (see Problem and Exercise 13) is only one method
for comparing alternative solutions to a problem. Go to the library, find a
book or articles on qualitative and quantitative decision making and voting
methods, and outline two other methods for evaluating alternative solutions
to a problem. What are the pros and cons of these methods compared to
the weighting and scoring method? Under weighting and scoring and the
other alternatives you find, how would you incorporate the opinions of
multiple decision makers?
When multiple decision makers collaborate and make the decision together, there
are several methods for incorporating their interactive input. For example, for a
quantitative analysis such as that presented in Figure 7–8, each decision maker
first enters her ratings for each alternative across each criterion. The data are
then summarized using a spreadsheet, and the average and/or summary rating
across all decision makers is used to choose a vendor. In addition, group support
systems can tally the individual, anonymous ideas, comments, and/or votes of
multiple, collaborating decision makers. Because there are many multi-criteria
decision-making methods (e.g., another popular one uses pairwise comparisons),
students may come up with many alternatives for this question.
15. Prepare an agenda for a meeting at which you would present the findings of
the analysis phase of the SDLC to Bob Mellankamp concerning his request
for a new inventory control system. Use information provided in Chapters 5
through 7 as background in preparing this agenda. Concentrate on which
topics to cover, not the content of each topic.
Basically, students should include in the meeting the deliverables from the three
major subphases of analysis: requirements determination, requirements
structuring, and alternative generation and selection. Some other key issues that
must be decided are who else to invite to the meeting, the level of detail to
present to Bob Mellankamp, and, subsequently, how long the meeting should last.
The meeting should not only summarize the findings from analysis but also
validate these findings by outlining the process followed. An updated BPP should
be covered. Without more information, it may be difficult for the students to
decide on these other key issues. Have them identify the information that would
be needed to decide on these issues. For example, they may want to know more
about Mellenkamp’s personality and preferences before deciding.
16. The owner of two pizza parlors located in adjacent towns wants to
computerize and integrate sales transactions and inventory management
within and between both stores. The point-of-sale component must be very
easy to use and flexible enough to accommodate a variety of pricing
strategies and coupons. The inventory management, which will be linked to
the point-of-sale component, must also be easy to use and fast. The
systems at each store need to be linked so that sales and inventory levels
can be determined instantly for each store and for both stores combined.
The owner can allocate $40,000 for hardware and $20,000 for software and
must have the new system operational in three months. Training must be
very short and easy. Briefly describe three alternative systems for this
situation and explain how each would meet the requirements and
constraints. Are the requirements and constraints realistic? Why or why
not?
Some basic system alternatives include: (1) build the system in-house using a
programming language such as C or Microsoft Visual Basic; (2) purchase
off-the-shelf packages, such as Microsoft Excel and Access, along with the
necessary computer and telecommunications equipment, and use these to build
the necessary systems in-house; (3) purchase custom software and a turn-key
system from either a generic information systems consulting firm or from a
specialized systems provider for the food retail or pizza retail industry; and (4)
outsource the systems to an outside firm.
Each of these alternatives has unique advantages and disadvantages. Given that
the system needs to be stable, easy to use, and built relatively quickly, and given
that this organization probably has little or no in-house systems personnel, the
third and fourth alternatives are most realistic.
17. Compare the alternative systems from Problem and Exercise 16 using the
weighted approach demonstrated in Figure 7–19. Which system would you
recommend? Why? Was the approach taken in this and Problem and
Exercise 16 useful even for this relatively small system? Why or why not?
It will be useful for students to create a spreadsheet like the one presented in
Figure 7–19. They should list in the criteria category each of the requirements
and constraints described in the problem, plus any others that they believe are
relevant. As best they can, have them weigh each of these criteria and use them
to rank each of the four alternatives presented in the previous answer. They may
have to make some assumptions to complete each of the ratings. This method of
analysis should be useful even for this relatively small system. The method will
force the decision maker to flesh out relevant criteria and weighting and be as
objective as possible in rating each alternative on each criterion.
18. Suppose that an analysis team did not generate alternative design
strategies for consideration by a project steering committee or client. What
might the consequences be of having only one design strategy? What
might happen during the oral presentation of project progress if only one
design strategy is offered?
Having only one design strategy can be problematic in several ways. First, there
will be no guarantee that the best, the correct, or even an adequate system for the
situation is being developed or purchased. This is not obvious because it is
unclear if other alternatives were considered, and if they were, those present
cannot see why the one choice won out. Second, if the one strategy is because
only one vendor is used, there are no benefits from having multiple vendors
compete for an RFP. For example, the vendor has no incentive to keep its price
as low as possible. Third, without the detailed, public systems specifications that
are part of a competitive bid process, there is not likely to be much in the way of
written documentation to refer back to if the vendor does not fulfill its promises. If
the analysts present only one design strategy during the oral presentation to the
project steering committee or client, the recommendations are likely to be (at
worst) rejected, or (at best) accepted with great skepticism. It is also possible that
those present at the meeting will start to generate alternatives, each representing
that person’s position. The meeting will likely quickly deteriorate since a fair
assessment of ad hoc alternatives cannot be done within the limits of a meeting.
In any event, this is not a good way to begin the development of an information
system (or to build a career).
19. Assume you are designing a database for a local used car dealership.
Attributes for a car include the vehicle identification number, stock
number, make, model, year, and trim. What would you use for the primary
key in this entity? What attributes are likely to be foreign keys associated
with other entities?
Either the stock number or vehicle identification number could be used as the
primary key. Make, model, and trim are likely to be foreign keys associated with
other entities.
2. Using Table 7–1 as a guide, develop a script of at least ten questions you
would ask during an interview of the customer order processing department
manager at Pine Valley Furniture. Assume the focus is on analyzing the
requirements for a new order entry system. The purpose of the interview is
to develop a preliminary E-R diagram for this system.
Students should identify numerous questions to ask Pine Valley Furniture’s
manager. Students should design their questions to collect information about
data entities, candidate keys, attributes and secondary keys, security controls,
cardinalities and time dimensions of data, relationships, and integrity rules.
Possible questions include: (1) What data are maintained by the customer
ordering system? (2) How do you distinguish each customer record from every
other customer record? (3) What information do you collect about each
customer? (4) Does this information differ if the customer is new, as opposed to
a repeat customer? (5) What information do you keep about each order? (6)
Who has access to customer records? (6) Is there a limit to the number of
outstanding orders a customer can have at any one time? (7) How long do you
keep customer information? (8) What are the return policies for products? (9)
What types of reports do you use? (10) Who can modify the customer, order,
and/or product data?
5. Ask a systems analyst to give you a copy of the standard notation he or she
uses to draw E-R diagrams. In what ways is this notation different from
notation in this text? Which notation do you prefer and why? What is the
meaning of any additional notation?
Many articles discussing various data modeling notations are available on the
Web. As an alternative to contacting a systems analyst, you can ask students to
locate one or more of these standard notations and then compare and contrast
these notations. If time permits, you may even have students present their
findings to the class.
semester.
Low-end alternative: 2.4GHz Intel Celeron processor, 256MB of RAM, 40GB hard
drive, 17" monitor, Microsoft Windows XP Home Edition, Microsoft Office 2003
Standard Edition. Cost is about $800.
7. For the new PC described, develop ranked lists of your requirements and
constraints as displayed in Figure 7–19. Display the requirements and
constraints, along with the three alternatives, as done in Figure 7–19, and
note how each alternative is rated on each requirement and constraint.
Calculate scores for each alternative on each criterion and compute total
scores. Which alternative has the highest score? Why? Does this choice
fit with your selection in the previous question? Why or why not?
The spreadsheet below presents the quantitative analysis for the three
alternatives described in the previous answer. Speed, storage, ease of use,
reliability, costs, and time to operation were the criteria used. The mid-range
alternative has the highest score because it has acceptable rankings for the
performance-oriented criteria and scores well on the highly weighted criteria of
costs. As is often the case, people often buy more technology than they really
need. The counter argument is that, for PCs, one should buy as much power as
they can reasonably afford so the technological life of their equipment is longer,
and they will be better able to take advantage of new software as it becomes
available.
PC Comparison
Weighted Approach Spreadsheet
2.4GHz Intel 2.8GHz Intel 3.2GHz Intel
Weight Celeron Pentium 4 Pentium 4
a. What entities are identified in the above scenario? Can you think of
additional entities? What interrelationships exist between the entities?
Customers, orders (purchases), and inventory (items) are mentioned in the
scenario. Closely associated to purchase activity are sales promotions. A
customer may respond to zero or more promotions; a promotion is associated with
one or more products; an inventory item (product) is contained on zero or more
orders; a customer may have zero or more outstanding orders.
b. For each entity, identify its set of associated attributes. Specify identifiers
for each entity.
Several suggested attributes for each entity are provided below. Mention that this
information will be normalized at some point during analysis, resulting in the
creation of new entities and the identification of new attributes.
c. Based on the case scenario and your answers to parts a and b, prepare an
entity relationship diagram. Be sure to specify the cardinalities for each
relationship.
A suggested answer is provided below. The following diagram was prepared
using Microsoft Visio. The suggested answer includes three additional entities
(SelectedPromotion, PromotedItem, and OrderDetails). Discuss why these
additional entities might be necessary with your students.
d. How does this conceptual model differ from the WebStore’s conceptual
model?
Both systems share data about customers, orders, and inventory. However, these
systems also require unique data (attributes) about each entity.
Customer Profile
PK,I1 CustomerID
Name
Primary Address
Alternative Address
Phone
Promotion Fax
BuyerName
PK PromotionNumber EmailAddress
SchoolAffiliation
PromotionDescription DOB
BeginningDate Gender
EndingDate FirstPurchaseDate
AnnualIncome
CustomerType
MaritalStatus
Occupation
Dependents
SelectedPromotion InitialContact
PK,FK1,I2,I1 CustomerID
PK,FK2,I3,I4 PromotionID
Inventory
Order PK SKU
PK OrderNumber ProductName
PK,FK1,I1 CustomerID Description
Material
OrderDate Color
ShipDate Price
LeadTime
OrderDetails
PK,FK2,I2,I3 OrderID
PK,FK2 CustomerID
PK,FK1,I1 SKU
Quantity
PromotedItem
PK,FK2,I2 PromotionNumber
PK,FK1,I1 SKU
a. Based on the information provided in the case scenario, what entities will
Hoosier Burger need to store information about?
As illustrated in Figure 7–10, Hoosier Burger currently stores information about its
sales, item sales, products, recipes, inventory items, invoice items, and invoices.
The new delivery system will require information about charges, delivery
customers, and order histories.
b. For the entities identified in part a, identify a set of attributes for each entity.
A suggested answer is provided below.
c. Specify an identifier for each entity. What rules did you apply when
selecting the identifier?
The identifiers are noted in the previous answer. Four rules were mentioned in
the chapter; these include: (1) choosing a candidate key that will not change its
value over the life of each instance of the entity type; (2) choosing a candidate key
such that, for each instance of the entity, the attribute is guaranteed to have valid
values and not be null; (3) avoiding the use of intelligent keys; and (4) considering
the substitution of single-attribute surrogate keys for larger composite keys.
d. Modify Figure 7–10 to reflect the addition of these new entities. Be sure to
specify the cardinalities for each relationship.
A suggested answer is provided below. Microsoft Visio was used to prepare the
E-R diagram.
Product
PK,I1 ProductID
ProductDescription
Sale
PK ReceiptNumber
SaleDate
Delivery?
Customer ItemSale
PK,I1 CustomerID PK,FK1,I1 ProductID
PK,FK2,I2 ReceiptNumber
BillingAddress
DeliveryAddress QuantitySold
PhoneNumber
FaxNumber
Amount QuantityUsed
ChargeDate
InventoryItem Invoice
PK Item_Number PK,I2 VendorID
PK,I1 InvoiceNo
Item_Description
Quantity_In_Stock InvoiceDate
Type_of_Item Paid?
Minimum_Order_Quantity
InvoiceItem
PK,FK1,I1 ItemNumber
PK,FK2,I2 VendorID
PK,FK2 InvoiceNo
Quantity
a. What entities are identified in the above scenario? Can you identify
additional entities?
The primary entities are course, staff, location, and student. Reinforce to students
that these entities will be normalized in a later chapter.
c. Select an identifier for each entity. What rules did you apply when selecting
the identifier?
The identifiers are noted in the previous answer. The rules discussed in the
chapter are: (1) choosing a candidate key that will not change its value over the
life of each instance of the entity type; (2) choosing a candidate key such that, for
each instance of the entity, the attribute is guaranteed to have valid values and
not be null; (3) avoiding the use of intelligent keys; (4) considering the substitution
of single-attribute surrogate keys for larger composite keys.
Course
PK,U1 CourseID
CourseName
CourseDescription
Staff PrerequisiteCourse
Student
PK,I1 StaffID Location PK,FK1,I2,I1 CourseID
PK,I1 SID
FirstName PK,I1 LocationID I3 PrereqCourseID
CorporateAffiliation LastName
FirstName EmploymentDate StreetAddress
LastName HomePhone City
Phone StreetAddress State
StreetAddress City Zip
City State BuildingNo
State Zip RoomNo
Zip OfficeExtension Comments
CurrentCourse QualifiedCourses
Pine Valley Furniture has six potential sources of software; these include
hardware manufacturers, packaged software producers, custom software
producers, enterprise-wide solutions, application service providers, and in-house
development. The most likely candidates are custom software producers and in-
house development. Because of the marketing group’s unique information needs,
the most likely alternative design strategy will probably involve in-house
development and be designed to work with the company's existing platform. If
you have the class time, encourage your students to research different, specific
design strategies that might be beneficial for Pine Valley. Then ask your students
to update the information provided in Tables 7–5 and 7–6.
As mentioned above, the most likely candidates are custom software producers
and in-house development. The marketing group’s unique information needs
require custom software development, requirements unlikely provided by
hardware manufacturers, packaged software developers, application service
providers, or enterprise-wide solutions. Additionally, the competitive nature of this
new system may necessitate in-house development. It appears from the weighted
approach (prepared in Part c), that Alternative C is the best choice.
c. Using the information provided in Table 7–6, calculate the scores for each
alternative.
A suggested answer is provided below.
d. Based on the information provided in Tables 7–5 and 7–6, which alternative
do you recommend?
Based on the weighted factor approach, Alternative C appears to be the best
choice. However, this alternative requires $350,000 to develop, incurs $100,000
in hardware costs, and requires 9 months to operation. Alternative B has a
slightly lower rating, but requires only $200,000 to develop, incurs $80,000 in
hardware costs, and requires 7 months to operation.
c. Modify Figure 7–19 to incorporate the criteria mandated by the new delivery
system. Which alternative should be chosen?
Based on the analysis provided in the following spreadsheet, it appears that
Alternative B should be chosen.
1. Review the data-flow diagrams you developed for questions in the Petrie’s
Electronics case at the end of Chapter 6 (or diagrams given to you by your
instructor). Study the data flows and data stored on these diagrams and
decided whether you agree with the team’s conclusion that the only 6 entity
types needed are listed in the case and in Figure 7-1. If you disagree, define
additional entity types, explain why they are necessary, and modify Figure 7-1
accordingly.
Answer will vary. Any additional entities should be properly modeled in an E-R
diagram similar to Figure 7-1.
2. Again, review the DFDs you developed for the Petrie’s Electronics case (or
those given to you by your instructor). Use these DFDs to identify the
attributes of each of the six entities listed in this case plus any additional
entities identified in your answer to Question 1. Write an unambiguous
definition for each attribute. Then, redraw Figure 7-1 by placing the six (and
additional) entities in this case on the diagram along with their associated
attributes.
4. Using your answer to Question 3, draw the relationships between entity types
needed by the system. Remember, a relationship is needed only if the system
wants data about associated entity instances. Give a meaningful name to each
relationship. Specify cardinalities for each relationship and explain how you
decided on each minimum and maximum cardinality on each end of each
relationship. State any assumptions you made if the Petrie’s Electronics cases
you have read so far and the answers to questions in these cases do not
provide the evidence to justify the cardinalities you choose. Redraw your final
E-R diagram in Microsoft Visio.
5. Now that you have developed in your answer to Question 4 a complete E-R
diagram for the Petrie’s Electronics database, what are the consequences of
not having an employee entity type in this diagram? Assuming only the
attributes you show on the E-R diagram, would any attribute be moved from
the entity it is currently associated with to an employee entity type if it were in
the diagram? Why or why not?
Answers will vary. Not having an employee entity in the diagram means that
employee activity while interacting with the system cannot be tracked.
7. What date-related attributes did you identify in each of the entity types in your
answer to Question 4? Why are each of these needed? Can you make some
general observations about why date attributes must be kept in a database
based on your analysis of this database?
Answers will vary. Date objects are needed anytime the date or time of the creation
or update of the object are needed (especially in recording transactions and the like).