You are on page 1of 69

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)
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

2 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

3 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

4 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.

5 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Table of Contents

STATEMENT OF SUBMISSION ...................................................................................... 2


Proofreading Certificate ....................................................................................................... 3
Acknowledgment ................................................................................................................. 4
Abstract ................................................................................................................................ 5
Chapter 1: Introduction and Background ........................................................................... 10
1.1 Introduction: ................................................................................................................. 11
1.2 Background: ................................................................................................................. 11
1.3 Statement of the Problem: ............................................................................................ 12
1.4 Purpose of the Project: ................................................................................................. 12
Chapter 2: Review of the Project ....................................................................................... 13
2.1 Related Technologies ................................................................................................... 14
2.1.1 Websites .................................................................................................................... 14
2.1.2 Mobile Applications.................................................................................................. 14
2.2 Related Projects ........................................................................................................... 14
2.2.1 Tossdown ............................................................................................................ 14
2.2.2 Supermeal ................................................................................................................. 14
2.2.3 Olaround ................................................................................................................... 15
2.2.4 Eatoye ....................................................................................................................... 15
2.2.5 Deliveroo................................................................................................................... 15
2.2.6 MenuDrive ................................................................................................................ 16
2.2.7 Toast POS ................................................................................................................. 16
2.2.8 ChowNow ................................................................................................................. 16
2.2.9 Upserve ..................................................................................................................... 16
2.2.10 Square Point of Sale ................................................................................................ 16
2.2.11 Restolabs ................................................................................................................. 17
2.2.12 NetWaiter ................................................................................................................ 17
2.2.13 CAKE Point of Sale ................................................................................................ 17
Chapter 3: Requirements Engineering ............................................................................... 18
3.1 Requirement Gathering and Analysis .......................................................................... 19
3.2.1 Functional Requirements .......................................................................................... 19
3.2.2 Non-Functional Requirements .................................................................................. 19
Chapter 4: Design and Implementation ............................................................................. 21
4.1 Design .......................................................................................................................... 22
4.1.1 High-level Use case Diagram ................................................................................... 23

6 The University of Lahore, Chenab Campus


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

7 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
5.1.7 Update Table Status .................................................................................................. 54
5.1.8 Displaying Table chart .............................................................................................. 55
5.1.9 Displaying orders ...................................................................................................... 56
5.1.10 Customer Registration ............................................................................................ 56
5.1.11 Home Screen ........................................................................................................... 58
5.1.12 Food list .................................................................................................................. 59
5.1.14 Add food to tray ...................................................................................................... 61
5.1.15 My tray .................................................................................................................... 63
5.1.16 Select Method of delivery ....................................................................................... 64
5.1.17 Table Chart.............................................................................................................. 65
5.1.18 Payment Method ..................................................................................................... 66
5.1.19 Order Cancelation Screen ....................................................................................... 67
Chapter 6: Conclusion and Future Work ........................................................................... 68
6.1 Summary and Conclusion ............................................................................................ 69
6.2 Future Work ................................................................................................................. 69

Table of Figures
Figure 1 the Waterfall Model ............................................................................................. 22
Figure 2 High Level Use case ............................................................................................ 23
Figure 3 Abstract Level Use case ...................................................................................... 24
Figure 4 Customer Use case .............................................................................................. 25
Figure 5 Manager Use case ................................................................................................ 28
Figure 6 Chef Use case ...................................................................................................... 29
Figure 7 Full Sequence Diagram ....................................................................................... 31
Figure 8 Customer Sequence Diagram .............................................................................. 32
Figure 9 Manager Sequence Diagram ................................................................................ 33
Figure 10 Chef Sequence Diagram .................................................................................... 34
Figure 11 Architecture Diagram ........................................................................................ 35
Figure 12 Class Diagram of System .................................................................................. 35
Figure 13 ERD Diagram .................................................................................................... 36
Figure 14 Manager Login .................................................................................................. 50
Figure 15 Manager Dashboard........................................................................................... 50
Figure 16 Adding new Category ........................................................................................ 51
Figure 17 New Category Added ........................................................................................ 51
Figure 18 Category List ..................................................................................................... 52
Figure 19 Adding new Product to Category ...................................................................... 52
Figure 20 Adding new Product .......................................................................................... 53
Figure 21 New Product Added .......................................................................................... 53
Figure 22 Product List ....................................................................................................... 54
Figure 23 Update Table Status ........................................................................................... 54
Figure 24 Table Updated ................................................................................................... 55
Figure 25 Table Chart ........................................................................................................ 55
Figure 26 Displaying orders............................................................................................... 56
Figure 27 Customer Registration ....................................................................................... 56
8 The University of Lahore, Chenab Campus
Eatray (Food Ordering App)
________________________________________________________________________
Figure 28 Customer Registration ....................................................................................... 57
Figure 29 Code Verification .............................................................................................. 57
Figure 30 Home Screen ..................................................................................................... 58
Figure 31 Food List ............................................................................................................ 59
Figure 32 Food Details....................................................................................................... 60
Figure 33 Add food to tray................................................................................................. 61
Figure 34 Confirmation...................................................................................................... 62
Figure 35 Tray.................................................................................................................... 63
Figure 36 Method of Delivery ........................................................................................... 64
Figure 37 Table Chart ........................................................................................................ 65
Figure 38 Payment Method ................................................................................................ 66
Figure 39 Order Cancellation............................................................................................. 67

Table of tables
Table 1 Customer Use case ................................................................................................ 26
Table 2 Manager Use case ................................................................................................. 27
Table 3 Chef Use case........................................................................................................ 30
Table 4 Test Case 1 ............................................................................................................ 37
Table 5 Test Case 2 ............................................................................................................ 38
Table 6 Test Case 3 ............................................................................................................ 39
Table 7 Test Case 4 ............................................................................................................ 39
Table 8 Test Case 5 ............................................................................................................ 40
Table 9 Test Case 6 ............................................................................................................ 41
Table 10 Test Case 7 .......................................................................................................... 42
Table 11 Test Case 8 .......................................................................................................... 43
Table 12 Test Case 9 .......................................................................................................... 44
Table 13 Test Case 10 ........................................................................................................ 45
Table 14 Test Case 11 ........................................................................................................ 46
Table 15 Test Case 12 ........................................................................................................ 47
Table 16 Test Case 13 ........................................................................................................ 48

9 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 1: Introduction and Background

10 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.
11 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 is now entered almost every field in our life, but still its effect is not yet that
much in the food industry, especially the food serving outlets including restaurants,
hotels. Even today, many of the restaurants follow the traditional pen and paper method to
take and manage orders, 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.

12 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 2: Review of the Project

13 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 complete detail on 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 photos from various restaurants,
prices, delivery / delivery options and locations. You can also get discounts and earn
points when ordering online. You can rate and review restaurants and food based on your
knowledge. In addition to ordering food and paying cash on delivery, you can also see a
list of nearby locations that offer exit orders. A complete detail of how to prevent
accidents and losses caused by technology can be found in the literature [1]

Limitations and Bottlenecks

14 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 easy to use app allows users to find food outlets near the city that offer
deals and discounts and get those discounts by scanning code. After collecting key
punches, you will have the right to collect some special rewards called 'kicks' for each
restaurant or product. Further information on 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 was discovered by Rocket Internet a few months ago.
Since then, the app has gotten better than ever! They offer a variety of restaurants with
their latest deals and promotions while also offering home delivery. The app also helps
you find nearby restaurants that offer home delivery services. So you don't have to worry
about finding restaurants or delivering them when you're in an unfamiliar place.
Additionally, the app provides the ability to book a table so you don’t have to worry
about getting a seat. More information on 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 food delivery business which is based in London; it works in more than
200 cities across the country. It is the most famous food delivery app across Europe. It let
the customers to order food from restaurant that don’t have a set-up of their own and
charges a fee from the customer and the restaurant for the service. Users charged as per
their order, whereas restaurants have to pay a commission. Further detail of how to
prevent accidents and losses caused by technology can be found in the literature [1]

15 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

2.2.6 MenuDrive
This is the best option for restaurants looking to create a product ordering experience on
their website. To make a good use out of it, you can send menu of your choice, photos
and other related information directly to MenuDrive and they will create a special menu
for you. You can choose from different payment platforms that provided to you and
connect them to your point of sale or email system to match orders. The monthly plan
starts at $ 90. Further information on how to prevent accidents and losses caused by
technology can be found in the books [2]

2.2.7 Toast POS


Toast offers the latest in point-of-sale restaurant system with online ordering system. This
option is reliable for restaurants using most Toast outlets. The whole system is designed
to work together to help restaurants manage all of their operations in one system, and it
also includes online order reports and delivery systems. Full information on how to avoid
accidents and losses caused by technology can be found in the literature. [2]

2.2.8 ChowNow
This app and the online application are implemented using all formats that your
customers may be using. You can set it up so that people can place orders on your
website, Facebook page and mobile app. So if customers of your restaurant are likely to
use their mobile devices or social media to place orders, ChowNow may be the way to
consider it. The annual plan starts at $ 119 per month, with credit card processing fees.
Full details on how to prevent accidents and losses due to technology can be found in the
literature [2]

2.2.9 Upserve
Upserve is an excellent restaurant system that manages and includes options for bars,
wineries, cafes, bakeries and more. The online ordering system of the company is
implemented with its own point-of-sale system, payment service and mobile application.
In small restaurants, prices start at $ 99 per month. Further more information on how to
prevent accidents and losses from technology, see the literature in the book.[2]

2.2.10 Square Point of Sale


Square is a point of sale solution that offers a one-person order method within the all-
inclusive restaurant. In working, all the commands go into the one place so you can
control it at the same time. This can be a great way for restaurants to create a great
combination of business management and food within. Infect, the company may charges a
transaction fee which is more than the monthly fee, so it may not be as expensive at
restaurants that has a fix price on monthly sales. Further information on how to prevent
accidents and losses caused by technology can be found in the literature [2]

16 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

2.2.11 Restolabs
Restolabs provides an online restaurant ordering program full of helpful features,
including Facebook ordering, multilingual support, and real-time statistics. It's a
compatible interface that allows you to access your menu and directly copy and paste
widgets into your website. The basic package starts at $ 45 per month. More information
on how to prevent accidents and loss caused by technology can be found in the book.[2]

2.2.12 NetWaiter
NetWaiter is an online restaurant marketing platform with integrated online
programming. You can use it to create your custom mobile app and order widget for your
website. The monthly plan, which includes online orders, starts at $ 100 per month. More
information on how to avoid accidents and losses caused by technology can be found in
the books. [2]

2.2.13 CAKE Point of Sale


Cake is an active shop management and management system that includes online
ordering. The cloud-based system allows you to receive orders online and manage them
based on individual orders on the same platform. It generates transaction fees, so it might
be a good idea for small restaurants just starting out. But the cost will increase the more
money you make. More information on how to prevent accidents and losses caused by
technology can be found in the book's literature [2]

17 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 3: Requirements Engineering

18 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

3.1 Requirement Gathering and Analysis

Requirement analysis of our application covers the three most important concepts which
are formulation, requirements gathering and analysis modeling of the system. While
doing formulation, the core need and purpose for application must be identified, and the
categories of users/analyst are to be defined. In the requirements gathering phase, the list
of functional and non-functional requirements is made and interaction scenarios written
from end-users point-of-view are developed. The main concept is to establish a basic
understanding of why the system was created, who will use it, and what resources 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 for user and fewer delays are involved. In
every action-response of the system, there is no immediate delay. In the case of
new activities, it must not take more than 2 seconds to start an activity.

19 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
Application must be responsive enough to evenly send and receive customers,
manager, and chef’s requests.

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.

20 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 4: Design and Implementation

21 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Waterfall-Model

Figure 1 the Waterfall Model

Description
The waterfall model in the software development activity is a relatively linear sequential
design method for specific areas of engineering design. In software development activity,
it is better to choose less iterative and flexible approaches, as progress flows in largely
one direction just like waterfall means downwards, through the phases of conception,
initiation, analysis, design, construction, testing, deployment and maintenance. As shown
in Figure 1 the Waterfall Model

4.1 Design
Design of software 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.

22 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.1 High-level Use case Diagram

Figure 2 High Level Use case

23 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.2 Abstract level Use Case Diagram

Figure 3 Abstract Level Use case

24 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

25 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

26 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.4 Manager Use Case

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

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 checks that the Username is already in use or not.
If not, the system will displays the new account confirmation
page.

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

Frequency of use: 24/7


Priority: High

Table 2 Manager Use case

27 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 5 Manager Use case

28 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.5 Chef Use Case

Figure 6 Chef Use case

29 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 Diagram is interaction diagram which shows how operations are carried
out. This captures the interaction between objects in the context of a combination.
Sequence Diagrams are time focused and they show the order of the interaction
visually.

30 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.7 Full Sequence Diagram of System

Figure 7 Full Sequence Diagram

31 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.8 Customer Sequence Diagram

Figure 8 Customer Sequence Diagram

32 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.9 Manager Sequence Diagram

Figure 9 Manager Sequence Diagram

33 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

4.1.10 Chef Sequence Diagram

Figure 10 Chef Sequence Diagram

34 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

35 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 to check either the actual results match
the expected results or to make sure that the software system is defect and bug 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.

36 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 for carry out this test. See the steps 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

37 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 this test. See the steps 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 for carry out this test. Check the steps formatting rules
below.
1. First open the login page.
2. Press login button by leaving the user name and password

38 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________
fields empty.

Expected Result: Login not successful.

Actual Result: Login not successful.

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 this test. See the steps 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

39 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 this test. See the steps 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

40 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 this test. See the steps 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 is not correct.
Status: Pass.

Table 9 Test Case 6

41 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 this test. See the steps formatting rules
below.
1. Open category.
2. Select food from category.
3. Add food to category.
Expected Result: The food will add to the tray.

Actual Result: As excepted.

Status: Pass.

Table 10 Test Case 7

42 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 this test. See the steps 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

43 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 this test. See the steps 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

44 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

45 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

46 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

47 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

48 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 5: Results

49 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

50 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

51 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

52 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 20 Adding new Product

Figure 21 New Product Added

53 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

54 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 24 Table Updated

5.1.8 Displaying Table chart

Figure 25 Table Chart

55 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

56 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 28 Customer Registration

Figure 29 Code Verification

57 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.11 Home Screen

Figure 30 Home Screen

58 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.12 Food list

Figure 31 Food List

59 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.13 Food details

Figure 32 Food Details

60 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.14 Add food to tray

Figure 33 Add food to tray

61 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Figure 34 Confirmation

62 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.15 My tray

Figure 35 Tray

63 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.16 Select Method of delivery

Figure 36 Method of Delivery

64 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.17 Table Chart

Figure 37 Table Chart

65 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.18 Payment Method

Figure 38 Payment Method

66 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

5.1.19 Order Cancelation Screen

Figure 39 Order Cancellation

67 The University of Lahore, Chenab Campus


Eatray (Food Ordering App)
________________________________________________________________________

Chapter 6: Conclusion and Future Work

68 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.

69 The University of Lahore, Chenab Campus

You might also like