You are on page 1of 28

A WEB APPLICATION BASED RESTAURANT MANAGEMENT SYSTEM

Silvester Mutua Mbiti


Student No: 116002
BTC 3

An Information Systems Project Proposal Submitted to the School of Computing and


Engineering Sciences in partial fulfillment of the requirements for the award of a
Degree in Telecommunications

School of Computing and Engineering Sciences

Strathmore University

Nairobi, Kenya

Date of Submission:

i
Declaration and Approval
I declare that this work has not been previously submitted and approved for the award of a
degree by this or any other University. To the best of my knowledge and belief, the research
proposal contains no material previously published or written by another person except where
due reference is made in the research proposal itself.

Student signature:

Sign: Date:

Supervisor’s Name:

ii
Abstract
A good restaurant simply means one that provides great service, great food and amazing
ambience. Everybody loves fast service when in a restaurant. The manual food ordering
system hinders fast service because of several reasons which include miscommunication
between the waiters and customers due to the congestion in waiting lines and unavailable
waiters. Waiters and chefs on the other hand are becoming overwhelmed with the work,
easily making order errors and producing low quality output. Furthermore, profit margins are
on the decline forcing management to go back to the drawing board or even take extreme
measures as closing down restaurants.

The system to be created is an online ordering, delivery and payment system. Some of its
advantages is that it will make the ordering process easier and it will enable the users to
monitor their expenses and have their food delivered at the comfort of their homes. The main
aim of the system is to increase efficiency and enhance productivity subsequently introducing
a possible unique point of sale for privately owned restaurants in Kenya The system will be a
website-based system. This is because web-based systems have greater flexibility and
scalability and are easier to integrate with other systems. The methodology used will be the
agile methodology because it is very convenient in that it provides ample time to design,
construct and test the system. Object Oriented approach has been used in developing. For
analysis and design, Uniform Resource Modelling was used. Php and html has used to
develop the website. MySQL has been used to create databases. Any web browser such as
Edge, Chrome, Firefox can be used to access the website in any environment such as
windows or Linux. The proposal will review alternative systems currently in use, gaps in the
systems and some of the possible development technologies that could revolutionize the
restaurant industry

iii
Table of contents
Declaration............................................................................................................................................ii
Abstract................................................................................................................................................iii
List of Figures.....................................................................................................................................v
List of Abbreviations.............................................................................................................................vi
Chapter 1: Introduction...................................................................................................................1
1.1 Background Statement..........................................................................................................1
1.2 Problem Statement................................................................................................................2
1.3 Aim of the project..................................................................................................................2
1.4 Specific Objectives.................................................................................................................2
1.5 Justification............................................................................................................................3
1.6 Scope /limitations of the study..............................................................................................3
Chapter 2: Literature Review...........................................................................................................4
2.1 Introduction...........................................................................................................................4
2.2 A description of current restaurant operation systems.........................................................4
2.2.1 Problems and challenges experienced with current methods of operation..................5
2.3 Review of Related works and Alternative Systems................................................................6
2.3.1 Review of related works................................................................................................7
2.4 Gaps in existing systems......................................................................................................10
2.5 Review of possible Development Technologies...................................................................11
2.6 Conceptual framework........................................................................................................12
Chapter 3: System Development Methodology.............................................................................13
3.1 Introduction.........................................................................................................................13
3.2 Agile Software Development Methodology.........................................................................13
3.3 Analysis................................................................................................................................15
3.3.1 Functional requirements..............................................................................................15
3.3.2 Non-functional requirements......................................................................................16
3.4 System Design......................................................................................................................17
3.4.1 Object Oriented Analysis and Design...........................................................................17
3.5 System development tools and techniques.........................................................................17
3.5.1 Android Studio.............................................................................................................17
3.5.2 MYSQL..........................................................................................................................17
3.6 Methods used to test System..............................................................................................18

iv
3.7 Domain of Execution............................................................................................................18
3.8 Proposed Modules and System Architecture.......................................................................18
References...........................................................................................................................................19

List of Figures
Figure 2.1 KFC Kenya Website................................................................................................7
Figure 2.2 KFC Menu................................................................................................................8
Figure 2.3 KFC Kenya Website.................................................................................................9
Figure 2.4 Conceptual Framework...........................................................................................12
Figure 3.1 Agile Development Methodology.........................................................................13

v
List of Abbreviations

POS- Point-of-Sale
UML- Unified Modelling Language

vi
Introduction

1.1 Background Statement


here is a wide range of establishments that have been impacted, from hotels to restaurants to
little
cafes. Restaurants with less than ten employees have been affected particularly hard by this
outbreak.
As a result, these establishments have been compelled to either cut the number of people they
employ
or close their doors entirely, which has placed them in a vulnerable situation.
Since there are fewer places to eat now than there were before the pandemic hit, it is essential
for
restaurants to have an efficient management system in place if they want to get back on their
feet and
continue to fulfill customers' requests. The use of my system will allow restaurants and
franchisees to
make orders in a more timely and effective manner, hence increasing their potential revenue.
A user-
friendly, up-to-date menu that includes all of the available customization choices is provided
by the
system
here is a wide range of establishments that have been impacted, from hotels to restaurants to
little
cafes. Restaurants with less than ten employees have been affected particularly hard by this
outbreak.
As a result, these establishments have been compelled to either cut the number of people they
employ
or close their doors entirely, which has placed them in a vulnerable situation.
Since there are fewer places to eat now than there were before the pandemic hit, it is essential
for
restaurants to have an efficient management system in place if they want to get back on their
feet and
continue to fulfill customers' requests. The use of my system will allow restaurants and
franchisees to
make orders in a more timely and effective manner, hence increasing their potential revenue.
A user-
friendly, up-to-date menu that includes all of the available customization choices is provided
by the
system
here is a wide range of establishments that have been impacted, from hotels to restaurants to
little
cafes. Restaurants with less than ten employees have been affected particularly hard by this
outbreak.
As a result, these establishments have been compelled to either cut the number of people they
employ
or close their doors entirely, which has placed them in a vulnerable situation.

1
Since there are fewer places to eat now than there were before the pandemic hit, it is essential
for
restaurants to have an efficient management system in place if they want to get back on their
feet and
continue to fulfill customers' requests. The use of my system will allow restaurants and
franchisees to
make orders in a more timely and effective manner, hence increasing their potential revenue.
A user-
friendly, up-to-date menu that includes all of the available customization choices is provided
by the
system
here is a wide range of establishments that have been impacted, from hotels to restaurants to
little
cafes. Restaurants with less than ten employees have been affected particularly hard by this
outbreak.
As a result, these establishments have been compelled to either cut the number of people they
employ
or close their doors entirely, which has placed them in a vulnerable situation.
Since there are fewer places to eat now than there were before the pandemic hit, it is essential
for
restaurants to have an efficient management system in place if they want to get back on their
feet and
continue to fulfill customers' requests. The use of my system will allow restaurants and
franchisees to
make orders in a more timely and effective manner, hence increasing their potential revenue.
A user-
friendly, up-to-date menu that includes all of the available customization choices is provided
by the
system
For a long time, people have long turned to restaurants for dining, making the restaurant
industry an important and essential service provider worldwide. Most restaurants still use pen
and paper with minimal or no automation. The food ordering process and daily tasks are
manual. Some restaurants and hotels do not allow customers to order food online. One of the
challenges facing many businesses today especially this industry is reliably attracting new
customers and retaining existing customers. Getting new customers is more expensive than
retaining old ones. Therefore, you could argue that existing customers are more valuable to
companies than new customers. (How to Keep Restaurant Customers Coming Back for More,
2019)In this industry, customers are more likely to return to a restaurant in the future if the
restaurant provides good customer service and good food. However, if they have to wait for
an unreasonable amount of time or there was a mistake in the order, it’s very unlikely the
customer will be back.

Technology has undoubtedly spread through every aspect of life in the modern world.
Technology is necessary for any company that wants to significantly improve their

2
organizational and management skills. The system can also provide real-time information and
has an interface that can be customized to the user's needs. In terms of accuracy and speed,
automated systems are better. By using this system, restaurants can place orders timelier and
effectively, increasing potential revenue. The system offers an easy-to-use modern menu.

1.2 Problem Statement


It is essential to have an automated system in place when dealing with a high number of
requests in order to maintain both quality and efficiency. Manual ordering systems put
pressure on people to be correct in all details of their work at all time and the problem is that
people are not perfect. The waiters could often make errors because of a large number of
customers that they are dealing with. Most times customers get infuriated when their orders
get confused or when the waiters take long to serve them. The manual ordering system is also
time consuming because the customer has to wait for the waiter to take his order to the
kitchen first and later on get the food and bring it to them when it is ready. In the restaurant
industry in order to be relevant and competitive your restaurant has to have the following, a
suitable and flexible menu, a good selling point, proper management, well equipped and
trained staff and a reputable customer service or customer experience (Common Restaurant
Problems and Solutions., 2017). It is evident that the current techniques and methods of
operation are gradually becoming incompetent making it difficult to adapt and overcome
evolving changes while keeping the factors mentioned above constant. It is challenging and
resource consuming to keep on creating new menus considering a menu changes overtime
with discovery of new food. There is need for advance inventory management to capture the
restaurant’s ever-growing data such as orders and menu items, which would save on
operational costs and time

3
In the aftermath of an outbreak, it is essential to have an automated system in place when
dealing with
a high number of requests in order to maintain both quality and efficiency. Customers are
able to have
their food brought to them without ever having to leave the convenience of their own homes
because
there is a prohibition on face-to-face meetings. This method also solves the problem of
having to wait
in really long lines, which is something that a lot of people detest doing. Managers have to
make use of
this strategy in order to maintain a close eye on the satisfaction levels of their customers. This
method
involves monitoring order dispatch rates and assessing comments from customers. The cooks
and the
crew or servers at many restaurants have a difficult time communicating with one another due
to the
language barrier. The purpose of this method is to close the chasm. In addition, wait staff are
frequently
understaffed, which results in a significant amount of wasted time spent searching for orders
that are
supposed to be delivered to a particular table. The solution to this issue is to designate
particular
workers to take on particular responsibilities
1.3 Aim of the project
The main aim is to develop a system that makes ordering and payment of food easy for
customers at restaurants. It will help restaurant personnel coordinate their activities and
improve the services rendered to achieve customer satisfaction and also track business
growth, analyse sales and budget for the future.

1.4 Specific Objectives


The specific objectives of the project include:

i. To develop a website application that will facilitate ordering, payment and


accountability
ii. To implement an interactive online menu
iii. Develop a system with a logical flow that will make the ordering process efficient
iv. To develop a system that will be a unique selling point for a restaurant.
v. To develop a system that improvess customer relationship management
vi. To test the application.

4
1.5 Justification
Restaurants can be very crowded during lunch and dinner time. Most customers prefer not to
wait in line for their food. In this case the restaurants have to provide quality service to
enormous number of customers. Without a system it is very difficult to achieve this.

The project embraces and acknowledges technology as a tool that has an impact on the basic
factors that contribute to the success or failure of a business. Technology saves on time. In
some cases, it reduces costs incurred in production and mainly it enhances efficiency.

1.6 Scope /limitations of the study


The aim of this project is to create a website application that will enable the customers to
order food with prices of each food and drinks indicated in the system. The project will focus
on delivering a system that restaurant personnel and customers will interact with. It entails
having a database server to facilitate inventory management and a user interface with various
access levels and different functionalities.

A sequential approach will be adopted throughout the development cycle. Restaurant can
keep track of all the orders, retrieve and display order information. This information will be
invisible to the kitchen for the order processing. These order details can be useful for report
generation. Customers can give general feedback and suggestions about the restaurant and
meals. Those are only visible to the management of the restaurant. Other customers can view
them when they are selecting their meals. Order logging and report generation are also
implemented in the proposed system. Time will also be a limiting factor in the early stages of
software development cycle. The System aims to deliver a system that will enhance the work
effort of the restaurant personnel hence it will not solve the problem of laziness and
incompetence of restaurant staff

5
Literature Review
1.7 Introduction
This chapter reviews Restaurant Management systems similar to the one being developed
here. It will also look at the existing features available in food ordering and how food
industries have adopted to recent development in technology in the industry. Some of the
problems and challenges that exist in these systems will also be reviewed.

1.8 A description of current restaurant operation systems.


This chapter reviews the existing literature on the available food ordering and payment
systems around the world, the trends in mobile technology and how the food industries have
adopted mobile technology in regards to ordering and payment. It first starts by looking into
those challenges or problems that exist in the current food ordering and payment systems.

In the existing restaurant management systems, the order information of each food item is
stored manually. Customers are unable to know what a restaurant is serving or which item is
available or out of stock until they are inside the restaurant. This makes placing orders time
consuming and can consume large volumes of paperwork which require a lot of manual work
and sometimes can involve loss of records. During peak hours, the waiters might get
overwhelmed by the number of customers waiting to be served therefore increasing the
probability for waiters to make mistakes when taking orders. This can lead to the quality of
service to drop hence causing customers to be dissatisfied. However, if too many waiters are
hired, it would lead to waste of resources during non-peak hours. (Reddy, 2016)

The waiters also have to bring the bill to the customers for them to pay either by cash, card or
mobile money. The cashier’s job is to record and account for the payments. In most
restaurants, the waiter prepares two copies of bill receipt, book one for the kitchen and the
other for cashier. The bill receipt for the cashier is delivered to him/her by the waiter with the
collected payments from the customer. They are recorded on a computer and are archived for
references. It is the cashier’s job to generate a report for management review and analysis.

Restaurants use various modes of payment. Most restaurants accept either cash or mobile
money as a mode of payment. According to a U.S. Bank survey, 50% of people say they
carry cash with them less than half the time and when they do, 76% report keeping less than

6
$50 (Dana, 2016). Because of this, it’s become crucial for restaurants to accept a variety of
payment types.

1.8.1 Problems and challenges experienced with current methods of operation


There are various problems and challenges affecting the operations of restaurants. Most
restaurants should try and move away from the pen and paper method which is very
cumbersome and could lead to mistaken orders hence customer dissatisfaction. The
challenges include:

 Operations in the restaurant can become overwhelming without a certain form of


organization. Waiters bring orders from the customers to the kitchen with customers
hoping to wait for a reasonable amount of time for their orders to be brought to them.
The cooks in turn need to make sure they get the order correct and take a short time to
prepare the order. This operations have to run in an organized manner and with a level
of efficiency that satisfies the customer so that they would return in future.
 There are challenges when it comes to paying for the food ordered as sometimes
customers don’t carry around cash to pay for items. Most customers prefer mobile
money or use of PayPal and cards to pay for their food. Paying with cash could also
be time consuming. Use of mobile money can also be limited as M-pesa is the most
reliable way of paying but not everyone uses Safaricom lines.
 During peak hours and high-volume orders, the waiters may struggle to handle a high
influx of orders simultaneously. This can result in slow response times, increased
waiting times and customer dissatisfaction
 Menu planning can also be a challenge. Most menus are written on a printed card or
paper. This can make it difficult for restaurants to improve or add new food to their
menus. For them to do this, it would incur some costs as they would have to make and
print more menus. Developing a good menu requires careful planning and innovation.
Restaurants need to consider factors such as customer preference and pricing when
deciding to make menus.
 Integration of technology such as point-of-sale systems and online ordering platforms
can be very challenging to implement and maintain especially for smaller restaurants
with limited resources and staff.

7
1.9 Review of Related works and Alternative Systems
Modern restaurants use the Point-of- Sale system in their operations. These are computerized
systems that facilitate the management of sales transactions, including taking orders,
processing payments, and generating receipts. It is a tool for streamlining operations and
improving efficiency in the food service industry (POS, 2022).

This technology offers an alternative to the pen and paper method. Most restaurants in Kenya
are familiar with the basic version of POS Systems, which include the following systems

Order Management: POS systems allow restaurant staff to input and customize orders based
on customer preferences. They can accommodate special requests, modifiers, and variations,
ensuring accurate and detailed order information.

Menu Management: POS systems enable easy management of menus, including adding or
removing items, updating prices, and highlighting specials or limited-time offers. This
flexibility allows restaurants to quickly adapt to menu changes and seasonal variations.

Inventory Management: POS systems often integrate with inventory management tools,
enabling real-time tracking of ingredients and supplies. By monitoring inventory levels,
restaurants can automate reordering processes, reduce waste, and ensure they have sufficient
stock to meet customer demand.

Table Management: Many POS systems include table management features that help
optimize seating arrangements and track table availability. Restaurant staff can efficiently
assign tables, manage reservations, and keep track of the status of each table, allowing for
better customer service and reduced waiting times.

Reporting and Analytics: POS systems generate detailed reports on sales, revenue, and other
key performance indicators. These reports provide insights into sales trends, popular menu
items, and customer preferences. By analysing this data, restaurant owners can make
informed decisions regarding menu changes, marketing strategies, and cost optimization.
(POS, 2022)

8
1.9.1 Review of related works
KFC Kenya

KFC is a nice website with good functionalities. It has two ordering options

i) Order online
ii) Order directly from restaurant

Online ordering

One can order online through their website where you are required to enter your delivery
location or select a pickup point before accessing the menu. After accessing the menu and
making an order the customer is required to pay online using their debit cards or they can pay
once delivery is done to their respective locations.

Figure 2.1 KFC Kenya Website

9
On the menu side the customer is able to view the meals available under specific names. Each
meal is under a certain category. The customer is also able to view the price of each meal.

Figure 2.2 KFC Menu

Ordering process

When a customer selects an order, they are allowed to choose how they want their meal
prepared and they could also add more items to their order. The order is then added to cart
and the customer proceeds to place the order and make the necessary payment.

10
Figure 2.3 KFC Kenya Website

Customers can also register into their system and login whenever they want to make orders
which is very convenient to regular customers. The website also allows for the customers to
contact individual stores in case they need any help.

11
1.10 Gaps in existing systems
Although the use of POS Systems has become very popular in the restaurant industry, there
are still challenges experienced with the technology it comes with. The following are some of
the interrupts that occur when the systems are in use;

Flexibility and Mobile Compatibility- As a manager or supervisor of a restaurant it’s not


always possible to be onsite to monitor day to day activities. Modern high-quality POS
systems should be compatible with mobile devices to enable monitoring from any point at
any given time.

Usability issues - Some systems can be complex and difficult in terms of user interactions
such that restaurant employees struggle to use them optimally. The learning curve eventually
reflects on the productivity negatively. It is important to have a user-friendly system that does
not require extensive training, which is a strain in a restaurants resource.

Lack of customer Interaction- Customers are the core stakeholders in service-based


businesses; therefore, it is significant to involve them in restaurant activities. POS systems
lack technologies that can allow customers to view menu at the comfort of their phone, self-
ordering and even give immediate feedback (POS, 2022)

12
1.11 Review of possible Development Technologies
a) The recent increase in growth of Internet of Things (IoT) platforms has made the user
interaction with any software very easy. The development of digital menu for
ordering is based on the software hardware co-design on Raspberry Pi using Zig-Bee
short range radio communication technologies. The advantages of this system include
high performance cost ratio, high reliability and friendly user interface with reduced
cost. (Santhosh, 2015)
b) The use of high-end portable devices to revolutionize a restaurant. In this case
customers use and iPad to make orders real-time, eliminating completely the need for
a waiter. The restaurant also uses the iPad to control the various displays projected on
the restaurant’s screens. In five-star restaurants that have a valet, the iPad can be used
notify the valet when the customer is ready for their car. (Ashutosh Bhargave, 2013)
c) A traditional food ordering system where users can order food and track it. General
POS restaurant management systems that provide retail position their system as
feasible for restaurants or they can even have specific add-on module to this function.
A server can be installed to connect requests to each drum. This connection connects
to the main screen and receives the command from the main program. (R Adithya,
2018)
d) E Bill Resto is a restaurant billing management system that involves several selling
places and restaurants with the name of a particular brand that is connected to the
network of restaurants through a database/web server. The revenue generated from all
restaurant's sales can be monitored in real time using this system. The RESTful API
architecture performs this operation with additional security by accessing tokens. The
Master Application as a provider of Embedded Data Service Web resources on three
Restaurant Information Systems by synchronizing three Web Service Clients, Data
from the Master-Slave Side (M Mahaputra Hidayat, 2020)

13
1.12 Conceptual framework
The proposed system will have a client side and a server side. Customers will be able to
access it through any of their devices that can connect to the internet. The client side is where
customers will be able to interact with the system. Customers can register themselves on the
client side and they would be saved on the database hence making it easier for regular
customers to make orders. On the home screen the customer will navigate the menu and add
menu items desired to the cart. Once the customer has made an order, the kitchen staff from
the server side will be able to see the order with all the details and modify its status once the
order is ready. Only an authorized user will be able to login to the server side where he/she
can create, update, delete menu items and facilitate order management. Once the customer
places an order they will be required to make a payment for the order through PayPal or they
could also pay once the delivery is made to their location.

Order Management, Creating, deleting and


updating menu items. Admin module SERVER
SIDE

Kitchen staff

orders Fetch orders

CLIENT
MYSQL
SIDE
Navigate menu DATABASE
orders
and place order

Customer

Figure 2.4 Conceptual Framework

14
System Development Methodology
1.13 Introduction
This Chapter will review the methodology that will be used for the proposed restaurant
system. The focus will be on the type of methodology to be adopted in the development,
functional requirements and non-functional requirements. A system development
methodology is the process followed by an individual or organization in order to conduct all
the necessary steps to analyse requirements, design, implement and maintain Information
systems. (Benzzine, 2002).

The Agile approach of development will suit the development of the proposed system since it
advocates for evolutionary development, collaborative effort between the end user and
developer and it encourages flexible responses to changes even at late stages of the
development cycle. In our case it is important to work side by side with the end users to
achieve the desired functionality because the system will play an important role in their
productivity

1.14 Agile Software Development Methodology


The Agile approach software development methodology is based on four values which are
communication, simplicity, courage and feedback. System analysts should always adopt these
values regardless of the project. (Julie Kendall, 2023)

Figure 3.5 Agile Development Methodology

15
(Pawar, 2019)

i) Requirements

The requirements for the learning app are identified. It defines what the system should be
able to do and how it should do it. In this stage the environment is explored while potential
technologies needed to build the system are examined. The software developer interacts with
the customers gathering a draft of their requirements while ideally coming up with an
estimate of the time required to complete the tasks discovered in this stage. At the end of this
stage the developer has a concept of what is required.

ii) Planning/Design

This is where the end user and the system developer agree on the deliverables and the time it
will take to produce a system with solutions to their identified problems. Upon proper
understanding of the deliverables the developer and the end user work hand in hand where
the developer has to design the simplest solution possible, introduce the system to the end
user and get the feedback. It is from there that the developer adapts an initial design. There is
need for a good relationship between end user and developer for this stage to be successful
since it is the end users’ decisions that will identify the critical functionalities to be focused
on by the developer.

iii) Development

Here the system is developed and concepts are brought to life. Coding of the system is done
and all elements and functions are added. it is mandatory for the developer to be available
and ensure that a system runs smoothly after deployment to the market. In this stage the
developer provides user support and at times he/she can consider additional of new features.

iv) Testing

After the development the system is tested to ensure it meets the requirements initially stated.
Changes are also made to fix any errors or add any extra factors. Iterations are cycles that
involve testing the system with end user, getting feedback and implementing change where
needed. In this stage the developer is free to manipulate the system functionalities and upon
consulting the end user the developer can make adjustments to the predetermined schedule.

v) Deployment and review

16
In this phase, the system is deployed as it ready for use. Feedback is given by those who use
the system and after a thorough review extra additions and removals are

1.15 Analysis
System requirement analysis is the process of learning, identifying, determining and
documenting end users’ expectations and needs of the system to be designed that will solve a
particular problem. The Process generates a software requirement document that captures the
proposed systems’ functionality, design constraints, performance and quality attributes.
(Catannio, 2006)

The system will be designed using object-oriented analysis and design technique to create the
classes and objects. Object-oriented analysis and design are technical approach used in the
analysis and design of an application through application of object-oriented paradigm and
concepts. (Technopedia, 2020). It is preferred due to its real-world modelling and improved
reliability and flexibility.

1.15.1 Functional requirements


A functional requirement describes a system by specifying a function that the system must
perform where a function is a combination of input, output and behaviour that enable a
specific component in a system to perform a task. The proposed system will have the
following functionalities;

Functional requirements may be calculations, technical details, data manipulation and


processing and other specific functionality that define what a system is supposed to
accomplish

 Authentication

This will include a login page where the customers can either register an account or log in to
an already created account.

 Menu management

Provides functionality for the admin only. It can only be accessed by admins and not
customers.

The admin will be able to;

17
 Add/update/delete food category to and from the menu
 Add/update/delete food items to and from the menu
 Update the prices of each item
 Update any additional information required
 Menu navigation

The customer will be able to navigate from the menu category into the food menu, view the
food description and add chosen item(s) to cart with ease.

 Order management

A customer will be able to place an order and view the details of the order including the price
and description of the meal selected and once selected the order is added to cart. From the
server side an authenticated user will be able to view the order and order details and modify
the order status once order is ready.

 User Management function

Admin user will be able to add/edit/remove customers

 Reporting function

The system will have the ability to generate a report of requests made from the database

1.15.2 Non-functional requirements


Non-functional requirements describe the properties that the system must have. They define
the quality attribute of a system and ensure that usability and effectiveness of the entire
system. The non-functional requirements include;

 The system should provide a user-friendly environment


 The system should allow for a person with limited computer knowledge to be able to
navigate and understand the system
 The system should also keep up security, privacy and reliability because it handles
information about the restaurant and their customers
 The system should also be portable and compatible with most devices.
 The system should perform well without lagging or shutting down. Performance is an
attribute of quality that describes the responsiveness of the system to various user
interactions with it.

18
1.16 System Design
System design is the process where a software engineer defines the structure of a system in
terms of modules, architecture, data and interfaces based on the requirements. Defining the
structure of interacting components and how they fit each other is what the activity system
design entails

1.16.1 Object Oriented Analysis and Design


For this project, Object oriented design techniques has been used. It is used to facilitate the
establishment of systems that are ever changing rapidly in response to dynamic business
environments (Julie Kendall, 2023). It focuses on an object in a particular system in our case
the objects being customers, orders, menu items etc. This makes this the best approach for
our desired restaurant system. The approach uses Unified modelling Language to break down
the system into a use case model. Unified Modelling Language (UML) plays a significant
role in Object Oriented designing. UML allows programmers to understand models of objects
so that programmers can easily write software. Other graphical design modelling languages
that will be used for the proposed system include;

i. Data flow diagram -Will be used to show flow of the restaurant data within the
system.
ii. Flow chart- a diagram that will be used to demonstrate step by step how a particular
problem will be solved

1.17 System development tools and techniques


1.17.1 Android Studio
This is the official integrated development environment for android application development
an incorporates a code editing and developer tools (Contributor, 2018).

1.17.2 MYSQL
This is the database system that will be used for the storage of data. This is due to its high
demand and on0demand scalability as the application will have large amounts of data.

19
1.18 Methods used to test System
To test the functional and non-functional system requirements black box software testing
method will be adopted. It will be the best method to use because the end users of the
proposed system are only interested on the behavioural function of the system based on
requirement specification. The method does not require user to have knowledge of
programming in order to test and it also saves on time.

1.19 Domain of Execution


The system will be a web-based application. Web application is a type of application
software designed to run on a device like smartphone or laptop or desktop. (Technopedia,
2020). Web based applications are faster compared to mobile-apps because they are designed
with efficiency in mind and they also have greater functionality meaning they can easily
integrate with other features and tools in a device.

1.20 Proposed Modules and System Architecture


Modules are components of a system that within them have functionalities. The proposed
system will have the following modules;

i. Cart- The customer can add menu items, where the total price and quantity of menu
items selected will be displayed
ii. Orders- This module is where according to the access levels the end user can view
orders, place orders and modify orders.
iii. Menu -The module will have a scroll view of the restaurant’s menu and according to
level access end user can view, create, update, delete menu items.
iv. Administrator Module-This is the module that will enable the management to add
more items in menu or delete items from menu. This module will also allow them to
view orders.
v. User Module-This module will allow the customers to order food from the restaurant.
It will also allow the customers to order drinks and light snacks at the restaurant.

20
Finally, it will allow the customers to pay for the food and drinks with a payment
method that is most suitable for them.

References
Ashutosh Bhargave, N. J. (2013). Digital Ordering System for Restaurant Using Android.
International Journal of Scientific and Research Publications Volume 3.

Catannio, D. J. (2006). Requirements Analysis. Advances in Systems, Computing Sciences


and Software Engineering , 411-425.

Common Restaurant Problems and Solutions. (2017, March 21). Retrieved from Glimpse
Corp.: https://www.glimpsecorp.com/restaurant-problems-and-solutions/

Contributor, T. T. (2018, October). Android Studio. Retrieved from


https://searchmobilecomputing.techtarget.com/:
https://searchmobilecomputing.techtarget.com/definition/Android-Studio

Dana, K. (2016). Home Touch Bistro. Retrieved from Touch Bistro Website:
https://www.touchbistro.com/

How to Keep Restaurant Customers Coming Back for More. (2019). Retrieved from Smart
Web Restaurant: https://swebrestaurant.com/blog/article/keeping-customers-coming-
for-more.

Julie Kendall, K. K. (2023). Systems Analysis and Design, 11th edition. Pearson Prentice.

M Mahaputra Hidayat, R. D. (2020). Design of Restaurant Billing System (E Bill Resto) by


Applying Synchronization of Data Billing in Branch Companies to Main Companies
Based on Rest API. International Conference on Smart Technology and Applications.

Pawar, P. (2019, December). Insights to Agile Methodologies for Software Development.


Retrieved from https://hackernoon.com: https://hackernoon.com/a-case-study-type-
insight-into-agile-methodologies-for-software-development-cd5932c6

POS, R. (2022, June 20). What Is Restaurant POS System: Everything You Need To Know.
Retrieved from Restorapos: https://restorapos.com/blog/what-is-restaurant-pos-system

R Adithya, V. K. (2018). Online Food Order System for Restaurants. International Research
Journal of Engineering and Technology (IRJET).

21
Reddy, S. (2016). An Online Food Court Ordering System. Journal of Information
Technology & Software Engineering.

Santhosh, K. M. (2015). Touch Screen Based Advanced Menu Ordering System for
Restaurants using Raspberry Pi. International Journal of Scientific Engineering and
Technology Research, 2319-8885.

Technopedia. (2020). Object-Oriented Analysis and Design (OOAD). Retrieved from


https://www.techopedia.com/: https://www.techopedia.com/definition/21104/object-
oriented-analysis-and-design-ooad

22

You might also like