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: Burger 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
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 burger restaurant management system. This system
effectively manages orders, payment 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
Burger 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 burger 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, address and order items. Additionally, the system records the date and
time of the order. Staff members, including chefs, employee and cashiers, are
essential for running the burger shop. Each staff member is identified by a
employee_ID and name. The system stores additional details such as their roles,
contact numbers, and work schedules. Customers can customize their orders by
selecting burger toppings, crust types, and quantity. 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. 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 burger ordering system. Below is a summary of each class:
Burger: This class represents a burger 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 Burger.
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 buger and Customer classes but has no display methods.
Page | 5
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.
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 Burger classes, while the Employee class has
references to the Order and Payment classes. The Inventory class refers to various
inventory items and burgers.
Page | 6
Use Case Diagram:
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.
Page | 7
Employee - Employee 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, employee deliver orders to
customers. The employee delivers the prepared order to the customer, completing
the transaction.
Page | 8
Activity Diagram:
In the activity diagram there are several entities:
Customer: It represents the customer with name, address and phone number.
Customers can place orders and pay.
Order: It belongs to the customer and includes the order number, date, and list of
burgers. A customer can place an order.
Page | 9
Burger: It has varieties and a list of toppings. A customer can customize a burger
and an order has multiple burgers.
Employees: It has employeeID and manages order processing. An employee can
take orders and process payments.
Payment: It represents the payment made by the customer. It includes the amount
and payment method. A customer can make a payment.
User Interface:
Page | 10
Page | 11
Scenario Description
In a burger management system, a burger can distribute burgers to many
customers. Some customers can order burger. Burgers are identified by Burger_id,
name, price, quantity. Customers are identified by customer_id, customer_name,
email, phone_number, and address. The burger shop presented its menu card.
Menu cards can contain different types of foods. The food items contain different
types of burgerss and cold drinks. Burger can be identified by ID, name, size, price
and spiciness. The employee deliver burger to the customers. 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 | 12
ER Diagram
Page | 13
Normalization:
UNF can distribute to (burger_id, name, location, email, pizzaShop_phnNumber,
customer_id, customer_name, customer_ email, customer_phnNum,
customer_address)
1NF: burgerShop_phnNumber is a multivalued attribute.
2NF:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3NF:
There is no transitive dependency.
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
Table Creation:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
3. burgerShop_id, customer_id.
UNF:
introduced (burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber, burger_id, burger_name, burger_size, burger_price,
burger_spicyLevel).
1NF: burgerShop_phnNumber is a multivalued attribute.
Page | 14
2NF:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. burger_id, burger_name, burger_size, burger_price, burger_spicyLevel.
3NF:
1. burgerShop_id, burgerShop_name, location, email, burgerShop_phnNumber
2. burger_size, burger_price
3. burger_id, burger_name, burger_spicyLeve.
Table Creation:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber, food_id.
2. burger_size, burger_price, food_id.
3. burger_id, burger_name.
4. burgerShop_id, burger_id.
UNF:
deliver item (burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber, deliveryman_id, deliveryman _name, deliveryman
_phnNum, deliveryman _email).
1 NF: burgerShop_phnNumber is a multivalued attribute.
2NF:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
3NF: There is no transitive dependency.
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
Page | 15
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
Table Creation:
1. burgerShop_id, burgerShop_name, location, email,
burgerShop_phnNumber.
2. deliveryman_id, deliveryman _name, deliveryman _phnNum, deliveryman
_email.
3. burgerShop_id, deliveryman_id.
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.
Page | 16
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.
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:
Page | 17
1. customer_id, customer_name, customer_ email, customer_phnNum,
customer_address.
2. transaction_id, paymentMethod.
3. customer_id, transaction_id.
Relational Algebra:
To design a relational algebra expression for a Burger shop management system,
let's assume we have the following entities in our database:
1. Customers: Information about customers who order burgers.
- Attributes: customer_id, name, phone_number, address
2. Burgers: Information about the burgers offered by the shop.
- Attributes: burger_id, name, description, price
3. Orders: Information about orders placed by customers.
- Attributes: order_id, customer_id, burger_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 burgers that are common in both shops.
\(Burgers \cap Burgers\_from\_another\_shop\)
Page | 18
These are some basic relational algebra operations that you can apply to the entities
in your Burger shop management system. You can compose more complex queries
by combining these basic operations.
Conclusion:
This project successfully developed a burger 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 burger 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 burger
can gain a significant competitive advantage and improve its overall business
performance.
Page | 19