Professional Documents
Culture Documents
A Project Report
Submitted By
B BALA CHARAN
210303124214
the Degree of
BACHELOR OF TECHNOLOGY
Ph.D., M.E., B.E., MISTE, MIETE Associate Professor — Department of CSE Development
Date of Submission :
CSE, PIET,
Project Coordinator:-
ii
Acknowledgements
-Auliq-Ice
Weextendourheartfelt gratitude to all those who have contributed to the successful completion
of our project report on ”Restaurant Management System” This endeavor would not have been
possible without the support, guidance, and encouragement of various individuals and institutions.
First and foremost, we would like to express our sincere appreciation to our project guide [vinob
chander ], whose invaluable insights, continuous support, and constructive feedback have been
instrumental throughout the course of this project. Their expertise and mentorship have significantly
enriched our understanding and helped us navigate through the complexities of our research. Weare
deeply indebted to our faculty members at [PIET], whose teachings and guidance have provided us
with a solid foundation in the field of machine learning and image processing. Their encouragement
and enthusiasm for our project have inspired us to strive for excellence. We are grateful to the staff
and authorities at [PIET] for providing us with the necessary resources, facilities, and infrastructure
required for conducting our research. Their unwavering support has been invaluable in facilitating
the smooth progress of our project. Wewould like to acknowledge the contributions of our fellow
classmates and colleagues who have provided us with valuable insights, suggestions, and assistance
at various stages of our project. Their collaboration and camaraderie have been deeply appreciated.
Last but not least, we would like to express our gratitude to our families and friends for their
unwavering support, patience, and understanding throughout this endeavor. Their encouragement
and belief in our abilities have been a constant source of motivation. In conclusion, we would like
to thank everyone who has contributed, directly or indirectly, to the successful completion of our
project report. Your support and encouragement have been indispensable, and we are truly grateful
for the opportunity to undertake this research.
Acknowledgements iii
Abstract iv
1 Introduction 1
2 Literature Survey 3
2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
v
TABLE OF CONTENTS
3.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.11.1 Adaptability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.2 Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.3 Flexibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.4 Maintainability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.5 Portability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.6 Reliability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.11.7 Reusability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
vi
TABLE OF CONTENTS
4 System Design 10
4.4.1 backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.2 frontend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.3 database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.4 infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5 Methodology 14
vii
TABLE OF CONTENTS
5.5.1 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6 Implementation 17
6.5 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
viii
TABLE OF CONTENTS
7 Conclusion 19
8 Future Work 20
ix
Chapter 1
Introduction
1
CHAPTER 1. INTRODUCTION
2
Chapter 2
Literature Survey
2.1
Article Main focus Corresponding menu issue Pavesic (1983) Menu engineering model including
weighted contribution food cost percentage margin and Menu analyzing and Hayes and Huffman
(1985)Menu item profitability analysis and goal value analysis Menu analyzing
2.2
Bayou and Bennett (1992)Menu item profitability analysis based on analysis of market segments
(four levels of profitability analysis)and Menu analyzing Kelly et al. (1994)The relationship between
price elasticity and pricing Menu pricing
2.3
Shoemaker (1994)The effect of a decoy item on the price value perception of a menu Menu pricing
Bowen and Morris (1995) The relationship between menu item placement on the menu card and
sales of menu items and Menu designing Lebrutoetal (1995) Menu engineering model including
labor costs as a menu analysis method Menu analyzing
2.4
Morrison (1997) Development of menu engineering models and a study on upscale restaurants
menu planning practices Menu analyzing Jones and Mifli (2001) Menu planning, pricing, designing,
analyzing and improving practices of seven hospitality firms Menu planning
3
Chapter 3
3.1 introduction
The Management System for a Restaurant is a web-based application. The main aim is to provide
better communication between customers and restaurants. By using this application, the user can
order from any location. This application will reduce all the manual processes. So, users can view
the restaurant menu from nearby locations, and can place an order and view the status of the order
like cooking/packed/delivered. There are three main actors in this application: Admin, Restaurant
manager and User. The admin will create all menus with their corresponding price lists. Also, the
admin will be able to view statistical reports for foods. Restaurant managers will receive orders
from customers. Users/Customers can place orders using this application and they will be able to
view available food items.
4
CHAPTER 3. ANALYSIS / SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
3.5 References
3.5.1
A. Patil, R. Kalani, B. Patil, S. Shinde, Prof S.M.Shedole, IJTRA, Smart restaurant system using
an-droid, 5, Issue 3 pp. 78-80 (2017)
3.5.2
M.P. Chorage, S.S. Bhande, S.S. Lale, M.A. Powar,K.V. Mane, IJARIIE, Digital restaurant system,
7, Is-sue 1 pg. 756-760 (2021)
3.5.3
S. Dimbar, A. Kumbhakarna, P. Shend, IJEET, Survey of digital food ordering system based on
android system for restaurant, 5, Issue 1 (2017)
5
CHAPTER 3. ANALYSIS / SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
3.5.4
N.M.Z. Hashim, N.A. Ali, A.S. Jaafar, N.R. Mo-hamad, L. Salahuddin , N.A. Ishak, IJCTT, Smart
ordering system via bluetooth, 4, Issue 7 pg. 2253-2256 (2013)
The customer interface will contain three screens. All three screen will have a consistent layout.
Place Order
In this screen, system shows a list of cards (UI Elements) of dishes. Each dish will have an image,
its price per serving.
After confirming the order, the user will be shown a timer screen. In this screen customer will be
shown “Edit Order” and “Cancel Order” buttons and a timer which shows the completion time of
the order. There will also be a button to request for bill.
Feedback
In feedback screen, at the top right corner a button for “Request Bill” will be shown. Beneath this
button we will display a form which will have different multiple-choice questions and a submit
feedback button.
In head chef interface, system will show all the current orders in detail i.e. all the dishes of a
particular order. In each order, there is a button which will be used to mark that dish cooked.
Moreover, when customer wants to remove a dish from his order, system will show head chef a
notification to approve the removal of the dish.
Hall manager will have a screen where he will get notification whenever an order is completed.
System will notify the hall manager about the order number and table number. Hall Manager also
has a screen where all orders are listed, and status button to mark the order as paid. Moreover, he
also has an interface screen to see and the status of tables in the restaurant as free/available.
6
CHAPTER 3. ANALYSIS / SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
As Admin is authorized to perform CRUD operations on Staff Members, Menu Items and Inventory
Items. He’ll be having three different screens for Staff Members, Menu Items, and Inventory.
Allow users (staff or customers) to add and remove items from orders. Enable table reservation
management, allowing users to reserve or release tables. Facilitate menu item management,
including adding, modifying, or removing menu items. Generate bills for orders.
Generate kitchen order tickets for the kitchen staff to prepare food.
The system must be interactive, and the delays involved must be less. So, in every action response
of the system, there are no immediate delays. In case of scrolling through the menu there should be
a delay of no more than 2 second before the next page of menu items is displayed otherwise our
people’s dining experience is affected. The order should be placed in pending orders and be visible
to the head chef/chefs in less than 1 second to start the preparation . Cancel Order/ updates must be
7
CHAPTER 3. ANALYSIS / SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
made with little delay to avoid delivery delay. Also, when connecting to the Firebase server the
delay to make a successful connection should be less for effective real time communication.
The software is completely environmentally friendly and does not cause any safety violations. The
menu will have a flexible font that can be zoomed so as to not over constrain the eyes.
There is a need for a proper and encrypted login authentication for head chef and admin as
employee sensitive information as well as inventory should be protected from hacking. Information
transmission should be securely transmitted to Firebase without any changes in information to avoid
disturbances in orders and billing
3.11.1 Adaptability
There can be a change in the menu and information stored in the database about employees and
inventory.
3.11.2 Availability
The system is up and running for most of the time and server is not down for more than a few
minutes to avoid inconvenience of the customers.
3.11.3 Flexibility
If need arises in the future, software can be modified to change the requirements
3.11.4 Maintainability
3.11.5 Portability
Software can be easily installed on devices and would run smoothly according to the requirement.
3.11.6 Reliability
No matter how many orders are placed, system must give the correct results.
3.11.7 Reusability
Current version can be used in the future versions with more functionality added.
8
CHAPTER 3. ANALYSIS / SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
Figure 3.1
9
Chapter 4
System Design
web interface
Customer Interface: Allows customers to browse menus, place orders, and make reservations.
Admin Interface: Provides managers with tools to manage menus, inventory, staff, and other aspects
of restaurant operations.
mobile applications
Customer App: Offers similar functionality as the web interface, allowing customers to interact
with the system from their mobile devices. Staff App: Provides waitstaff and kitchen staff with
features to manage orders, tables, and other tasks efficiently.
10
CHAPTER 4. SYSTEM DESIGN
application layer
Order Management Module: Handles order processing, status tracking, and communication between
different system components. Menu Management Module: Manages menus, item availability,
pricing, and customization. Table Management Module: Allocates and tracks table assignments,
manages reservations, and optimizes seating arrangements. Staff Management Module: Handles
employee scheduling, performance tracking, and training management. Billing and Payment
Module: Generates bills, processes payments, and integrates with payment gateways. Inventory
Management Module: Tracks inventory levels, manages stock, and automates reordering processes.
Reporting and Analytics Module: Generates reports, analyzes data, and provides insights to support
decision-making.
database layer
Relational Database: Stores structured data such as menus, orders, inventory, staff details, and
customer information. NoSQL Database: Stores unstructured data such as logs, analytics data, and
other system-related information.
integration layer
API Gateway: Acts as a central entry point for all incoming requests, routing them to the appropriate
services. Third-Party Integrations: Integrates with external systems such as payment gateways, food
delivery platforms, and accounting software through APIs.
Order Placement: Allow customers to place orders through various channels such as mobile apps,
websites, or in-person. Order Processing: Manage incoming orders, assign them to tables or delivery
drivers, and track their status. Order Modification: Enable customers to modify or cancel orders
before they are processed. Order Tracking: Provide real-time updates on the status of orders from
preparation to delivery.
Menu Creation: Allow managers to create and update menus with items, descriptions, prices, and
images. Item Availability: Automatically update item availability based on inventory levels or time
11
CHAPTER 4. SYSTEM DESIGN
of day. Specials and Promotions: Enable managers to add special dishes or promotions to the menu
for a limited time.
Table Reservations: Allow customers to book tables in advance, specifying the date, time, and
number of guests. Seating Management: Manage table assignments, optimize seating arrangements,
and track table occupancy. Table Status: Provide real-time updates on table availability, status (e.g.,
occupied, reserved), and turnover.
Employee Scheduling: Create and manage staff schedules, considering factors such as availability,
skillset, and labor laws. Performance Tracking: Monitor staff performance metrics such as sales,
customer feedback, and attendance. Training Management: Schedule and track employee training
sessions to ensure continuous skill development.
Bill Generation: Automatically generate bills based on orders, including itemized details and
applicable taxes. Payment Processing: Accept various payment methods such as cash, credit/debit
cards, mobile payments, and digital wallets. Split Payments: Allow splitting bills among multiple
customers and processing payments accordingly.
Stock Management: Track inventory levels of ingredients, beverages, and supplies in real-time.
Automatic Reordering: Set up automatic reorder points for items running low and generate purchase
orders to suppliers. Supplier Management: Manage relationships with suppliers, track deliveries,
and handle invoices and payments.
Sales Reports: Generate reports on daily, weekly, and monthly sales performance, including revenue,
average order value, and popular items. Inventory Reports: Monitor inventory levels, usage, and
costs, and identify trends to optimize stocking and reduce waste. Employee Reports: Analyze staff
performance metrics such as sales targets, customer satisfaction ratings, and productivity. Customer
Insights: Analyze customer data to understand preferences, behavior patterns, and feedback, and
tailor marketing strategies accordingly.
12
CHAPTER 4. SYSTEM DESIGN
Customer Profiles: Maintain customer profiles with contact information, order history, preferences,
and loyalty program status. Feedback Management: Collect and analyze customer feedback through
surveys, reviews, or ratings to improve service quality. Marketing Campaigns: Send targeted
promotions, discounts, or event invitations to customers based on their preferences and behavior.
4.4.1 backend
Programming Languages: Python, Node.js, Java Frameworks: Django, Flask, Express.js Messaging
Queue: RabbitMQ, Kafka (for asynchronous communication) RESTful API Design: Swagger,
OpenAPI
4.4.2 frontend
4.4.3 database
4.4.4 infrastructure
Cloud Services: AWS, Google Cloud Platform, Microsoft Azure (for scalability, reliability, and
flexibility) Containerization: Docker (for containerization and deployment) Orchestration:
Kubernetes (for managing containerized applications)
13
Chapter 5
Methodology
Meet with restaurant owners, managers, staff, and potential users to understand their needs, pain
points, and desired features. Document requirements related to order management, menu
customization, table reservations, staff scheduling, inventory tracking, billing, reporting, and
customer management.
Identify and document specific use cases and user stories to capture the system’s functional
requirements from the perspective of different user roles (e.g., customers, waitstaff, managers).
Prioritize requirements based on their criticality, business value, and feasibility to guide the
development process.
Define the high-level system architecture, including components, modules, and their interactions.
Decide on technologies, frameworks, and platforms to be used for backend, frontend, database, and
hosting.
14
CHAPTER 5. METHODOLOGY
Design the database schema to store data related to menus, orders, inventory, staff, customers, and
other relevant entities. Consider normalization, indexing, and optimization techniques to ensure
efficient data storage and retrieval.
Create wireframes and mockups for the user interface to visualize the layout, navigation, and
interactions. Design intuitive and user-friendly interfaces for different user roles, considering
usability principles and best practices.
Adopt an agile methodology (e.g., Scrum, Kanban) to iteratively develop and deliver features in
short cycles or sprints. Conduct regular sprint planning, daily stand-up meetings, sprint reviews,
and retrospectives to ensure continuous improvement and collaboration.
Develop backend functionalities such as order management, menu customization, table reservations,
staff scheduling, and inventory tracking using selected technologies and frameworks. Implement
restful APIs for communication between frontend and backend systems, following best practices
for API design.
Implement user interfaces for customers, waitstaff, and managers using HTML, CSS, JavaScript,
and selected frontend frameworks (e.g., React.js, Angular, Vue.js). Ensure responsive design and
cross-browser compatibility to deliver consistent user experiences across different devices and
browsers.
Create and configure the database using selected database management systems (e.g., MySQL,
PostgreSQL, MongoDB) based on the designed schema.Implement data access and manipulation
logic, including CRUD operations and database transactions.
15
CHAPTER 5. METHODOLOGY
Write and execute unit tests to verify the functionality of individual components, modules, and
APIs. Use testing frameworks and libraries (e.g., Jest, pytest) to automate test cases and ensure
code quality and reliability.
Conduct integration testing to verify the interactions and integration points between different
system components. Test end-to-end scenarios, including order processing, menu updates, table
reservations, and reporting functionalities.
Involve stakeholders and end-users to perform UAT and validate the system’s functionality, usability,
and alignment with business requirements. Address feedback and issues identified during UAT to
ensure the system meets user expectations.
5.5.1 Deployment
Deploy the restaurant management system to production or staging environments using appropriate
deployment strategies (e.g., continuous integration/continuous deployment). Configure hosting
infrastructure, domain settings, and security measures (e.g., SSL/TLS certificates) to ensure a secure
and reliable deployment.
Provide training sessions and documentation for restaurant staff to familiarize them with the system’s
features, functionalities, and usage. Offer ongoing support and assistance during the initial rollout
and subsequent operations to address any issues or challenges.
Establish processes for monitoring system performance, handling user feedback, and addressing
bug fixes and feature requests. Plan and schedule regular maintenance activities, including software
updates, database optimizations, and security patches, to ensure the system’s stability and longevity.
16
Chapter 6
Implementation
17
CHAPTER 6. IMPLEMENTATION
6.5 Deployment
Deployment Environment: Set up deployment environments such as staging and production servers.
Containerization (Optional): Containerize the application using Docker for easier deployment and
scalability. Continuous Integration/Continuous Deployment (CI/CD): Automate the deployment
process using CI/CD tools (e.g., Jenkins, Travis CI) to ensure smooth and efficient deployment
pipeline. Deploy Application: Deploy the application to the production environment, ensuring
proper configuration and security measures are in place.
18
Chapter 7
Conclusion
Implementing a restaurant management system involves a systematic approach, starting from setting
up the development environment to deploying the system for use. By following best practices in
software development, testing, and deployment, you can ensure the successful implementation of a
robust and efficient restaurant management system that meets the needs of both restaurant staff and
customers.
The proposed restaurant management system incorporating QR code technology, and a mobile
robot represents a significant step forward in the automation and optimization of food service. The
system has the potential to improve customer satisfaction, reduce wait times, and increase efficiency.
System can be used in restaurants instead of waiters. Also, in the isolation wards to serve the
medicine or food to the affected person. Used in offices to deliver files from one room to another.
Used in industries as a helping hand.
19
Chapter 8
Future Work
20
References
1. A. Patil, R. Kalani, B. Patil, S. Shinde, Prof S.M.Shedole, IJTRA, Smart restaurant system
using an-droid, 5, Issue 3 pp. 78-80 (2017)
2. M.P. Chorage, S.S. Bhande, S.S. Lale, M.A. Powar,K.V. Mane, IJARIIE, Digital restaurant
system, 7, Is-sue 1 pg. 756-760 (2021)
3. S. Dimbar, A. Kumbhakarna, P. Shend, IJEET, Survey of digital food ordering system based
on android system for restaurant, 5, Issue 1 (2017)
4. N.M.Z. Hashim, N.A. Ali, A.S. Jaafar, N.R. Mo-hamad, L. Salahuddin , N.A. Ishak, IJCTT,
Smart ordering system via bluetooth, 4, Issue 7 pg. 2253-2256 (2013)
5. Kavitha S. , Shailaja K. , Suma T.N. , V. Shreenidhi, Asst Prof. Hari H. , IJTRE, Paperless
restaurant system, 6, Issue 9 pp. 5554-5557 (2019)
21