Question #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 PE Figure 7-1 by placing the six (and additional) entities in this case on the diagram along with their associated attributes.
Question # 3
Using your answer to Question 2, designate which attribute or attributes form the identifier for each entity type. Explain why you chose each identifier.
Question #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 at 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.
Petrie’sElectronics Case, Chapter 7, Questions 1–5 and 7
CASE: PETRIE’S ELECTRONICS
Structuring Systems Requirements:
Conceptual Data Modeling
Jim Watanabe, manager of the “No
Customer
Escapes” project, and assistant director of IT for Petrie’s Electronics, was sitting in the company cafeteria. He had just finished his house salad and was about to go back to his office when Stephanie Welch sat down at his table. Jim had met Stephanie once, back when he started work at Petrie’s. He remembered she worked for the database administrator.
“Hi, Jim, remember me?” she asked.
“Sure, Stephanie, how are you? How are things in database land?”
“Can’t complain. Sanjay asked me to talk to you about the database needs for your new customer loyalty system.” Stephanie’s phone binged. She pulled it out of her oversize bag and looked at it. She started to text as she continued to talk to Jim. “How far along are you on your database requirements?”
That’s kinda rude, Jim thought. Oh well. “We are still in the early stages. I can send you a very preliminary E-R diagram we have [PE Figure 7-1], along with a description of the major entities.”
“OK, that will help. I suspect that you won’t have too many new entities to add to what’s already in the system,” Stephanie responded, still looking at her phone and still texting. She briefly looked up at Jim and smiled slightly before going back to texting. “Just send the E-R to me, and I’ll let you know if I have any questions.” She stood up, still looking at her phone. “Gotta go,” she said, and she walked away.
OK, Jim thought, I need to remember to send Stephanie the preliminary E-R we have. I should probably send her the entity descriptions too (PE Table 7-1), just in case. Jim stood up, carried his tray over to the recycling area of the cafeteria, and went back to his office.
When Jim got back to his office, Sanjay was waiting for him.
“I’ve got more information on those alternatives we talked about earlier,” Sanjay said. “I had one of my employees gather some data on how the alternatives might satisfy our needs.” (See the descriptions of the alternatives in PE Table 5-2.) Sanjay handed Jim a short report. “The matrix shows the requirements and constraints for each alternative and makes it relatively easy to compare them.” (See PE Figure 7-2.)
PE FIGURE 7.1 Initial E-R for Petrie’s customer loyalty program.
PE TABLE 7-1: Entity Descriptions for the Preliminary E-R Diagram for Petrie’s Customer Loyalty System
Entity
Description
Coupon
A coupon is a special promotion created specifically for an individual customer. A coupon is for a set dollar amount, for example, $10. The customer may use it like cash or like a dollars-off promotion when purchasing products or services. Coupons can only be created for an individual customer based on the points in his or her customer loyalty account. For each dollar value of a coupon, a certain number of points must be redeemed. Coupons must be accounted for when created and when redeemed.
Customer
A customer is someone who buys products and/or services from Petrie’s Electronics. Customers include both online customers and those who shop in Petrie’s Brick-and-Mortar stores.
Product
An item made available for sale to a Petrie’s customer. For example, a product is a 40” Sony LCD HD television. Products can be purchased online or in Brick-and-Mortar stores.
Promotion
A promotion is a special incentive provided to a customer to entice the customer into buying a specific product or service. For example, a promotion intended to sell Blu-ray disks may involve 2-for-1 coupons. Promotions are targeted to all customers, or to subsets of customers, not just to individual customers.
Service
A job performed by one of Petrie’s associates for a customer. For example, upgrading the memory in a computer by installing new memory cards is a service that Petrie’s provides for a fee. Services may only be ordered and performed in Brick-and-Mortar stores, not online.
Transaction
A record that a particular product or service was sold to a specified customer on a particular date. A transaction may involve more than one product or service, and it may involve more than one of a particular kind of product or service. For example, one transaction may involve blank DVDs and prerecorded DVDs, and the prerecorded DVDs may all be of the same movie. For members of the loyalty program, each transaction is worth a number of points, depending on the dollar value of the transaction.
“The matrix favors the XRA CRM system,” Jim said, after looking over the report. “It looks like their proposal meets our requirements the best, but the Nova group’s proposal does the best job with the constraints.”
“Yes, but just barely,” Sanjay said. “There is only a five-point difference between XRA and Nova, so they are pretty comparable when it comes to constraints. But I think the XRA system has a pretty clear advantage in meeting our requirements.”
“XRA seems to be pretty highly rated in your matrix in terms of all of the requirements. You have them ranked better than the other two proposals for implementation, scalability, and vendor support,” Jim said. “The ‘5’ you gave them for proven performance is one of the few ‘5s’ you have in your whole matrix.”
“That’s because they are one of the best companies in the industry to work with,” Sanjay responded, “Their reputation is stellar.”
“This looks really promising,” Jim said. “Let’s see if reality matches what we have here. It’s time to put together the formal request for proposal. I’ ll get that work started today. I hope
PE FIGURE 7-2 Evaluation matrix for customer loyalty proposals.
PE TABLE 5-2: Alternatives for Petrie’s Customer Loyalty Project
Alternative A
Data warehousing-centered system designed and licensed by Standard Basic Systems, Inc. (SBSI). The data warehousing tools at the heart of the system were designed and developed by SBSI, and work with standard relational DBMSs and relational/OO hybrid DBMSs. The SBSI tools and approach have been used for many years and are well known in the industry, but SBSI- certified staff are essential for implementation, operation, and maintenance. The license is relatively expensive. The customer loyalty application using the SBSI data warehousing tools is an established application, used by many retail businesses in other industries.
Alternative B
Customer relationship management (CRM)-centered system designed and licensed by XRA Corporation. XRA is a pioneer in CRM systems, so its CRM is widely recognized as an industry leader. The system includes tools that support customer loyalty programs. The CRM system itself is large and complex, but pricing in this proposal is based only on modules used for the customer loyalty application.
Alternative C
Proprietary system designed and licensed by Nova Innovation Group, Inc. The system is relatively new and leading edge, so it has only been implemented in a few sites. The vendor is truly innovative but small and inexperienced. The customer interface, designed for a standard Web browser, is stunning in its design and is extremely easy for customers to use to check on their loyalty program status. The software runs remotely, in the “cloud,” and data related to the customer loyalty program would be stored in the cloud too.
Case Questions
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 decide whether you agree with the team’s conclusion that the only six entity types needed are listed in the case and in PE Figure 7-1. If you disagree, define additional entity types, explain why they are necessary, and modify PE Figure 7-1 accordingly.
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 PE Figure 7-1 by placing the six (and additional) entities in this case on the diagram along with their associated attributes.
3. Using your answer to Question 2, designate which attribute or attributes form the identifier for each entity type. Explain why you chose each identifier.
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 at 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?
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 observations about why date attributes must be kept in a database, based on your analysis of this database?
Chapter 7 Problems and Exercises
Problem #1
Assume that at Pine Valley Furniture each product (described by Product No., Description, and Cost) consists of at least three components (described by Component No., Description, and Unit of Measure), and components are used to make one or many products (i.e., must be used in at least one product). In addition, assume that components are used to make other components and that raw materials are also considered to be components. In both cases of components being used to make products and components being used to make other components, we need to keep track of how many components go into making something else. Draw an E-R diagram for this situation and place minimum and maximum cardinalities on the diagram.
Problem# 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 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 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?
Problem#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?