You are on page 1of 71

Eatray (Smart Ordering System)

_______________________________________________________________________

Department of CS&IT

University of Lahore (Gujrat Campus)

Extra (Food Ordering App)

Session: BSSE 2017-2021

Project Supervisor: Dr. Baber Hayat

Submitted By:

Shan Mustafa 70057268

Rana Ali Azeem 70057104

Saqlain Naeem Butt 70057272

Department of CS&IT
University of Lahore (Gujrat Campus)

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

STATEMENT OF SUBMISSION

This is to certify that Shan Mustafa Roll No. 70057268, Rana Ali Azeem Roll No.
70057104 and Saqlain Naeem Butt Roll No. 70057272 has completed the final year
project named as Eatray (Food Ordering App) at the Department of CS&IT, University
of Lahore (Gujrat Campus), to fulfill the requirement of the degree of Bachelor of
Science’s in Software Engineering.

_____________________
Project Supervisor

______________________ ______________________
Project Examiner Project Coordination Office
Faculty of C&IT -UOL

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Proofreading Certificate
It is to certify that I have read the document meticulously and circumspectly. I am
convinced that the resultant project does not contain any spelling, punctuation or
grammatical mistakes as such. All in all I find this document well organized and I am in
no doubt that its objectives have been successfully met.

_____________________
Dr. Baber Hayat

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Acknowledgment
We truly acknowledge Dr. Baber Hayat Lecturer of the Department of Computer
Science and Information Technology, University of Lahore (Gujrat Campus) for their
cooperation and continuous help. He has been a constant source of guidance throughout
the project. We are also thankful to our friends and families whose silent support let us
complete our project.

Shan Mustafa

Rana Ali Azeem

Saqlain Naeem Butt

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Abstract
As world is now become the house of technology and every business is now trying to
moving towards the usage of technology. Food industry is one of the major industries in
the world and food is the one of the common element of our daily life which we need to
live. Technology used in the food industry now becomes very much popular among
people and it provides ease to reduce their hunger. Restaurant automation now becomes
very much popular and people using mobile apps to order their food rather than
traditional menu card ordering. Here we are presenting the food ordering mobile
application named Eatray which will help the customer to fulfill their hunger and to the
manager/owner to run their business smartly. The main idea behind this project is to
provide pre-order facility to the customer so that customer can pre-book their order before
visiting to the café/restaurant. Number of applications are running through which we can
order our food but they are not providing the facility of order the food before visiting the
outlet. The research method used in this research is water model of System Development
Life Cycle (SDLC) method with following phases: requirement definition, analyzing and
determining the features needed in developing application and making the detail
definition of each features, system and software design, designing the flow of developing
application by using storyboard design, user experience design, Unified Modeling
Language (UML) design, and database structure design, implementation an unit testing,
making database and translating the result of designs to programming language code then
doing unit testing, integration and System testing, integrating unit program to one unit
system then doing system testing, operation and maintenance, operating the result of
system testing and if any changes and reparations needed then the previous phases could
be back.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Table of Contents
STATEMENT OF SUBMISSION......................................................................................ix
Proofreading Certificate.......................................................................................................x
Acknowledgment................................................................................................................xi
Abstract..............................................................................................................................xii
Chapter 1: Introduction and Background.............................................................................1
1.1 Introduction:...................................................................................................................2
1.2 Background:...................................................................................................................2
1.3 Statement of the Problem:..............................................................................................3
1.4 Purpose of the Project:...................................................................................................3
Chapter 2: Review of the Project.........................................................................................4
2.1 Related Technologies.....................................................................................................5
2.1.1 Websites......................................................................................................................5
2.1.2 Mobile Applications....................................................................................................5
2.2 Related Projects..............................................................................................................5
2.2.1 Tossdown...............................................................................................................5
2.2.2 Supermeal....................................................................................................................5
2.2.3 Olaround......................................................................................................................6
2.2.4 Eatoye..........................................................................................................................6
2.2.5 Deliveroo.....................................................................................................................6
2.2.6 MenuDrive..................................................................................................................7
2.2.7 Toast POS....................................................................................................................7
2.2.8 ChowNow...................................................................................................................7
2.2.9 Upserve.......................................................................................................................7
2.2.10 Square Point of Sale..................................................................................................7
2.2.11 Restolabs...................................................................................................................8
2.2.12 NetWaiter..................................................................................................................8
2.2.13 CAKE Point of Sale..................................................................................................8
Chapter 3: Requirements Engineering.................................................................................9
3.1 Requirement Gathering and Analysis..........................................................................10
3.2.1 Functional Requirements...........................................................................................10
3.2.2 Non-Functional Requirements..................................................................................10
Chapter 4: Design and Implementation..............................................................................12
4.1 Design..........................................................................................................................13
4.1.1 High-level Use case Diagram....................................................................................14
4.1.3 Customer Use Case...................................................................................................16

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
4.1.4 Manager Use Case.....................................................................................................18
4.1.5 Chef Use Case...........................................................................................................20
4.1.6 Sequence Diagram.....................................................................................................21
4.1.7 Full Sequence Diagram of System............................................................................22
4.1.8 Customer Sequence Diagram....................................................................................23
4.1.9 Manager Sequence Diagram.....................................................................................24
4.1.10 Chef Sequence Diagram..........................................................................................25
4.1.11 Architecture Diagram..............................................................................................26
4.1.12 Class Diagram.........................................................................................................26
4.1.13 ERD Diagram..........................................................................................................27
4.2 Tools and Frameworks.................................................................................................27
4.2.1 Software/ Hardware requirements.............................................................................27
4.2.2 Implementation Tools and Technologies..................................................................27
4.3 Verification..................................................................................................................27
4.3.1 If User clicks on login when correct Phone number and password entered.............28
4.3.2 If User clicks on login when incorrect Phone number and pass...............................28
4.3.3 If User clicks on login when Phone number and pass fields are empty....................29
4.3.4 When fields are empty...............................................................................................30
4.3.5 When all field filled correctly...................................................................................31
4.3.6 When phone or password is not registered................................................................32
phone or password is not....................................................................................................32
4.3.7 Customer add food to tray.........................................................................................33
4.3.8 Place Order................................................................................................................34
4.3.9 Check Table Chart.....................................................................................................35
4.3.10 Change order status.................................................................................................36
4.3.11 Change Table Status................................................................................................37
4.3.12 Upload a Category...................................................................................................38
4.3.13 Delete a Category....................................................................................................39
Chapter 5: Results..............................................................................................................40
5.1 Presentation of the developed Project..........................................................................41
5.1.1 Admin Panel..............................................................................................................41
5.1.2 Admin Dashboard.....................................................................................................41
5.1.3 Manager Add new Category.....................................................................................42
5.1.4 Displaying Category list............................................................................................43
5.1.5 Adding new Product to Category..............................................................................43
5.1.6 Displaying product list..............................................................................................45
5.1.7 Update Table Status..................................................................................................45

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
5.1.8 Displaying Table chart..............................................................................................46
5.1.9 Displaying orders......................................................................................................47
5.1.10 Customer Registration.............................................................................................47
5.1.11 Home Screen...........................................................................................................49
5.1.12 Food list...................................................................................................................50
5.1.14 Add food to tray......................................................................................................52
5.1.15 My tray....................................................................................................................54
5.1.16 Select Method of delivery.......................................................................................55
5.1.17 Table Chart..............................................................................................................56
5.1.18 Payment Method.....................................................................................................57
5.1.19 Order Cancelation Screen........................................................................................58
Chapter 6: Conclusion and Future Work............................................................................59
6.1 Summary and Conclusion............................................................................................60
6.2 Future Work.................................................................................................................60
References..........................................................................................................................61

Table of figure
Figure 1 Waterfall Model...................................................................................................13
Figure 2 High Level Use case............................................................................................14
Figure 3 Abstract Level Use case.......................................................................................15
Figure 4 Customer Use case...............................................................................................16
Figure 5 Manager Use case................................................................................................19
Figure 6 Chef Use case.......................................................................................................20
Figure 7 Full Sequence Diagram........................................................................................22
Figure 8 Customer Sequence Diagram...............................................................................23
Figure 9 Manager Sequence Diagram................................................................................24
Figure 10 Chef Sequence Diagram....................................................................................25
Figure 11 Architecture Diagram........................................................................................26
Figure 12 Class Diagram of System...................................................................................26
Figure 13 ERD Diagram....................................................................................................27
Figure 14 Manager Login...................................................................................................41
Figure 15 Manager Dashboard...........................................................................................41
Figure 16 Adding new Category........................................................................................42
Figure 17 New Category Added.........................................................................................42
Figure 18 Category List.....................................................................................................43
Figure 19 Adding new Product to Category......................................................................43
Figure 20 Adding new Product..........................................................................................44
Figure 21 New Product Added...........................................................................................44
Figure 22 Product List........................................................................................................45
Figure 23 Update Table Status...........................................................................................45
Figure 24 Table Updated....................................................................................................46
Figure 25 Table Chart........................................................................................................46
Figure 26 Displaying orders...............................................................................................47

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
Figure 27 Customer Registration.......................................................................................47
Figure 28 Customer Registration.......................................................................................48
Figure 29 Code Verification...............................................................................................48
Figure 30 Home Screen......................................................................................................49
Figure 31 Food List............................................................................................................50
Figure 32 Food Details.......................................................................................................51
Figure 33 Add food to tray.................................................................................................52
Figure 34 Confirmation......................................................................................................53
Figure 35 Tray....................................................................................................................54
Figure 36 Method of Delivery............................................................................................55
Figure 37 Table Chart........................................................................................................56
Figure 38 Payment Method................................................................................................57
Figure 39 Order Cancellation.............................................................................................58

Table of tables
Table 1 Customer Use case................................................Error! Bookmark not defined.
Table 2 Manager Use case..................................................Error! Bookmark not defined.
Table 3 Chef Use case........................................................................................................21
Table 4 Test Case 1............................................................................................................28
Table 5 Test Case 2............................................................................................................29
Table 6 Test Case 3............................................................................................................30
Table 7 Test Case 4............................................................................................................30
Table 8 Test Case 5............................................................................................................31
Table 9 Test Case 6............................................................................................................32
Table 10 Test Case 7..........................................................................................................33
Table 11 Test Case 8..........................................................................................................34
Table 12 Test Case 9..........................................................................................................35
Table 13 Test Case 10........................................................................................................36
Table 14 Test Case 11........................................................................................................37
Table 15 Test Case 12........................................................................................................38
Table 16 Test Case 13........................................................................................................39

|The University of Lahore, Chenab Campus


Eatray (Smart Ordering System)
_______________________________________________________________________

Chapter 1: Introduction and Background

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

1.1 Introduction:

This Smart Ordering System will provide the next level user experience to the customers
as well as to the management. Customer can make their tray by adding food of their own
choice from the category offered by the management. Tray can be for a single person as
well as for two or more persons. The customer can pre-order their tray so that the order
will be ready before visiting the café/restaurant. The main purpose of this application is to
save the time of the customer as well as management. Pre-order feature will let this
happen. Rather than this, this application also supports traditional ordering system in
which customer has to wait for their order to be prepared. This application also provides
two more options either dine-in or take away. If customers choose dine-in, he/she has to
check the availability of the table from the table chart first so that he/she can choose the
desired table if available. In the take-away module, the order will be prepared and packed
for the customer so that he/she will visit and take their order after paying. Customer can
also pay through online transfer. After placing order customer will get some time to
cancel their order. If customer cancels their order he/she will get some penalty. Otherwise
order will be confirmed.
All the food details will be displayed according to the specific categories. When
customers click on the specific food he/she will be displayed with all the food details like
picture, price, calories, protein, and food ingredients.
The manager side in this application will also provide couple of features to the manager
of the café/restaurant so that it becomes easy for manager to manage. Manager can
register the customer as well as chef or other staff working. In the order module manager
will see how much orders he received, how much are in pending and so on. First received
orders will be confirmed by the manager and then it will pass to the chef module to
prepare. Manager also can update, add and remove the food category list by adding their
information to it. In the table chart module, manager will change the status of the table
either available or not so that it will display to customer to take the decision.
Chef module will help the chef to see how much he has to prepare. The confirmed orders
from the manager will displays to the chef module and chef will prepare those orders.
Chef can also see the orders confirmed by the customers and can see what he has to
prepare. All the working of the system will be easy to use for all the users to manage the
orders in an efficient manner.

1.2 Background:

As world is now become the house of technology and every business is now trying to
moving towards the usage of technology. Food industry is one of the major industries in
the world and food is the one of the common element of our daily life which we need to
live. Technology used in the food industry now becomes very much popular among
people and it provides ease to reduce their hunger. Here we are presenting the food
ordering mobile application named “Eatray” which will help the customer to fulfill their
hunger and to the manager/owner to run their business smartly. The main idea behind this
project is to provide pre-order facility to the customer so that customer can pre-book their
order before visiting to the café/restaurant. This will save the time of the customer as well
as helps the manager/owner to manage their customer services. Number of applications
are running through which we can order our food but they are not providing the facility of
order the food before visiting the outlet. Furthermore this smart ordering application will
change the user experience from traditional ordering system to the technical ordering
system using mobile or tablets devices.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

1.3 Statement of the Problem:

In different cafe's customers comes and place their order by menu cards. They have to
wait for their order until their food is served. Time management is the major issue for the
customers as well as for the management. In the working systems customer order the food
and has to wait for this to be prepare also for management to handle the multiple orders.
Other than this, if customer visit to the café/restaurant and he/she found that the table is
not available, this will become very much disappointed for the customers and also leave
bad impression because there is no such system which will give the information about the
tables either available or not.

1.4 Purpose of the Project:

Technology has entered almost every field in our life, but still its effect is not yet that evident
in the food industry, especially the food serving outlets including restaurants, hotels. Even
today, most of the restaurants follow the traditional pen and paper method to take orders from
customers, which wastes a lot of time of both, the customer and the restaurant. This mobile
app will be created for the small Café/Restaurant in which customers can order their food
in different ways. This mobile app will help the customers to customize their own tray.
Customer can choose the food which they want to have in their tray. Other than that
customers can cancel their order if they have changed their mind. The main idea behind
this project is to provide pre-order facility to the customer so that customer can pre-book
their order before visiting to the café/restaurant. This will save the time of the customer as
well as helps the manager/owner to manage their customer services. Rather than this, this
application also supports traditional ordering system in which customer has to wait for
their order to be prepared.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 2: Review of the Project

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

2.1 Related Technologies

Related technologies to our project “Eatery” are given follow

2.1.1 Websites

Many food chain companies are using websites to engage the customers by providing
online ordering. But due to the increasing number of smartphone users, a major
decrease in the use of websites for food ordering has observed. This is because
websites are far more complex to use rather than mobile applications.

2.1.2 Mobile Applications

The number of mobile application users is increasing. About 58% of users prefer mobile
applications as compared to the web.

2.2 Related Projects

Many projects are related to our application. Some of these are

2.2.1 Tossdown

This application provides facility to the customers by showing different restaurants


nearby in the different cities across the country. It also shows different discounts offer by
the restaurants. Customer can also reserve tables and can avail different offers through
it. A comprehensive detail of how to prevent accidents and losses caused by technology
can be found in the literature [1]

Limitations and Bottlenecks

i. There is no order tracking options.

ii. No pre-order of food and no customized order option.

2.2.2 Supermeal

It has all the usual features like menus, special deals and pictures from different
restaurants, prices, delivery/take-away options and locations. Plus you can get discounts
and earn points when you order online. You can even rate and review the restaurant and
food based on your experience. Other than ordering food and paying cash on delivery,
you can also see a list of nearby places that offer take-out orders. A comprehensive detail
of how to prevent accidents and losses caused by technology can be found in the literature
[1]

Limitations and Bottlenecks


|The University of Lahore, Chenab Campus
Eatray (Food Ordering App)
________________________________________________________________________

i. There is no module for chef to monitor the orders received.

ii. Table module is not available customer cannot check the table availability.

2.2.3 Olaround

This smartphone loyalty app lets users find venues around the city that offer deals and
discounts and then avail those discounts by scanning a code. After collecting significant
punches (or check-ins via the app), you will be entitled to redeem for special rewards
called ‘kicks’ customized to each restaurant or brand. A comprehensive detail of how to
prevent accidents and losses caused by technology can be found in the literature [1]

Limitations and Bottlenecks

i. There is no module for chef to monitor the orders received.

ii. Wrong estimation of special rewards.

2.2.4 Eatoye

Eatoye is a Pakistani startup that got acquired by Rocket Internet a few months ago. Since
then, the app has gotten better than ever! It offers a great variety of restaurants with their
latest deals and promotions while also offering the facility of home delivery. The app also
helps you find restaurants nearby that provide home delivery service. So you never have
to worry about finding places to eat or to deliver if you are in an unfamiliar territory.
Additionally, the app offers the ability to reserve a table so that you don’t have to worry
about finding a seat. A comprehensive detail of how to prevent accidents and losses
caused by technology can be found in the literature [1]

Limitations and Bottlenecks

i. Not offering customers to customize their food tray.


ii. There is no food tracking system. Customers cannot track their order.

2.2.5 Deliveroo

Deliveroo is a London-based food delivery startup, which works in over 200 cities. It is


the most popular food delivery app across Europe. It enables customers to order food
from restaurant outlets that don’t have a set-up of their own and charges a fee from the
customer and the restaurant for the service. Users are charged as per their order, whereas
restaurants pay a commission. A comprehensive detail of how to prevent accidents and
losses caused by technology can be found in the literature [1]

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

2.2.6 MenuDrive

This option is best for the restaurants that want to create a branded ordering experience on
their website. To use it, you send your menu, photos and other information directly
to MenuDrive and they’ll build an interactive online menu for you. You can choose from
a few different payment platforms and connect it to your POS system or email to keep up
with the orders. The annual plan starts at $90 per month. A comprehensive detail of how
to prevent accidents and losses caused by technology can be found in the literature [2]

2.2.7 Toast POS

Toast offers a popular point of sale system for restaurants that also includes an online
ordering system. This option is most suited to the restaurants that already use Toast POS.
The whole system is meant to work together to help restaurants manage all of their
operations in one system, to even include online order reports and delivery systems.
Pricing starts at $140 per month. A comprehensive detail of how to prevent accidents and
losses caused by technology can be found in the literature [2]

2.2.8 ChowNow

This online ordering system and app is made to work using every format your customers
are likely to use. You can set it up so people can place orders on your website, Facebook
page and mobile app. So if your restaurant’s customers are especially likely to use their
mobile devices or social media to place orders, ChowNow could be an option to consider.
The annual plan starts at $119 per month, plus credit card processing fees. A
comprehensive detail of how to prevent accidents and losses caused by technology can be
found in the literature [2]

2.2.9 Upserve

Upserve is a full service restaurant management system that also includes options for
bars, wineries, coffee shops, bakeries and more. The company’s online ordering system is
made to work with its POS system, payments service and mobile app. For small
restaurants, pricing starts at $99 per month. A comprehensive detail of how to prevent
accidents and losses caused by technology can be found in the literature [2]

2.2.10 Square Point of Sale

Square’s restaurant POS solution offers an in-person and restaurant ordering system all in
one. So basically, all the orders come into the same place so that you can manage them
concurrently. This can be a positive feature for restaurants that do a good mix of carryout
and dine-in business. However, the company charges a transaction fee rather than a larger
monthly fee, so it may not be as cost effective for restaurants that make a fair amount in
monthly sales. A comprehensive detail of how to prevent accidents and losses caused by
technology can be found in the literature [2]

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

2.2.11 Restolabs

Restolabs offers an online ordering system for restaurants that’s packed with a lot of
potentially useful features, including Facebook ordering, multilingual support and real-
time analytics. It’s a fairly basic interface that allows you to enter your menu and then
copy and paste a widget right into your website. The basic package starts at $45 per
month. A comprehensive detail of how to prevent accidents and losses caused by
technology can be found in the literature [2]

2.2.12 NetWaiter

NetWaiter is an online restaurant marketing platform that includes embedded online


ordering. You can use it to create your own custom mobile app as well as an ordering
widget for your website. The monthly plan that includes online ordering starts at $100 per
month. A comprehensive detail of how to prevent accidents and losses caused by
technology can be found in the literature [2]

2.2.13 CAKE Point of Sale

From Sysco, CAKE is a full-service POS and management system that includes online
ordering. The cloud based system allows you to accept orders online and manage them
alongside in-person orders on the same platform. It includes a transaction fee, so it can be
a good option for small restaurants just getting started. But the costs will grow the more
money you make. A comprehensive detail of how to prevent accidents and losses caused
by technology can be found in the literature [2]

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 3: Requirements Engineering

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

3.1 Requirement Gathering and Analysis

Requirement analysis for our application encompasses three major assignments:


formulation, requirements gathering and analysis modeling. During formulation, the basic
need and purpose for application is identified, and the categories of users/analyst are
defined. In the requirements gathering phase, functional and non-functional requirements
are listed and interaction scenarios written from end-users’ point-of-view are developed.
This intent is to establish a basic understanding of why this application is built, who will
use it, and what services it will provide to its users.

3.2.1 Functional Requirements

Users of our system are divided into three categories which are customer, manager, and
chef, so functional requirements will be according to these three categories. Following is
the list of all the functional requirements of our proposed system.
a. The customers will register themself in the application.
b. Manager will register chef or other staff.
c. Customer must be logged into the application.
d. Customer will be able to select the desired category of food and add to the tray.
e. Customer can add minimum 3 and maximum 8 food items from the food list to the
tray.
f. Customer can choose either pre-order or in-restaurant order.
g. Customer should be in the range if he/she chooses the pre-order option.
h. Customer can choose dine-in or takeaway to receive order.
i. Customer should choose the table number in the case of dine-in.
j. Customer can see the table chart to check the availability of the table.
k. Customer can increase the quantity of food in the tray.
l. Customer can pay by online money transfer.
m. Customer can cancel the order.
n. There should be amount of penalty deducted in case or canceling order.
o. Manager can manage the food category list either update, add or delete.
p. Manager can also manage the customer registration.
q. Manager can manage the orders received from the customer.
r. Confirmed orders will send to the chef.
s. Manager will change the status of the orders as well as of tables.
t. Chef will login into the application.

3.2.2 Non-Functional Requirements

a. Performance
i. The application must be interactive and fewer delays be involved. In every action-
response of the system, there should be no immediate delays. In the case of new
activities, it must not take more than 2 seconds to start an activity. Application
must be responsive enough to evenly send and receive customers, manager, and
chef’s requests.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

b. Reliability
i. System must take System must use a database where data should be synchronized
continuously to all connected users.

c. Security
i. Application must require login to send/receive requests.
ii. Email/Username should be unique for each user.

d. Usability
i. The interface must be attractive.
ii. Application must be easy to learn and use.
iii. The application must have consistent interfaces.

e. Availability
i. The system must be available 24/7 to all users.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 4: Design and Implementation

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Waterfall-Model

Figure 1 Waterfall Model

Description
The waterfall model is a relatively linear sequential design approach for certain areas of
engineering design. In software development, it tends to be among the less iterative and
flexible approaches, as progress flows in largely one direction ("downwards" like a
waterfall) through the phases of conception, initiation, analysis, design, construction,
testing, deployment and maintenance. As shown in Error: Reference source not found. A
comprehensive detail of how to prevent accidents and losses caused by technology can be
found in the literature [3]

4.1 Design
A software design is a creative activity in which we identify software components and
their relationships, according to the requirements of the end-users. In this chapter
different diagrams like use case diagram, architecture diagram, class diagrams, and
sequence diagram are included which explains the detailed working and components of
our project.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.1 High-level Use case Diagram

Figure 2 High Level Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.2 Abstract level Use Case Diagram

Figure 3 Abstract Level Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.3 Customer Use Case

This use case explains the functionality of customer into the application.

Figure 4 Customer Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Use Case ID: UC-1


Use Case Name: Customer Use case
Created By: Rana Ali Azeem Date Created: 11.02.2021

Last Updated By: Saqlain Naeem Butt Last Updated Date: 12.02.2021

Actors: Customer
Description: Customer register and login to the application.

Pre-Conditions: The login or register page must be loaded.

Post-Conditions: Customer is either logged in or failed to log in and is appropriately


notified.
Normal Flow: 1. Customer request to the “Register” page.
2. The Customer enters the details to register into the application.
3. The Customer enters his username and password in the returning
user section of the sign-in screen.
4. The system validates the username and password (successfully)
and displays the main home screen.

Alternative Flows: 1. The customer opens the "Login" page.


2. The customer enters his/her email and password.
3. The system determines that the email or password is invalid and
informs the user to try again.

Exceptions: 1. The user has forgotten his/her username, password, or both, and
clicks the "Forgot Password?" link

Frequency of use: 24/7


Priority: High

Table 1 Customer Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.4 Manager Use Case

Use Case ID: UC-2


Use Case Name: Manager Use Case
Created By: Rana Ali Azeem Date Created: 11.02.2021

Last Updated By: Saqlain Naeem Butt Last Updated 12.02.2021


Date:
Actors: Manager
Description: The Manager gets the login and sign in into application.

Pre-Conditions: The Manager screen is loading.


Post-Conditions: Manager sign into application and have access to manage all the
order related activities.

Normal Flow: 1. Manager get login and sign in into application.


2. The manager can enter the following details in the database
and share it with customer and chef.
a. Add category
b. Update category
c. Delete category
d. Manage orders
e. Chance order status
f. Send order to chef
g. Register chef
h. Manage table chart

4. The manager click on the save button and data is saved in the
database.
5. The manager can log out after completing his task.
6. The system validates that the Username is already in use. If
not, the system displays the new account confirmation page.

Alternative Flows:
Exceptions: The manager already registered in the system.

Frequency of use: 24/7


Priority: High

This use case explains the manager module functionality of the application.

Table 2 Manager Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 5 Manager Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.5 Chef Use Case

Figure 6 Chef Use case

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Use Case ID: UC-3


Use Case Name: Chef Use Case
Created By: Rana Ali Azeem Date Created: 11.02.2021

Last Updated By: Saqlain Naeem Butt Last Updated Date: 12.02.2021

Actors: Chef
Description: This use case describes how chef will manage his dashboard.

Pre-Conditions: The chef is logged in to the application.


Post-Conditions: Chef successfully gets logged in to his account.

Normal Flow: 1. Chef can check the following results


a. Forget Password
b. Confirmed orders
c. In-process orders
d. Prepared orders
e. Change status of orders
f. logout
Alternative Flows:
Exceptions: Chef is not registered in the database.

Frequency of use: 24/7


Priority: High.

Table 3 Chef Use case

4.1.6 Sequence Diagram

UML Sequence Diagrams are interaction diagrams that show how operations are carried
out. They capture the interaction between objects in the context of a combination.
Sequence Diagrams are time focused and they show the order of the interaction
visually.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.7 Full Sequence Diagram of System

Figure 7 Full Sequence Diagram

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.8 Customer Sequence Diagram

Figure 8 Customer Sequence Diagram

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.9 Manager Sequence Diagram

Figure 9 Manager Sequence Diagram

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.10 Chef Sequence Diagram

Figure 10 Chef Sequence Diagram

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.11 Architecture Diagram

Figure 11 Architecture Diagram

4.1.12 Class Diagram

Figure 12 Class Diagram of System

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.13 ERD Diagram

Figure 13 ERD Diagram

4.2 Tools and Frameworks

4.2.1 Software/ Hardware requirements


a. Users must have an android phone with a minimum of 4.1 Jelly Bean.
b. Users must have access to the internet.
c. Users should have active mobile service on their phones.
d. Manager must have internet access to manage databases.

4.2.2 Implementation Tools and Technologies


a. IDE- Android Studio
b. XML
c. Java
d. Adobe XD
e. Adobe Illustrator

4.3 Verification
Verification of software includes mainly testing o to check if the actual results match the
expected results and to make sure that the software system is defect-free. It covers the
execution of a software component or system component to evaluate one or more
properties of interest.

Different modules of this application are being tested; the following is the detail of
testing.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.1 If User clicks on login when correct Phone number and password
entered.

Test Case Title: Login


Test Engineer: Shan Mustafa
Test Executed By: Rana Ali Azeem
Test Case ID: TC 1

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021
Test Execution 12-02-2021
Date:
Description: Login test case when correct Username and Password
entered.

Pre-Requirement Users must be registered before login.


Test Data:
Steps: Steps to carry out the test. See the step formatting rules
below.
1. Open login activity.
2. Enter Phone number/username.
3. Enter password.
4. Press the login button.
Expected Result: Login succeeds.
Actual Result: Login succeeds.
Status: Pass.

Table 4 Test Case 1

4.3.2 If User clicks on login when incorrect Phone number and pass

Test Case Title: Login

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 2

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
Test Execution 12-02-2021
Date:
Description: Login Test Case when incorrect Phone number /username or
password is entered.
Pre-Requirement Users must be registered before login.

Test Data:

Steps:
Steps to carry out the test. See the step formatting rules below.
1. Open login activity.
2. Enter the incorrect Phone number. OR
3. Enter password.
4.Press the login button
Expected Result: Invalid Phone number /password.

Actual Result: Invalid Phone number /password.

Status: Pass.

Table 5 Test Case 2

4.3.3 If User clicks on login when Phone number and pass fields are
empty

Test Case Title: Login

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 3

Related Functional Requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Login test case when Phone number or Password fields are
empty and users click on login.

Pre-Requirement: The user visits the login page.

Test Data: Use any character Except special case character e.g. (@, ~).

Steps: Steps to carry out the test. See the step formatting rules
below.
1. Open the login page.
2. Press Login Button by leaving the user name and password
fields empty.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
Expected Result: Login failed.

Actual Result: Login failed.


Status: Pass.

Table 6 Test Case 3

4.3.4 When fields are empty

Test Case Title: Update

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 4

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: If a user clicks on the save button while the fields are empty

Pre-Requirement User must login before saving or updating data into the
database.
Test Data:

Steps: Steps to carry out the test. See the step formatting rules
below.
1. Login.
2. Select any data field.
3. Don’t fill fields.
4. Users click on the save button.
Expected Result: Update/Save failed

Actual Result: Update/Save failed

Status: Pass.

Table 7 Test Case 4

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.5 When all field filled correctly

Test Case Title: Update

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 5

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 11-02-2021


Date:
Description: If user click on Update while the fields are entered correctly

Pre-Requirement User must log in before updating his/her Data.

Test Data: Use any character Except special case character e.g. (@, ~).

Steps:
Steps to carry out the test. See the step formatting rules
below.
1. Login.
2. Select the Profile section.
3. Fill all Fields.
4 User clicks on the update button.
Expected Result: Update failed

Actual Result: Update failed

Status: Pass.

Table 8 Test Case 5

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.6 When phone or password is not registered


Test Case Title: phone or password is not registered

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 6

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: If user click on the sign-in button with an unregistered
username or password.
Pre-Requirement: User must register in application before sign in.

Test Data: Use any character Except special case character e.g. (@, ~).

Steps:
Steps to carry out the test. See the step formatting rules
below.
1. Open Student activity.
4. Click on the sign-in button.
Expected Result: Sign in failed. Validation Summary shows that email or
password are not correct
Actual Result: Signup failed. Validation Summary shows that email or
password are not correct.
Status: Pass.

Table 9 Test Case 6

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.7 Customer add food to tray

Test Case Title: Add food to tray

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 7

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Customer makes tray by adding food from categories.

Pre-Requirement: Customer must login into the application.

Steps: Steps to carry out the test. See the step formatting rules
below.
1. Open category.
2. Select food from category.
3. Add food to category.
Expected Result: The food will added to the tray.

Actual Result: As excepted.

Status: Pass.

Table 10 Test Case 7

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.8 Place Order

Test Case Title: Place Order

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 8

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Customer will place the order.

Pre-Requirement Food must be added to tray.

Steps: Steps to carry out the test. See the step formatting rules
below.
1. Open tray which was created.
2. Click on place order button.
3. Select the order method.
4. Click on save button.
Expected Result: Order should be placed

Actual Result: Successful

Status: Pass.

Table 11 Test Case 8

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.9 Check Table Chart

Test Case Title: Check Table Chart

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 9

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Customer will check the table chart.

Pre-Requirement Customer must login to the application.

Test Data:

Steps: Steps to carry out the test. See the step formatting rules below.
1. Login to the system.
2. Click on table Chart button.
Expected Result: Table chart displayed

Actual Result: As excepted

Status: Pass.

Table 12 Test Case 9

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.10 Change order status

Test Case Title: Change order status

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 10

Related Functional requirement


UC/FR/NFR
Test Design Date: 12-02-2021

Test Execution 12-02-2021


Date:
Description: Change order status

Pre-Requirement: Order must be placed from the user.

Test Data:

Steps: Steps to carry out the test.


1. Place order.
2. Order confirmed.
3. Click on change status button.
4. Select the order status.
Expected Result: Order status changed

Actual Result: As excepted

Status: Pass.

Table 13 Test Case 10

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.11 Change Table Status

Test Case Title: Change Table Status

Test Engineer: Shan Mustafa


Test Executed By: Rana Ali Azeem

Test Case ID: TC 11

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021
Test Execution 12-02-2021
Date:
Description: Change table status.
Pre-Requirement: Manager must be login to the application.

Steps: Steps to carry out the test.


1. Click the table chart button.
2. Select the table number.
3. Click the status button.
4. Change the status.
Expected Result: Status should be changed.

Actual Result: As excepted


Status: Pass.

Table 14 Test Case 11

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.12 Upload a Category

Test Case Title: Upload a Category

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 12

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Add a new category of food.

Pre-Requirement: Manager must be login to the application.

Steps: Steps to carry out the test.


1. Open the category tab.
2. Click on add new category button.
3. Add the category details.
4. Click on add button
Expected Result: Category added successfully.

Actual Result: Successful.

Status: Pass.

Table 15 Test Case 12

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.3.13 Delete a Category

Test Case Title: Delete a Category

Test Engineer: Shan Mustafa

Test Executed By: Rana Ali Azeem

Test Case ID: TC 13

Related Functional requirement


UC/FR/NFR
Test Design Date: 11-02-2021

Test Execution 12-02-2021


Date:
Description: Delete a category from food list.

Pre-Requirement: Category must be added.

Steps: Steps to carry out the test.


1. Open category tab.
2. Select a category.
3. Click on delete button.
Expected Result: Category deleted.

Actual Result: Successful.

Status: Pass.

Table 16 Test Case 13

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 5: Results

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1 Presentation of the developed Project

An attractive and user-friendly graphical user interface base system is developed which
was our main concern. In each activity, we had the main concern of the user's point of
view. We have tried to maximum easiness for users. Below are the final snaps of our
developed application.

5.1.1 Admin Panel

Step: Admin Login Screen.

Figure 14 Manager Login

5.1.2 Admin Dashboard

Figure 15 Manager Dashboard

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.3 Manager Add new Category

Step: Manager will add new category to the system

Figure 16 Adding new Category

Figure 17 New Category Added

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.4 Displaying Category list

Figure 18 Category List

5.1.5 Adding new Product to Category

Figure 19 Adding new Product to Category

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 20 Adding new Product

Figure 21 New Product Added

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.6 Displaying product list

Figure 22 Product List

5.1.7 Update Table Status

Manager will add new table chart which will display to the cutomer panel.

Figure 23 Update Table Status

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 24 Table Updated

5.1.8 Displaying Table chart

Figure 25 Table Chart

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.9 Displaying orders

Figure 26 Displaying orders

5.1.10 Customer Registration

Figure 27 Customer Registration

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 28 Customer Registration

Figure 29 Code Verification

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.11 Home Screen

Figure 30 Home Screen

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.12 Food list

Figure 31 Food List

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.13 Food details

Figure 32 Food Details

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.14 Add food to tray

Figure 33 Add food to tray

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 34 Confirmation

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.15 My tray

Figure 35 Tray

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.16 Select Method of delivery

Figure 36 Method of Delivery

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.17 Table Chart

Figure 37 Table Chart

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.18 Payment Method

Figure 38 Payment Method

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.19 Order Cancelation Screen

Figure 39 Order Cancellation

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 6: Conclusion and Future Work

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

6.1 Summary and Conclusion

In this project, we successfully develop a mobile application that serves as a platform for
customers, manager and chef. This application will facilitate the customers in which they
can register their self before logging into the application. Customer can make their tray by
adding the food from the categories offered by the specific restaurant/café. Then it will
further proceed to the make order by clicking on the place order button. To place order
customer has to choose either pre-order or in-restaurant order. Pre-order is the main
feature of this system in which customer can pre-order their food before visiting to the
café/restaurant. Pre-order feature will available only for those who are near to the
café/restaurant or in the range. Customer also provided with the two more options either
dine-in or take away. If customer chooses dine-in he/she must have to select the table first
by checking the table availability from the table chart.
Manager can manage all the activities like order, table chart, send or receive notifications,
changing order status and table status as well. Chef will see the orders he has to prepare
and then it will change the status of orders. Chef will be registered by the manager.
Overall we are trying to give our best to build this application by providing features to
customers, manager and chef.

6.2 Future Work

Technology is changing day by day. In that developed application many techniques, tests,
features, and experiments have been left due to the lack of time. However, in future work
increase the efficiency of this developed application. In that project our main focused was
on developing such a platform where customer, manager and chef will manage their time
and take the food ordering system to another level. By the changing in technology many
of the features which are not incorporated yet can added to this system which will
improve the efficiency and performance.
Following future work can be added to our application.
a. Add an option for customer to send their desired recipes.
b. Develop an application like this for IOS users.
c. Add online payment options (e.g. Bank transfer, Easypaisa etc.)So it will more
reliable.
d. Will add the live video feature so that customer can see the live cooking from the
kitchen.
e. Will manage the all the staff working, their salaries, their duties etc.
f. Will add the timetable for the staff so that they can check their duties.
a.

|The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

References
[1] TechJuice. 2021. 5 Best Food Hunting & Ordering Apps in Pakistan. [online] Available at:
<https://www.techjuice.pk/5-best-food-hunting-ordering-apps-in-pakistan/> [Accessed 28 February
2021].

[2] Smallbiztrends.com. 2021. [online] Available at:


<https://smallbiztrends.com/2018/03/restaurant-ordering-system.html> [Accessed 28 February
2021].

[3] 2021. [online] Available at:


<http://homepage.cs.ujowa.edu/~tinelli/classes/022/Spring15/Notes/chap9.pdf> [Accessed 28
February 2021].

[4] Stack Overflow. 2021. Stack Overflow - Where Developers Learn, Share, & Build Careers.
[online] Available at: <https://stackoverflow.com/> [Accessed 28 February 2021].

[5] Medium. 2021. Android Developers – Medium. [online] Available at:


<https://medium.com/androiddevelopers> [Accessed 28 February 2021].

[6] W3schools.com. 2021. Java Tutorial. [online] Available at:


<https://www.w3schools.com/java/default.asp> [Accessed 28 February 2021].

[7] 2021. [online] Available at: <https://developer.android.com/training/data-storage/sqlite>


[Accessed 28 February 2021].

|The University of Lahore, Chenab Campus

You might also like