Case Study – UniPharma
The UniPharma chain of pharmacies has offered to give you a free lifetime supply of medicine if you design its database. UniPharma is a small medium enterprise (SME) in terms of company structure and has four (4) pharmacies in the Auckland region. Being an SME, they would like to keep their costs down but also to have an efficient solution to manage their back office administration.
Here is some more information to help you out with the case study:
# Patients are identified by a Social Security Number (SSN), and their names, addresses, and ages must be recorded.
# Doctors are identified by an SSN. For each doctor, the name, speciality, and years of experience must be recorded.
# Each pharmaceutical company is identified by name and has a phone number.
# For each drug, the trade name and formula must be recorded. Each drug is sold by a given pharmaceutical company, and the trade name identifies a drug uniquely from among the products of that company. If a pharmaceutical company is deleted, you need not keep track of its products any longer.
# Each pharmacy has a name, address, and phone number.
# Every patient has a primary physician. Every doctor has at least one patient.
# Each pharmacy sells several drugs and has a price for each. A drug could be sold at several pharmacies, and the price could vary from one pharmacy to another.
# Doctors prescribe drugs for patients. A doctor could prescribe one or more drugs for several patients, and a patient could obtain prescriptions from several doctors. Each prescription has a date and a quantity associated with it. You can assume that, if a doctor prescribes the same drug for the same patient more than once, only the last such prescription needs to be stored.
# Pharmaceutical companies have long-term contracts with pharmacies. A pharmaceutical company can contract with several pharmacies, and a pharmacy can contract with several pharmaceutical companies. For each contract, you have to store a start date, an end date, and the text of the contract.
# Pharmacies appoint a supervisor for each contract. There must always be a supervisor for each contract, but the contract supervisor can change over the lifetime of the contract.
Task 1: (Total 35 Marks)
1. As the Database Administrator (DBA) write down the relational schema for at least 5 tables of the database in terms of the company’s structure (10 marks)
2. Draw an ER diagram that captures the preceding information. Identify any constraints not captured by the ER diagram. (10 Marks)
3. How would your design change if each drug must be sold at a fixed price by all pharmacies? (5 Marks)
4. As a part of the UniPharma change management plan how would you administer changes if the design requirements are as follows:
If a doctor prescribes the same drug for the same patient more than once, several such prescriptions may have to be stored. (5 Marks)
5. UniPharma is concerned about weekly data backup. Formulate and briefly describe a data backup plan. (5 marks)
Task 2: (Total 35 Marks)
Each of the 4 UniPharma pharmacies have a Pharmacy Manager, a data entry operator, an accountant, 2 pharmacists and database administrator. Keeping this company hierarchy in mind please answer the following questions-
1. Describe access privileges level of the five (5) employee types of UniPharma in the database? and who is the person deciding the access privilege levels? (10 Marks)
2. Being the DBA you have to provide different access levels to the employees; mention any three (3) access related. (10 Marks)
3. Recently 100 tables were updated in the database after new products came in. As a Database Administrator, what tasks will you perform to ensure consistency of the database? (10 Marks)
4. DBMS is a highly complex system with hundreds of transactions being executed every second. UniPharma is concerned if it fails or crashes in the middle of transactions, it is expected that the system would follow some sort of technique to recover lost data. Discuss categories of failures and methods to formulate a recovery. (5 Marks)