0% found this document useful (0 votes)
83 views22 pages

Pizza Shop Management

Uploaded by

adonzkaif123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
83 views22 pages

Pizza Shop Management

Uploaded by

adonzkaif123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

American International University-Bangladesh

(AIUB)
Faculty of Science and Technology (FST)
Department of Computer Science (CS)

Advance Database Management System Group Project, Spring 2024

Project Title: Pizza Shop Management System

Section: A

Submitted by:
Name Id Contribution Topic name
percentage
KAIFE BIN 19-40953-2 20% Class Diagram, Use
QUAYUM ADON Case Diagram,
Activity Diagram
RAZWAN 20-43304-1 20% User Interface,
HOSSAIN RIFAT Scenario Description
SHAH AZIZUR 19-41083-2 20% Normalization, Er
RAHMAN Diagram
TAHMEED ALI 21-44428-1 20% Introduction, Project
PATWARY Proposal
DA SAMIA ISLAM 20-43150-1 20% Conclusion
SHOHANI

Page | 1
Contents
1. Introduction--------------------------------------------------------------------------03

2. Project Proposal---------------------------------------------------------------------04

3. Class Diagram-----------------------------------------------------------------------05

4. Use Case Diagram------------------------------------------------------------------6-7

5. Activity Diagram-------------------------------------------------------------------8-9

6. User Interface--------------------------------------------------------------------10-14

7. Scenario Description----------------------------------------------------------------15

8. Er Diagram---------------------------------------------------------------------------16

9. Normalization--------------------------------------------------------------------17-20

10.Relational Algebra-------------------------------------------------------------------21

11.Conclusion---------------------------------------------------------------------------22

Page | 2
Introduction:

Our proposal involves a basic pizza restaurant management system. This system
effectively manages orders, inventory, and client data by integrating a
comprehensive database. Its application is intended to maximize resource use,
reduce overhead expenses, and increase overall effectiveness. Its intuitive
interfaces and broad functionality allow employees to focus on producing high-
quality products and services while maintaining smooth operations. Finally, the
Pizza Shop Management System is a modern system designed to satisfy the
changing needs of the food service business. The project features the scenario
modeling, the entity relationship diagram, normalization, schema diagram for
crating the management system. It also includes some inserted data and data
manipulation works with a part where we have applied some relational algebra.

Page | 3
Project Proposal:

In a pizza shop management system, various components work together to ensure


smooth operations and customer satisfaction. The system manages customers'
orders, which are identified by an order ID, the customer's name, contact
information, delivery address, and order items. Additionally, the system records the
date and time of the order. Staff members, including chefs, delivery personnel, and
cashiers, are essential for running the pizza shop. Each staff member is identified
by a staff ID and name. The system stores additional details such as their roles,
contact numbers, and work schedules. Customers can customize their orders by
selecting pizza toppings, crust types, and sizes. The system records these
preferences and ensures accurate preparation of each order. Delivery system is
managed efficiently within the system. Delivery personnel are assigned orders
based on location and availability. The system tracks delivery statuses, including
order preparation, dispatch, and delivery completion. Customer feedback and
reviews are also managed within the system. Customers can provide ratings and
comments on their orders and overall experience, helping the pizza shop maintain
quality standards and improve customer satisfaction.

Page | 4
Class Diagram:

The class diagram above depicts the structure and relationships of several classes
involved in a pizza ordering system. Below is a summary of each class:
Pizza: This class represents a pizza product with a chain class name and a double
class price. It provides methods for adding or removing toppings and calculating
the cost of a pizza.
Customer: This class represents a customer with a string name and phone number.
It has methods for ordering and payment.
Order: This class represents an order placed by a customer. It can contain instances
of the Pizza and Customer classes but has no display methods.
Inventory: This class manages the inventory of the pizzeria. It provides methods
for adding, removing, and updating inventory items, as well as adding and
removing pizzas. It also contains instance variables for itemName, quantity,
orderNumber, dateTime and status.
Employee: This class represents an employee with a string name and an integer
employee ID. It has methods for receiving orders and processing payments.
Payment: This class represents a payment made by a customer with an amount and
date/time of type double. It has a method for processing payments.

Page | 5
The relationships between these classes are primarily association relationships,
where one class refers to an instance of another class. For example, the Order class
has references to the Customer and Pizza classes, while the Employee class has
references to the Order and Payment classes. The Inventory class refers to various
inventory items and pizzas.
Use Case Diagram:

Page | 6
This use case diagram depicts a simple ordering process in a restaurant or similar
environment, with two main players: a customer and an employee, who may also
be a manager in a number of cases.
Customer: The customer is the primary agent who makes a request and receives a
service. Their role is to place orders.
Staff - Staff are responsible for receiving and preparing orders, initiating deliveries,
and handing over orders to customers. In some cases, employees may also be
managers who oversee the process.
Use case description:
The customer begins the ordering process by requesting a food item or service.
After that the customer places an order stating his preferences and requirements.
And then the employee receives the order and begins the preparation process. Their
staff prepare orders to ensure that customer requirements are met. The manager (or
employee) supervises the preparation process to ensure that it is carried out
efficiently and accurately. The employee starts the delivery process to ensure the
order reaches the customer on time. After that, staff deliver orders to customers.
The employee delivers the prepared order to the customer, completing the
transaction.

Page | 7
Activity Diagram:

Page | 8
In the activity diagram there are several entities:
Location: Although not clearly defined, it appears to be the global context where
other entities exist.
Customer: Represents the customer with name, address and phone number.
Customers can place orders and pay.
Order: belongs to the customer and includes the order number, date, and list of
pizzas. A customer can place an order.
Pizza: Has varieties and a list of toppings. A customer can customize a pizza and
an order has multiple pizzas.
Employees: Has employeeID and manages order processing. An employee can
take orders and process payments.
Payment: Represents the payment made by the customer. It includes the amount
and payment method. A customer can make a payment.
Inventory: Manage pizza inventory and have inventory levels for each type of
pizza. Inventory can check inventory and update inventory levels.

Page | 9
User Interface:

Page | 10
Page | 11
Page | 12
Page | 13
Page | 14
Scenario Description

In a pizza management system, a pizzeria can distribute pizzas to many customers.


Some customers can order pizza at this pizzeria. Pizzerias are identified by
pizzaShop_id, pizzaShop_name, location, email, and phone_number. Customers
are identified by customer_id, customer_name, email, phone_number, and address.
The pizzeria presented its menu card. Menu cards can contain different types of
foods. The food items contain different types of pizzas and cold drinks. Pizza can
be identified by ID, name, size, price and spiciness. Cold drinks can be identified
by ID, name, size and price. The pizzeria delivers through delivery people. The
delivery person can identify himself by his delivery id, name, phone number,
email. The delivery person delivers pizza to the customer. Customers can pay their
bills through online payments like Bkash, Nagad or banks, as well as pay cash on
delivery.

Page | 15
ER Diagram

Page | 16
Normalization:
UNF can distribute to (pizzaShop_id, pizzaShop_name, location, email,
pizzaShop_phnNumber, customer_id, customer_name, customer_ email,
customer_phnNum, customer_address)
1NF: pizzaShop_phnNumber is a multivalued attribute.
2NF:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3NF:
There is no transitive dependency.
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
Table Creation:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3. pizzaShop_id, customer_id.
UNF:
introduced (pizzaShop_id, pizzaShop_name, location, email,
pizzaShop_phnNumber, pizza_id, pizza_name, pizza_size, pizza_price,
pizza_spicyLevel).

1NF: pizzaShop_phnNumber is a multivalued attribute.


2NF:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. pizza_id, pizza_name, pizza_size, pizza_price, pizza_spicyLevel.

Page | 17
3NF:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber
2. pizza_size, pizza_price
3. pizza_id, pizza_name, pizza_spicyLeve.
Table Creation:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber,
food_id.
2. pizza_size, pizza_price, food_id.
3. pizza_id, pizza_name.
4. pizzaShop_id, pizza_id.
UNF:
deliver item (pizzaShop_id, pizzaShop_name, location, email,
pizzaShop_phnNumber, deliveryman_id, deliveryman _name, deliveryman
_phnNum, deliveryman _email).
1 NF: pizzaShop_phnNumber is a multivalued attribute.
2NF:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
3NF: There is no transitive dependency.
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
Table Creation:
1. pizzaShop_id, pizzaShop_name, location, email, pizzaShop_phnNumber.
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
3. pizzaShop_id, deliveryman_id.

Page | 18
UNF:
is delivered (deliveryman_id, deliveryman _name, deliveryman _phnNum,
deliveryman _email, customer_id, customer_name, customer_ email,
customer_phnNum, customer_address).
1NF: There is no multivalued attribute.
(deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email, customer_id, customer_name, customer_ email, customer_phnNum,
customer_address).
2NF:
1. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3NF:
There is no transitive dependency.
1. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
Table Creation:
1. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3. deliveryman_id, customer_id.

Page | 19
UNF:
can pay the bill (customer_id, customer_name, customer_ email,
customer_phnNum, customer_address, transaction_id, paymentMethod).

1NF: There is no multivalued attribute.


(customer_id, customer_name, customer_ email, customer_phnNum,
customer_address, transaction_id, paymentMethod) .
2NF:
1. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
2. transaction_id, paymentMethod.
3NF: There is no transitive dependency.
1. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
2. transaction_id, paymentMethod.
Table Creation:
1. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
2. transaction_id, paymentMethod.
3. customer_id, transaction_id.

Page | 20
Relational Algebra:
To design a relational algebra expression for a Pizza shop management system,
let's assume we have the following entities in our database:
1. Customers: Information about customers who order pizzas.
- Attributes: customer_id, name, phone_number, address
2. Pizzas: Information about the pizzas offered by the shop.
- Attributes: pizza_id, name, description, price
3. Orders: Information about orders placed by customers.
- Attributes: order_id, customer_id, pizza_id, quantity, order_date.

Here's how we can represent typical operations using relational algebra:


4. Selection: Selecting specific tuples that satisfy certain conditions.
- Example: Select all pizzas with a price less than 100tk.
\(\sigma_{price < 10}(Pizzas)\)
5. Projection: Selecting specific attributes from a relation.
- Example: Get only the names and phone numbers of customers.
\(\pi_{name, phone\_number}(Customers)\)
6. Intersection: Selecting tuples that appear in both relations.
- Example: Get the pizzas that are common in both shops.
\(Pizzas \cap Pizzas\_from\_another\_shop\)
These are some basic relational algebra operations that you can apply to the entities
in your Pizza shop management system. You can compose more complex queries
by combining these basic operations.

Page | 21
Conclusion:
This project successfully developed a pizzeria management system using a
relational database. This system provides several benefits to pizzerias, including
Improved efficiency which is streamlined order processing, inventory
management, and organization of customer data leading to service faster and
reduces the workload for pizzeria staff. Improve customer experience which can
features such as access to order history and potential online orders can improve
customer satisfaction and loyalty. Data-driven decision making can Sales reports
and customer preference analysis can inform menu adjustments, marketing
strategies, and resource allocation. The project demonstrates the power of
relational databases in managing business operations. However, there is always
room for further development like Scalability which improve the system can be
extended to handle additional features such as online ordering, inventory
management with additional features automated replenishment and customer
loyalty programs. By Security, implementing user access controls and data
encryption can ensure the security of sensitive customer information. And lastly
reporting and analytics which will integrating advanced reporting tools can provide
deeper insights into sales trends, customer behavior, and resource usage. By
continuing to develop and perfect the system, the pizzeria can gain a significant
competitive advantage and improve its overall business performance.

Page | 22

You might also like