Database Management Assignment: Gourmet Pizzas Project - Requirement Analysis and Conceptual Design
1. Background
Gourmet Pizzas is a pizza outlet at Charlestown. After years of managing the records manually, Gourmet Pizzas has decided to computerise its records. You are tasked to design a database for the shop.
The proposed database system is developed in various modules, including requirements analysis, conceptual database design, logical database design, and physical database design. In this assignment 1, you are required to develop user requirements specification and the conceptual database model for Gourmet Pizzas's database based on the business requirements provided in this document.
Your lecturer will act as your client and you can query him for any further information and clarifications.
2. Main Features and Business Requirements
Order Processing
Gourmet Pizzas takes orders via phone as well as through walk-in customers. Gourmet Pizzas provides both delivery and pickup services. When a customer orders via the phone, the customer's phone number is entered to the system along with the id of the person taking the order. If the customer has previously ordered by phone, the name and address appear on the screen. The customer is then asked for his name and address and then the order is taken. If the customer has not ordered before or if the name and address given do not correspond with that in the computer, a new customer record is created and the order is taken. After the order has been taken, a verification process occurs whereby the assistant dials the number given and confirms the order with the customer. If it is not confirmed, the customer is recorded as a hoax and order is kept on hold (if and until the customer calls back in which case the verification process takes place before hoax is removed and order goes through). The time the call was answered as well as time the call was terminated is recorded for each phone order. For a walk-in customer, the customer's name is recorded to identify the order.
Each order contains date of order, one or more items, quantity of each item, price of each item, subtotal, discount amount (if any), discount code (if any), tax, total amount due, payment method, status, type (phone/walk-in) and description. If the payment is via card, a payment approval number is recorded. If the order is a delivery order, the driver who delivered the order is recorded.
There are different types of discount programs offered by Gourmet Pizzas. All discount programs are recorded in the database. A discount program has a discount code, start date of discount program, end date of discount program, requirements for discount, discount percentage (e.g. 5%) and a description.
Menu Items, Ingredients and Suppliers
Each item in the menu has an item code (unique), name, size and a current selling price. An item in the menu is made up of a number of ingredients. The ingredients and quantities used for the item are recorded in the database.
Each ingredient has a code (unique), name, type, description, stock level at current stocktake period, date last stocktake was taken, suggested current stock level, reorder level and a list of suppliers who supply the ingredients. A supplier can supply many ingredients. Each ingredient can be supplied by many suppliers.
A stocktake is taken each week, where the actual levels of ingredients in store are recorded. This is then compared with suggested levels (based on orders for the week). This report is used by the store manager to order ingredients for the following week. Information about ingredient orders needs to be maintained in the database.
Employees
Employees at the store can be divided into two types: those who work in the shop are paid hourly and those who carry out deliveries are paid by the number of deliveries. For each employee, there is an employee number, firstname, lastname, postal address, contact number, tax file number, bank details (bank code, bank name, account number), a payment rate, status, and a description. Drivers also have a driver's license number. Hours are not regular and a record is kept for each time an employee works - a shift (start date, start time, end date, end time). The orders a driver delivers during a shift is kept on the record.
Payment rates for shop workers and drivers are maintained in the database. Employee payments are made for each shift to the employee's bank account. Employee payment records needs to be maintained in the database.
3. Assignment (individual assignment)
The proposed database system is developed in various modules, including requirements analysis, conceptual database design, logical database design, and physical database design. In this assignment 1, you are required to complete the first two stages of the database design, i.e., to develop user requirements specification and the conceptual database model for the database based on the business requirements provided in this document. There are two parts to be completed in assignment 1 as described below.
Part 1: Requirements
In this assignment, you are required to develop a user requirements specification truly fulfilling the data requirements (identify what types of data needs to be stored in the database), transaction requirements (identify the important and frequent database operations - data manipulation and queries), and business rules for the Gourmet Pizzas's database mentioned above.
Assignment submission format for the Requirements part: The requirements document MUST have the following sections:
- Data Requirements - outlining the major data items
- Transaction requirements - outlining the data manipulation and queries
- Business Rules
You may interview your client (i.e. lecturer) for clarification and include your interview questions and responses
Part 2: EER Model with data dictionary
Draw an EER model for the requirements identified in Part 1. The EER Model must be shown in UML notation which is discussed in class and provided in our text.
The EER Model should be accompanied with a data dictionary which includes entity type table, relationship type table and attribute table.
Assignment submission format for the EER Model with Data Dictionary part: The requirements document MUST have the following sections:
- EER Model
- Documentation - Data dictionary details (description of entities, relationships and attributes).
Attachment:- Assignment File.rar