0% found this document useful (0 votes)
121 views46 pages

2018490212-Restaurant Website-Report

Uploaded by

shami Cheema
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
121 views46 pages

2018490212-Restaurant Website-Report

Uploaded by

shami Cheema
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

Chongqing University of Science and Technology

Graduation Project Development of Website for


a Restaurant

Title Development of Website for a Restaurant

College School of Intelligent Technology and Engineering

Major Computer Science & Technology

Student Name Ehtsham Ali Cheema

Student Number 2018490212

Supervisor Chengyaun Chen

Reviewer

13 / 05 / 2022
Declaration of originality of students' graduation project development of
website for a restaurant

I declare with my reputation: the submitted graduation project development of website for a
restaurant is the design of restaurant system work and results obtained under the guidance of
the supervisor. The project development of website for a restaurant quotes literature, data,
drawings and materials from other people have been clearly marked, the conclusions and
results in the development of website for a restaurant are completed independently by myself,
and do not include the achievements of others and the use of their materials for obtaining
degrees or certificates from Chongqing University of Science and Technology or other
educational institutions. The participant who work with me have clearly stated in the paper
and expressed gratitude for any contributions to this design restaurant system.

Author: Ehtsham Ali Cheema

11 / 05 / 2021
CQUST Undergraduate Graduation Project Abstract

Abstract

This report documents the process of designing, developing and testing a website to be used
in a restaurant; usually given the name web of restaurant management. The restaurant
management website is there to help customer to order their desired food via a simple website
without having to leave their homes and beside this restaurant staff can manage their food and
orders. The services that are provided is food ordering and online check food menu by the
customer through the website. With this website online, ordering and reservation management
will become easier and systematic to replace traditional system where are still using paper.
Furthermore, this system is applicable any time and where also customer. The purpose of a
restaurant website is to help customers choose you over other eateries. Make it very easy for
people to contact and visit restaurant website. This report was written by Ehtsham Ali Cheema
as part of his final year project.

Keywords:
Online Restaurant menu, Food ordering, Food Menu management, Online Restaurant
management System, Web Portal for Restaurant, Food management website,

I
CQUST Undergraduate Graduation Project 摘要

摘要

Abstract in Chinese…
本报告记录了设计、开发和测试用于餐厅的网站的过程;通常被命名为餐厅管理网络。
餐厅管理网站可以帮助客户通过一个简单的网站订购他们想要的食物,而无需离开他们
的家,并且在这家餐厅旁边,员工可以管理他们的食物和订单。提供的服务是客户通过
网站订购食物和在线查看食物菜单。随着这个网站的上线,订购和预订管理将变得更加
容易和系统化,以取代仍在使用纸张的传统系统。此外,该系统适用于任何时间和任何
地点的客户。餐厅网站的目的是帮助客户选择您而不是其他餐厅。让人们很容易联系和
访问餐厅网站。这份报告由 Ehtsham Ali Cheema 撰写,是他最后一年项目的一部分。
关键词:

在线餐厅菜单,食品订购,食品菜单管理,在线餐厅管理系统,餐厅门户网站,食品管理网站,

II
CQUST Undergraduate Graduation Project Contents

Contents

Abstract………………………………………………………………………………………I
摘要……………………………………………………………………………………………II
1 Introduction ………………………………………………………………………………………… 1
1.1 Chapter Overview…………..……..…….……………………………………………… 1
1.2 The Problem…… ……………...……………………………………………………… 1
1.3 Project Objective …….……………….…………………………………………………… 1
1.3.1 Motivation………..…..........…… …..……………………………………… 1
1.3.2 Aim of Software……………………………………………………….…....2
1.4 Project Proposal …….…….…….……………………………………………………… 2
1.5 Summary of Chapter …….……..…………………………………………………………2
2 Background………………………………………………………………………………3
2.1 Chapter Overview…… …………..……………………………………………………… 3
2.2 Existing Systems …….…………..…………………………………………………… 3
2.3 Platform Choice …….…………..…………………………………………………… 3
2.4 Software Choice …….…………..…………………………………………………… 4
2.5 Systems Model …….…………..…………………………………………………… 4
2.6 Summary of Chapter …….…………..……………………………………………………4
3 Analysis……………………………………………………………………………………5
3.1 Chapter Overview…… …………..……………………………………………………… 5
3.2 Stakeholder identification …….…………..……………………………………………… 5
3.3 Use Cases…………..…….…………..…………………………………………………… 5
3.4 Features…………. …….…………..…………………………………………………… 6
3.5 Measureable Goals and Requirements……………………………………………… 6
3.5.1 Functional Requirements …….…………………….………………………………6
3.5.2 Non Functional Requirements …………………….……………………………… 7
3.6 Structure of System …….…………..…………………………………………………… 8
3.7 Product Function… …….…………..…………………………………………………… 8
3.7.1 Web Ordering System Module…….……………….………………………………8
3.7.2 Menu Management System Module …………….………………………………9
3.7.3 Order Retrieval System Module…………………………..………………………9
3.8 Chapter Summary …….…………..…………………………………………………… 9

III
CQUST Undergraduate Graduation Project Contents

4 Design……………………………………………………………………………………10
4.1 Chapter Overview………………..……………………………………………………… 10
4.2 Introduction……… …….…………..……………………………………………… 10
4.3 Component Diagram …….…………..…………………………………………………… 10
4.4 Data Storage………….…….……….…………………………………………………… 10
4.4.1 RDBMS (relational database management system) .…………………………10
4.4.2 RDBMS vs. DBMS ………………………….………….…………………………11
4.4.3 Features of RDBMS………………………………………………………………11
4.4.4 RDBMS Operations………………………………… ……………………… 12
4.4.5 Advantages of RDBMS…………………………….. ………………………13
4.4.6 RDBMS Applications………………………………. ……………………… 13
4.4.7 Normalization………………………………… ………..…………………… 14
4.4.8 Database Design…………………………………………..……………………15
4.5 User Interface (UI) …….…………..………………………………………………… 16
4.5.1 Significance of UI…………..…………………… .…………………………16
4.5.2 Homepage UI……..………………………….………….…………………………17
4.5.3 Admin UI………… ……………………………………………………………… 18
4.6 Chapter Summary …….…………..………………………………………………… 19
5 Implementation……………………………………………………………………………20
5.1 Chapter Overview………………..……………………………………………………… 20
5.2 View………..……… …….…………..……………………………………………… 20
5.2.1 Homepage…….….…………..……………… .…………………………… 21
5.2.2 Categories…...…….. ………………………….…….…………………………… 22
5.3.3 Menu…………… ………………………………………………..…………… 23
5.3 Implementation of order form ….…………..………………….………………… 23
5.4 Categories feature function ……… /……………………… ………………… 25
5.5 C h apt er S u m m ar y … … . … … … … . . … … … … … … … … … … … … … … … … … 2 5
6 Testing……………………………………………………………………………………26
6.1 Chapter overview. … …….…………..…………………………………………… 26
6 . 2 Te s t & R e s u l t s … … … … … … … / … … … … … … … … … … … … … … … … 2 6
6.2.1 Test 01…….….…………..……………… . ……… ………… ……… … 27
6 . 2. 2 Test 0 2 .. ……. . … … … … … … … … … … . … … . … … . … … … … … … … … 2 8
6.2.3 Test 03……… … … … … … … … … … … … … … … … … … … . . … … … … … 2 9
6 . 2. 4 Test 0 4 .. ……. . … … … … … … … … … … . … … . … … . … … … … … … … … 3 0
6.2.5 Test 05……… … … … … … … … … … … … … … … … … … … . . … … … … … 3 2
IV
CQUST Undergraduate Graduation Project Contents

6.3 Testing for Search Engine Optimization (SEO) …….…………………… 33


6.4 Chapter Summary………………/…………………………………………34
7 Conclusion………………………………………………………………………………35
7.1 Chapter Overview………………..……………………………………………………… 35
7.2 Achievement of the Project…… ………………………………………………… 35
7.3 Limitations of the S ystem ….… ………..………………….………………… 35
7.4 Future Recommendations ……………..…………………..………………35
7.5 Personal Reflection …….…………..…………………………………………… 36
7.5.1 Developing Research Capabilities…….……..…… …………………… 36
7.5.2 Developing Programming Capabilities…...……. ……………………… 36
7.6 Concluding Remarks………………………………………………………36
References……………………………………………………………………………………………… 37
Acknowledgements……………………………………………………………………………………38

V
CQUST Undergraduate Graduation Project Introduction

1 Introduction

1.1 Chapter Overview


This chapter introduces the project by identifying the difficulties that restaurants face, the
primary goals that the system aims to fulfill, and a quick overview of previous solutions.

1.2 The Problem


According to a Horizons research study [1], there were slightly over 26,000 restaurants in the
UK in 2006, with 734 million meals supplied. Because the restaurant industry is valued £7.61
billion, any restaurant that builds a strong reputation may become a highly successful and
profitable business. Many organizations have the challenge of not just attracting new clients
but also maintaining existing ones. Many people say that an existing client is worth more to a
company than a new customer since the expense of attracting a new customer might be up to
five times the cost of keeping an existing customer. In the restaurant industry, a client is more
likely to return if they got exceptional customer service and tasty cuisine. However, if they
had to wait an inordinate period of time or if the order was incorrect, the client is unlikely to
return. As a result, a remedy to this problem would be to reduce order and bill problems,
eliminate delays, and encourage teamwork and communication within the team. The aims of
the suggested solution will be discussed in the next section.

1.3 The Project's Objective


The goal of this project is to create a website restaurant that incorporates all of the knowledge
and techniques learned in the field while avoiding frequent development blunders. All
software engineering projects require project management, and sticking to a project plan is
equally important. One of the primary goals of every company is to maximize profit by
increasing efficiency and lowering overheads while maintaining customer satisfaction. Many
restaurants already communicate between the restaurant and kitchen using a paper-based
system, which may be proved to be one of the least efficient methods despite the fact that this
strategy is used in lucrative restaurants, there are a few issues that might be considered as
diminishing the restaurant's efficiency:

 Miscommunication caused by handwriting.


 Unmanageable order logging.
 Inefficient restaurant-kitchen communication.
 Difficult order tracking.
 Difficult of time management.
 Difficult menu management.
 Limited statistical output.

These issues may be avoided or solved by using a website for restaurant management system,
resulting in a profit boost.

1.3.1 Motivation
The motivation for designing this application came because my family is involved in the food
business and I personally do not like waiting for long in the store or to have to call store to
place an order especially during the peak lunch or dinner hours. Moreover, I value recent
1
CQUST Undergraduate Graduation Project Introduction

learning about the HTML,CSS and PHP Programming languages as well as seeing how
powerful and dynamic they are when it comes to web designing and applications. The
languages used to build this website are HTML,CSS and PHP at client facing whereas
MYSQL database at the back-end because I found them to be extremely useful while working
on the technologies.

1.3.2 Aim of the Software


This software is developed to help computer science students to learn about the Website
designing using PHP and HTML from their basic capabilities to build a complete working
application from scratch. Further, it gives insight about how GUI interacts with server-side
language, PHP, and finally with the MYSQL database.

1.4 Project Proposal


The purpose of this project is to develop a restaurant website to provide service facility to
restaurant and also to the customer. The services that are provided is food ordering and online
check food menu by the customer through the website. With this website online, ordering and
reservation management will become easier and systematic to replace traditional system
where are still using paper. Furthermore, this system is applicable any time and where also
customer. The purpose of a restaurant website is to help customers choose you over other
eateries

1.5 Summary of Chapter


The rest of this report consists of the following chapters:
 Background: Background investigation into the problem.
 Requirement Analysis: Requirements of the system including stakeholder
identification, list of features and tabulated requirements.
 Design: Project design process using several diagrammatic techniques.
 Implementation: Discusses the implementation of the software with the help of
diagrams and pseudocode.
 Results: Illustrates the system using screenshots.
 Testing: Documents how the system was tested.
 Conclusion: Project conclusion with future development ideas.

2
CQUST Undergraduate Graduation Project Background and Related work

2 Background and Related Work

2.1 Chapter Overview


This chapter gives an insight to Restaurant website similar in nature to that of the one being
developed in this project. It also gives a brief introduction to the importance of requirement
gathering, a discussion on the development methodologies available as well as a justification
on the platform and software used in this project.

2.2 Existing Systems


This Case study looks at the problem of setting up a fast food restaurant. In existing system
there are few problems:
• For placing any orders customers have to visit hotels or restaurants to know about
food items and then place order and pay. In this method time and manual work is
required.

• While placing an order over the phone, customer lacks the physical copy of the menu
item, lack of visual confirmation that the order was placed correctly.

• Every restaurant needs certain employees to take the order over phone or in-person, to
offer a rich dining experience and process the payment. In today’s market, labor rates
are increasing day by day making it difficult to find employees when needed.

To address this problem, I suggest a Restaurant Website System, which was initially created
for small businesses such as college cafeterias, fast food restaurants, and take-out, but may be
used in any restaurant industry.

The key benefit of my system is that it dramatically simplifies the ordering process for both
the client and the restaurant, as well as greatly reducing the workload on the restaurant's end,
because the whole ordering process is automated.

Anticipated Benefits are:


• This will minimize the number of employees at the back of the counter.
• The system will help to reduce labor cost involved.
• The system will be less probable to make mistake, since it’s a machine.
• This will avoid long queues at the counter due to the speed of execution and number
of optimum screens to accommodate the maximum throughout.

2.3 Platform Selection


The experience of the programmers and the sort of software to be produced are usually the
determining factors in selecting a suitable platform. A web application for the restaurant
management system might be created a standalone program, but it must be widely supported
and platform agnostic. Therefore the choice was made to develop since the developer has little
or no expertise with web development. A self-contained application the next step was to
choose a programming language, which the developer had done before. Knowledge of HTML,

1
CQUST Undergraduate Graduation Project Background and Related work

CSS, and PHP for Database MYSQL is required for this system.

2.4 Software Choice


The usage of a Code editor can improve a programmer's productivity when developing a
website. A code editor is a piece of software that includes a source code editor, compiler, and
debugging tools, all with the goal of assisting programmers. Simple notepads are not precisely
Code editors, but with the help of a compiler, they may do the same function.
Visual studio and Notepad++ are the two most popular Code editors for website development
since they are both free, support several platforms, and have numerous features like as
integrated version control and debugging tools. Because the developer has better expertise
and understanding of the visual studio graphical user interface, Visual Studio was chosen as
the Code Editor for this project.

2.5 System Model:

Figure 2.1 System Model

In system Model we can easily understand the main functions behind our project. In Figure
2.1 its showing that how front end work and connect to back end.

2.6 Chapter Summary


This chapter has given examples of systems that are directly related to this project as well as
general information about requirement gathering and development methodologies. The next
chapter starts the process of the development methodology by generating the requirements of
the system.

2
CQUST Undergraduate Graduation Project Analysis

3 Analysis
3.1 Chapter Overview
This chapter will look about stakeholder and project analysis, its importance, the different
types of project analysis, and lastly, how you can implement it using the right tools.

3.2 Stakeholder identification


As defined in the Business Dictionary
A stakeholder could be a person, group, organization that has direct or indirect stake in an
organization because it can affect or be affected by the organization’s actions, objectives
and policies.
Hence, stakeholders can be split into two groups; internal and external with each stakeholder
contributing directly or indirectly towards the business activities.
As an example, any system were there exists customer communication, that customer will
be a non-financial beneficiary stakeholder. According to an article written by Ian Alexander
[2], the person, group, organization, or system is a stakeholder if they can be defined by any
one of the following four questions:

Who needs to be consulted on the scope of this project?


Who has an input to the budget of this project?
Who can support or harm this project politically?
Who can provide guidance on the usability, functionality, and required qualities (reliability,
safety, lifetime, maintainability) of the system under development?
Therefore using these 4 questions as a guide, we can generate a list (Table 3.1) of the
stakeholders in this project.
3.3 Use Cases
A use case diagram that is part of the Unified Modelling Language (UML) gives a graphical
overview of the functionality of a system. A use case diagram consists of actors that are
normally the stakeholders of the system and their use cases commonly defined as goals.

Table 3.1: A table showing the stakeholders of the project.

Stakeholder Role

Ehtsham Ali Project Developer

Chengyaun Chen Project Supervisor

Admin Management User of the management application

Waiters User of the restaurant application

Customer Indirect user of system

1
CQUST Undergraduate Graduation Project Analysis

Figure 3.1 shows several use case scenarios of the system that convey how the stakeholders
interact with the features to achieve a business requirement. The use case scenarios from
figure 3.1 can be found in Appendix B. The use case diagram is designed to be sequential so
by following the use cases down the spine, one can follow the major steps of an order and
several post features to query the data.

3.4 Features
An important part of requirements gathering is the production of a list of system features.

 Communication of data between each application.


 Minimum click for web GUI design for efficient ordering.
 Meal category options.
 Interface to orders.
 Ability to add description of food.
 Interface to maintain and manage the menus.
 Flexible grid design to fit any screen size.
 Admin login functionality.
 Interface to showing total Order.
 Interface to update status of order
 Ability to show total revenue.
 Ability to show image of food.

3.5 Measureable Goals and Requirements


The measurable goals and requirements of the system are a list of manageable requirements
and goals for each application. The software requirements specification is a complete list of
requirements to be designed and developed and can take the form of functional or
non-functional requirements.

3.5.1 Functional Requirements


A functional requirement is a requirement that, when satisfied, will allow the user to perform
some kind of function. The functional requirements of the kitchen, management and order
application can be found in tables 3.2, 3.3 and 3.4 respectively. The priority value is in the
range from 1 to 3 where 1 is high priority and 3 is low priority.

Table 3.2 Front End GUI

Requirements Priority
Organized display Food menus. 1
Organized display Food Category 1
Order Confirmation form 2

2
CQUST Undergraduate Graduation Project Analysis

Table 3.3 Back End/Admin Management System GUI


Requirements Priority
Ability to display the feature category 1
Ability to add new category 1
Ability to add new food in menu 1
Ability to edit, remove food menu 2
Ability to edit, remove category 2
Ability to add description of food 3
Ability to show total revenue 3
Ability to add, remove, edit admin user 1

Table 3.4 Order Management System GUI


Requirements Priority
Ability to display the order status 1
Ability to update status of an order 1
Ability to view Customer detail 1
Ability to get order date, quantity 2
Ability to change customer detail 2

3.5.2 Non-Functional Requirements


Non-functional requirements are usually some form of constraint or restriction that must be
considered when designing the solution. The non-functional requirements of the front end,
admin management and order application can be found in tables 3.5, 3.6 and 3.7 respectively.
The priority value is in the range from 1 to 3 where 1 is high priority and 3 is low priority

Table 3.5 Front End GUI


Requirements Priority
Ability to interact with MYSQL database 1
Update Display feature category 1
Mean of refreshing menu 2
Mean of refreshing menu 2

3
CQUST Undergraduate Graduation Project Analysis

Table 3.6 Back End/Admin Management System GUI


Requirements Priority
Ability to interact with MYSQL database 1
Mean of refreshing menu 1
Mean of refreshing category 1
Only Accessible to staff management 1

Table 3.7 Order Management System GUI


Requirements Priority
Ability to interact with the MySQL database. 1
Mean of update food order delivered 2
Mean of update food order cancelled 2
Mean of update food order on delivery 2
Mean of update food order status ordered 2

3.6 Structure of System


The structure of the system can be divided into 3 main logical components:
• Website Order System (Front End)-provides the functionality for customers to place their
order and supply necessary details.

• Menu Management (Database System) -allows the restaurant to control what can be ordered
by the customers

• Order Retrieval System/Admin System (Back End)-This is a final logical component.


Allows restaurant to keep track of all orders placed or change anything in website. This
component takes care of order retrieving and displaying order information.

3.7 Product Function:

The Online Food Order System application would have the following basic functions:

3.7.1 Web Ordering System Module

This module provides the functionality for customers to place their order and supply
necessary details. Users of the system, namely restaurant customers, must be provided the
following functionality:

• Navigate the restaurant’s menu.


• Select an item from the menu.
4
CQUST Undergraduate Graduation Project Analysis

• Add an item to their current order.


• Review their current order.
• Place an order.
• Receive confirmation in the form of an order number.

3.7.2 Menu Management System Module

This module provides functionality for the power user-Administrator only. It will not be
available to any other users of the system like Restaurant Employees or Customers.

Using a graphical interface, it will allow an Admin to manage the menu that is displayed to
users of the web ordering system:

• Add/update/delete food category to/from the menu.


• Add /update/delete food item to/from the menu.
• Update price for a given food item.
• Update food order status.
• Update additional information (description, photo, etc.) for a given food item

This is the simplest module out of all 3 modules. It is designed to be used only by restaurant
employees, and provides the following functions:

3.7.3 Order Retrieval System Module

• Retrieve new orders from the database.


• Display the orders in an easily readable, graphical way

3.8 Chapter Summary


This chapter has discussed the requirements of the system and the development methodology
that will be used throughout this project. The design of the system is documented in the next
chapter

5
CQUST Undergraduate Graduation Project Design

4 Design
4.1 Chapter overview
This chapter will focus on the design of the system using diagrams to illustrate graphically
certain sections of the software system.

4.2 Introduction
This project has been designed using numerous diagrammatic techniques. The most general
modelling language to describe both the structure and behavior of a software system is
Unified Modelling language (UML).
The Unified Modeling Language™ (UML®) is a standard visual modeling language intended
to be used for
 modeling business and similar processes,
 analysis, design, and implementation of software-based systems
UML is a common language for business analysts, software architects and developers used to
describe, specify, design, and document existing or new business processes, structure and
behavior of artifacts of software systems.
Use case diagrams have already been used in the requirements analysis as a way to
graphically overview the order process within the system. Other diagrams from the UML
family are used in the design stage to show the structure and behavior of numerous
sophisticated design features.

4.3 Component Diagram


A component diagram is part of UML and its main purpose is to show the structural
relationship between components in the system. A component diagram is useful for this
system as it shows the higher architecture, as shown in figure 4.1.

4.4 Data Storage


Because the restaurant management system will be constructed around data storage, selecting
the most appropriate persistent data storage is important to the project's success, and we may
infer that a flat file storage method will be insufficient. Relational database management
systems (RDBMS) and database management system (DBMS) are the two most used methods
of permanent data storage. In general, databases store sets of data that can be queried for use
in other applications. A database management system supports the development,
administration and use of database platforms.

4.4.1 RDBMS (relational database management system)


A relational database management system (RDBMS) is a collection of programs and
capabilities that enable IT teams and others to create, update, administer and otherwise
interact with a relational database. RDBMS store data in the form of tables, with most
commercial relational database management systems using Structured Query Language (SQL)
to access the database. However, since SQL was invented after the initial development of the
relational model, it is not necessary for RDBMS use.

The RDBMS is the most popular database system among organizations across the world. It
provides a dependable method of storing and retrieving large amounts of data while offering a
combination of system performance and ease of implementation.

1
CQUST Undergraduate Graduation Project Design

4.4.2 RDBMS vs. DBMS


In general, databases store sets of data that can be queried for use in other applications. A
database management system supports the development, administration and use of database
platforms.

An RDBMS is a type of database management system (DBMS) that stores data in a


row-based table structure which connects related data elements. An RDBMS includes
functions that maintain the security, accuracy, integrity and consistency of the data. This is
different than the file storage used in a DBMS.

Other differences between database management systems and relational database management
systems include:

 Number of allowed users. While a DBMS can only accept one user at a time, an
RDBMS can operate with multiple users.
 Hardware and software requirements. A DBMS needs less software and hardware
than an RDBMS.
 Amount of data. RDBMS can handle any amount of data, from small to large, while a
DBMS can only manage small amounts.
 Database structure. In a DBMS, data is kept in a hierarchical form, whereas an
RDBMS utilizes a table where the headers are used as column names and the rows
contain the corresponding values.
 ACID implementation. DBMS do not use the atomicity, consistency, isolation and
durability (ACID) model for storing data. On the other hand, RDBMS base the
structure of their data on the ACID model to ensure consistency.
 Distributed databases. While an RDBMS offers complete support for distributed
databases, a DBMS will not provide support.
 Types of programs managed. While an RDBMS helps manage the relationships
between its incorporated tables of data, a DBMS focuses on maintaining databases
that are present within the computer network and system hard disks.
 Support of database normalization. An RDBMS can be normalized, but a DBMS
cannot.
4.4.3 Features of RDBMS
Elements of the relational database management system that overarch the basic relational
database are so intrinsic to operations that it is hard to dissociate the two in practice.

The most basic RDBMS functions are related to create, read, update and delete operations --
collectively known as CRUD. They form the foundation of a well-organized system that
promotes consistent treatment of data.

The RDBMS typically provides data dictionaries and metadata collections that are useful in
data handling. These programmatically support well-defined data structures and relationships.
Data storage management is a common capability of the RDBMS, and this has come to be
defined by data objects that range from binary large object -- or blob -- strings to stored
procedures. Data objects like this extend the scope of basic relational database operations and
can be handled in a variety of ways in different RDBMS.

2
CQUST Undergraduate Graduation Project Design

The most common means of data access for the RDBMS is SQL. Its main language
components comprise data manipulation language and data definition language statements.
Extensions are available for development efforts that pair SQL use with common
programming languages, such as the PHP, HTML and .NET.

RDBMS use complex algorithms that support multiple concurrent user access to the database
while maintaining data integrity. Security management, which enforces policy-based access,
is yet another overlay service that the RDBMS provides for the basic database as it is used in
enterprise settings.

RDBMS support the work of database administrators (DBAs) who must manage and monitor
database activity. Utilities help automate data loading and database backup. RDBMS manage
log files that track system performance based on selected operational parameters. This enables
measurement of database usage, capacity and performance, particularly query performance.
RDBMS provide graphical interfaces that help DBAs visualize database activity.

While not limited solely to the RDBMS, ACID compliance is an attribute of relational
technology that has proved important in enterprise computing. These capabilities have
particularly suited RDBMS for handling business transactions.

As RDBMS have matured, they have achieved increasingly higher levels of query
optimization, and they have become key parts of reporting, analytics and data warehousing
applications for businesses as well. RDBMS are intrinsic to operations of a variety of
enterprise applications and are at the center of most master data management systems.

4.4.4 RDBMS Operation


As mentioned before, an RDBMS will store data in the form of a table. Each system will have
varying numbers of tables with each table possessing its own unique primary key. The
primary key is then used to identify each table.

Within the table are rows and columns. The rows are known as records or horizontal entities;
they contain the information for the individual entry. The columns are known as vertical
entities and possess information about the specific field.

Before creating these tables, the RDBMS must check the following constraints:

 Primary keys -- this identifies each row in the table. One table can only contain one
primary key. The key must be unique and without null values.
 Foreign keys -- this is used to link two tables. The foreign key is kept in one table and
refers to the primary key associated with another table.
 Not null -- this ensures that every column does not have a null value, such as an
empty cell.
 Check -- this confirms that each entry in a column or row satisfies a precise condition
and that every column holds unique data.
 Data integrity -- the integrity of the data must be confirmed before the data is created.
Assuring the integrity of data includes several specific tests, including entity, domain,
referential and user-defined integrity. Entity integrity confirms that the rows are not
duplicated in the table. Domain integrity makes sure that data is entered into the table based
3
CQUST Undergraduate Graduation Project Design

on specific conditions, such as file format or range of values. Referential integrity ensures that
any row that is re-linked to a different table cannot be deleted. Finally, user-defined integrity
confirms that the table will satisfy all user-defined conditions.

4.4.5 Advantages of RDBMS


The use of an RDBMS can be beneficial to most organizations; the systematic view of raw
data helps companies better understand and execute the information while enhancing the
decision-making process. The use of tables to store data also improves the security of
information stored in the databases. Users are able to customize access and set barriers to
limit the content that is made available. This feature makes the RDBMS particularly useful to
companies in which the manager decides what data is provided to employees and customers.

Furthermore, RDBMS make it easy to add new data to the system or alter existing tables
while ensuring consistency with the previously available content.

Other advantages of the RDBMS include:

 Flexibility -- updating data is more efficient since the changes only need to be made in
one place.
 Maintenance -- database administrators can easily maintain, control and update data in
the database. Backups also become easier since automation tools included in the
RDBMS automate these tasks.
 Data structure -- the table format used in RDBMS is easy to understand and provides
an organized and structural manner through which entries are matched by firing
queries.
On the other hand, relational database management systems do not come without their
disadvantages. For example, in order to implement an RDBMS, special software must be
purchased. This introduces an additional cost for execution. Once the software is obtained, the
setup process can be tedious since it requires millions of lines of content to be transferred into
the RDBMS tables. This process may require the additional help of a programmer or a team
of data entry specialists. Special attention must be paid to the data during entry to ensure
sensitive information is not placed into the wrong hands.

Some other drawbacks of the RDBMS include the character limit placed on certain fields in
the tables and the inability to fully understand new forms of data -- such as complex numbers,
designs and images.

Furthermore, while isolated databases can be created using an RDBMS, the process requires
large chunks of information to be separated from each other. Connecting these large amounts
of data to form the isolated database can be very complicated.

4.4.6 RDBMS Applications

Relational database management systems are frequently used in disciplines such as


manufacturing, human resources and banking. The system is also useful for airlines that need
to store ticket service and passenger documentation information as well as universities
maintaining student databases.

Some examples of specific systems that use RDBMS include IBM, Oracle, MySQL,
4
CQUST Undergraduate Graduation Project Design

Microsoft SQL Server and PostgreSQL. In this project MySQL is choose for database.

Figure 4.1 Most Popular database system Source 2021 Survey by Stack overflow

The next decision to make was the type of RDBMS to utilize. As previously said, there are
other open source RDBMSs from which to pick, however MySQL was chosen because to its
extensive expertise. Figure 4.1 depicts how competitive the performance of various RDBMSs
is.

4.4.7 Normalization
Normalization is a database design approach that eliminates undesired features like as
Insertion, Update, and Deletion Anomalies. Normalization rules break huge tables into
smaller tables and use relationships to connect them. The goal of SQL normalization is to
minimize duplicate (repetitive) data and guarantee logical data storage.
With the release of the First Normal Form, the relational model's developer Edgar Codd
presented the notion of data normalization, which he continued to expand with the Second
and Third Normal Forms. Later, he collaborated with Raymond F. Boyce to establish the
Boyce-Codd Normal Form theory.

Here is a list of Normal Forms in SQL:

 1NF (First Normal Form)


 2NF (Second Normal Form)
 3NF (Third Normal Form)
 BCNF (Boyce-Codd Normal Form)
 4NF (Fourth Normal Form)
 5NF (Fifth Normal Form)
 6NF (Sixth Normal Form)
The first, second, and third normal forms are the foundations of a well-structured relational
5
CQUST Undergraduate Graduation Project Design

database and are usually followed by a well-designed database.


 First norm: Every attribute is atomic or single valued therefore there are no repeating
fields.
 Second norm: All attributes not part of the primary key must be dependent on the full
key.
 Third norm: There must be no transitive determinants, or each attribute that is not part
of the key must be determined only by the key.
Finally for the database to be in the desired Boyce-Codd normal form, all tables must abide
by the first, second and third normal forms and must not have any determinants that are not
candidate keys for the table.

4.4.8 Database design


Database design is the organization of data according to a database model. The designer
determines what data must be stored and how the data elements interrelate. With this
information, they can begin to fit the data to the database model.[1] Database management
system manages the data accordingly.

Database design involves classifying data and identifying interrelationships. This theoretical
representation of the data is called an ontology. The ontology is the theory behind the
database's design.

Figure 4.2 Database Design made with Smart Draw

6
CQUST Undergraduate Graduation Project Design

Figure 4.4 Database Design

4.5 User Interface (UI)

User Interface (UI) Design is the link between users and your website. It includes the basic
design elements that need to be present in order to for someone to navigate your site and
make decisions. It is the ever-evolving relationship between a person and the system that they
are using. It includes the way that your website interacts with users, the overall design and
how information is presented. There are many different ways that you can look at user
interface, but the basics always include the communication from a product to the user and
vice versa. UI Design is all about structure, user manipulation and communication.

This is one of the reasons it’s so important that you pay close attention to it. It is the basic
building blocks of how your website is set up and functions when visited by your target
audience. If it doesn’t go smoothly, problems tend to follow. Some of the elements involved
in User Interface Design include the input controls, navigational components, informational
components and containers. The devil is in the details, as they say. Buttons, lists, toggles,
icons, breadcrumbs, tags and more also play a huge role. It is the way that you design your
site from the back-end so that your audience can have a seamless, and enjoyable, front-end
technology experience.

The user interface of the system should be responsive. So, the interface can adopt any screen
size. As the system can be accessed by devices with large screen (e.g. desktop computer,
smart television browser) as well as devices with small screen (e.g. smart phone, tablet), every
page of the application is designed for two types of screen differently.

4.5.1 Significance of UI
User Interface Design is one of the reasons that your website will start to see an influx in
traffic. It draws people in and keeps them there. It is what makes people recommend your site
and become loyal customers. Regardless of what anyone says, it should never be overlooked.
One thing that takes people by surprise is how big of an impact even the smallest adjustments
in UI Design can have. For instance, did you know that the shape of a button could determine
whether or not someone knows how to accomplish a task? It is a crazy phenomenon to think
about, but it’s true. People have certain instincts based on visual details that play into how

7
CQUST Undergraduate Graduation Project Design

they interact with a website and web and software development companies need to take these
into consideration. Design speaks to people and should be taken seriously if you want to be
successful

In addition to basic design changes like shapes of buttons and color schemes, chances are
people won’t stay on your site if it’s difficult to interact with. When people visit your website,
their user experience should be one of your top priorities. When people have a good
experience on your site, the conversion rates are higher and they tend to tell more people
about it. This means more chances to get your sales up and even higher opportunities to grow
your customer base. When people have a bad experience on your site, the chances of your
product or company being rejected increases exponentially.

This is especially true if you rely on Internet marketing to get in touch with most of your
target audience. Simply put, UI Design is important because without it you’d probably have to
resort to printing flyers and making cold calls. People make snap judgments and when they
visit your site, they’d rather spend 30 seconds opening a new site than meddling around on a
difficult one. If your customer base finds your website too complicated, confusing or difficult
to use/navigate, an otherwise extraordinary product can easily fail1. People want to be able to
understand things easily, which is why most physical products can be figured out without
digging through a 1,000-page manual. Making your site’s UI Design understandable without a
manual is the difference between complete success and a potentially discouraging failure.
Simply put, User Interface Design is important because it can make or break your customer
base. It creates fewer problems, increases user involvement, perfects functionality and creates
a strong link between your customers and your website.

4.5.2 Homepage UI
The homepage is the index page of the application. This is the page that is shown to visitor
when s/he accessed the website through URL. The homepage UI has the most user interaction
through the means of display. Hence usability and user-friendliness of the UI was of the
highest priority. Therefore the specification was as follows:

 Keep the interface simple.


 Create consistency and use common UI elements.
 Be purposeful in page layout.
 Strategically use color and texture.
 Use typography to create hierarchy and clarity.
 Make sure that the system communicates what's happening.
 Think about the defaults.
 Put the interface in the hands of the users.
 Make using a product enjoyable.
 Reduce the amount of work that your brain has to do.
 Consistently design user interfaces

8
CQUST Undergraduate Graduation Project Design

Figure 4.5 UI Design Pattern

The homepage of website is consist on a navigation menu which is shown on top of screen in
header, a search bar which is used for searching food, a featured category and food which
show some special thing and at the bottom there is a simple footer of page

4.5.3 Admin UI

An admin dashboard functions as a central control point for users and tools. It might be a
basic activity dashboard that shows how people engage with a system. It may be expanded to
allow you to dive down into lower-level reports and provide a complete approach to handle
people, food, categories, and other factors.

The specification of this UI was as follows:

 View of all total order


 View Total revenue generated
 View total food list in menu
 View total category

9
CQUST Undergraduate Graduation Project Design

Figure 4.6 Admin UI

The admin UI consist on a header in which a navigation menu, an interface which show order
details food details at the bottom there is a simple footer.

4.6 Chapter Summary


This chapter has displayed many graphical representations of the design of the system. The
implementation of the system is documented in the next chapter

10
CQUST Undergraduate Graduation Project Implementation

5 Implementation
5.1 Chapter Overview
The implementation procedure is described in this chapter. The implementation of the
frontend component is detailed first. Following that, several backend features were explored
and assessed.

5.2 Views
The application's user interface is responsive. As a result, the interface may take up the whole
screen on any device. PHP is utilized to make the application's user interface mobile friendly.
A core frontend view has been established, which has been expanded for various views of
various pages.

The main view encompasses three other views: header menu, main body, and footer. The
header file is an HTML header file that contains page and navigation bar metatags. The main
body includes the main page's detail or menu. Some social networking links and content may
be found in the footer blade.

The following code snippet shows the header blade. The header blade contains the metatags
and CSS links.

1. <?php include('config/constants.php'); ?>


2.
3. <!DOCTYPE html>
4. <html lang="en">
5. <head>
6. <meta charset="UTF-8">
7. <!-- Important to make website responsive -->
8. <meta name="viewport" content="width=device-width, initial-scale=1.0">
9. <title>Restaurant Website</title>
10.
11. <!-- Link our CSS file -->
12. <link rel="stylesheet" href="css/style.css">
13. </head>
14.
15. <body>
16. <!-- Navbar Section Starts Here -->
17. <section class="navbar">
18. <div class="container">
19. <div class="logo">
20. <a href="<?php echo SITEURL; ?>" title="Logo">
21. <img src="images/logo.png" alt="Restaurant Logo" class="img-responsive">
22. </a>
23. </div>
24.
25. <div class="menu text-right">
26. <ul>
27. <li>
28. <a href="<?php echo SITEURL; ?>">Home</a>
29. </li>
30. <li>
31. <a href="<?php echo SITEURL; ?>categories.php">Categories</a>
32. </li>
33. <li>
34. <a href="<?php echo SITEURL; ?>foods.php">Foods</a>
35. </li>
36. <li>
1
CQUST Undergraduate Graduation Project Implementation

37. <a href="<?php echo SITEURL; ?>about.php">About Us</a>


38. </li>
39. </ul>
40. </div>
41.
42. <div class="clearfix"></div>
43. </div>
44. </section>

Code snippets 5.1

5.2.1 Homepage
The home page of the application consists featured foods and category. Users can go to other
parts of the application through this page. The page can be viewed in any kind of devices.

2
CQUST Undergraduate Graduation Project Implementation

Figure 5.1 Showing Homepage

5.2.2 Categories
The menu list page contains the list of all categories of food.

3
CQUST Undergraduate Graduation Project Implementation

5.2.3 Menu
The menu list page contains the list of all menus with the price

Figure 5.2 Showing Menu

5.3 Implementation of order form


Placing an order is another aspect of our website. The user may input the amount of food and
it. In below code we can check whether food id is set or not after that get the Food id and
details of the selected food if food is available then get data form database if food isn’t
available the redirect user to homepage

4
CQUST Undergraduate Graduation Project Implementation

1. <?php
2. //Check whether food id is set or not
3. if(isset($_GET[‘food_id’]))
4. {
5. //Get the Food id and details of the selected food
6. $food_id = $_GET[‘food_id’];
7.
8. //Get the Details of the Selected Food
9. $sql = “SELECT * FROM tbl_food WHERE id=$food_id”;
10. //Execute the Query
11. $res = mysqli_query($conn, $sql);
12. //Count the rows
13. $count = mysqli_num_rows($res);
14. //Check whether the data is available or not
15. if($count==1)
16. {
17. //WE Have Data
18. //Get the Data from Database
19. $row = mysqli_fetch_assoc($res);
20.
21. $title = $row[‘title’];
22. $price = $row[‘price’];
23. $image_name = $row[‘image_name’];
24. }
25. else
26. {
27. //Food not Availabe
28. //Redirect to Home Page
29. header(‘location:’.SITEURL);
30. }
31. }
32. else
33. {
34. //Redirect to homepage
35. header(‘location:’.SITEURL);
36. }
37. ?>

When a user placed an order it will save in database for that purpose following code is written
shown in below snippet:

1. //Save the Order in Databaase


2. //Create SQL to save the data
3. $sql2 = "INSERT INTO tbl_order SET
4. food = '$food',
5. price = $price,
6. qty = $qty,
7. total = $total,
8. order_date = '$order_date',
9. status = '$status',
10. customer_name = '$customer_name',
11. customer_contact = '$customer_contact',
12. customer_email = '$customer_email',
13. customer_address = '$customer_address'
14. ";

5
CQUST Undergraduate Graduation Project Implementation

5.4 Categories feature function


In this section we will discussed about function which show feature category on main page

1. <?php
2. //Create SQL Query to Display Categories from Database
3. $sql = “SELECT * FROM tbl_category WHERE active=’Yes’ AND featured=’Yes’ LIMIT
3”;
4. //Execute the Query
5. $res = mysqli_query($conn, $sql);
6. //Count rows to check whether the category is available or not
7. $count = mysqli_num_rows($res);
8.
9. if($count>0)
10. {
11. //Categories Available
12. while($row=mysqli_fetch_assoc($res))
13. {
14. //Get the Values like id, title, image_name
15. $id = $row[‘id’];
16. $title = $row[‘title’];
17. $image_name = $row[‘image_name’];
18. ?>
19.
20. <a href=”<?php echo SITEURL; ?>category-foods.php?category_id=<?php
echo $id; ?>”>
21. <div class=”box-3 float-container”>
22. <?php
23. //Check whether Image is available or not
24. if($image_name==””)
25. {
26. //Display Message
27. echo “<div class=’error’>Image not Available</div>”;
28. }
29. else
30. {
31. //Image Available
32. ?>
33. <img src=”<?php echo SITEURL; ?>images/category/<?php
echo $image_name; ?>” alt=”Pizza” class=”img-responsive img-curve”>
34. <?php
35. }
36. ?>
37.
38.
39. <h3 class=”float-text text-white”><?php echo $title; ?></h3>
40. </div>
41. </a>
42.
43. <?php
44. }
45. }
46. else
47. {
48. //Categories not Available
49. echo “<div class=’error’>Category not Added.</div>”;
50. }
51. ?>

5.5 Chapter Summary


This chapter has discussed the interesting aspects from the implementation stage. The next
chapter documents the results by demonstrating the working system.

6
CQUST Undergraduate Graduation Project Testing

6 Testing

6.1 Chapter Overview


This chapter describes the website's testing procedure and displays the results.

6.2 Test & Results

Test Test Test Expected Actual Fail/


code Case Steps Result Result Pass
01 Place an order Step 1. Select food The order should As pass
be placed with expected
Step 2. Fill the form showing that
order is
Step 3. Submit confirmed

Order should be
show in admin
system
02 Check Step1. Add new The category As pass
Category category/or update which we put on expected
featured old category featured should
display on be shown in
main page Step 2. Write Title main page , other
inactive category
Step 3. Select image shouldn’t show
in home page
Step 4. Make it active

Step 5. Make it
feature
03 Check food Step1. Add new The food which As pass
item featured food/or update old we put on expected
display on food featured should
main page be shown in
Step 2. Write main page
description

Step 3. Set the price


of food

Step 4.Select Image

Step 5. Choose
category

Step 6. Make it active

Step 7. Make it
featured

1
CQUST Undergraduate Graduation Project Testing

04 Adding food in Step1. Add new food The new food As pass
menu should be show expected
Step 2. Write in food menu
description with price and
image
Step 3. Set the price
of food New food should
auto add in
Step 4.Select Image database

Step 5. Choose
category

Step 6. Make it active

05 Adding New Step1. Add new New category As pass


category category should be listed expected
in category page
Step 2. Write Title with image we
choose for it
Step 3. Select image New food should
Step 4. Make it active auto add in
database

6.2.1 Test 01
When a user placing an order a form shown which need to be filled. Go to food menu select
any food and click “order now” button. The window should be redirected to order page with a
fillable form

Figure 6.1 Order form


2
CQUST Undergraduate Graduation Project Testing

After filling the form and click on submit a message appear “Food Ordered Successfully”

Figure 6.2 order message

6.2.2 Test 02
In this test category featured display function is tested. From admin system go to category
Click on add new category or update button of existed category. Write required data and make
it active and featured.

Figure 6.3 Adding Category

After clicking on “add category” the category should be show on the main page (homepage)
of website also add in database
3
CQUST Undergraduate Graduation Project Testing

Figure 6.4 Category

6.2.3 Test 03
In this test food featured display function is tested. From admin system go to food
Click on add new food or update button of existed food. Write required data and make it
active and featured.

Figure 6.5 Adding Food in menu

After clicking add food button the new food add in database. The new food will be appear in
4
CQUST Undergraduate Graduation Project Testing

food menu.

Figure 6.6 Food Menu


6.2.3 Test 04
In this test adding new food function is tested. From admin system go to food
Click on add new food. Write title, description, choose image, choose category and make it
active and featured. A message will be appear “Food Added Successfully”.

Figure 6.7 Adding food in menu

After adding new food it will be add in database too.


5
CQUST Undergraduate Graduation Project Testing

Figure 6.8 Database after new item added

The new food item will be shown in food list

Figure 6.9 Food menu after new item added

6
CQUST Undergraduate Graduation Project Testing

6.2.5 Test 05
In this test adding new category function is tested. From admin system go to category
Click on add new category. Write title, choose image, choose category and make it active and
featured. A message will be appear “Category Added Successfully”.

Figure 6.10 Adding Category

After adding new food it will be add in database too.

Figure 6.11 Adding Category after new added

7
CQUST Undergraduate Graduation Project Testing

The new category will be show in list.

Figure 6.12 New Category Shown after new added

6.3 Testing for Search Engine Optimization (SEO)


There are several sorts of tools that automate testing operations and provide application
results. Lighthouse is a Google open-source tool for web apps that may be used to check for
Search Engine Optimization (SEO) compatibility (Google, 2017). For online applications,
Search Engine Optimization (SEO) is critical. A well-designed SEO application is more
readily and correctly found in search engines. Lighthouse is a web application SEO testing
technology that provides advice on potential issues.

Figure 6.13 SEO Test Result

8
CQUST Undergraduate Graduation Project Testing

6.4 Chapter Summary


This chapter has documented numerous testing techniques applied to this project. The next
chapter concludes the report.

9
CQUST Undergraduate Graduation Project Conclusion

7 Conclusion
7.1 Chapter Overview
This chapter wraps up the project's report. This chapter begins with a discussion of the
project's accomplishments. Following that, it outlines the system's shortcomings. After that, it
suggests and advises various system enhancements. Finally, the chapter concludes with
closing remarks.

7.2 Achievement of the Project


The project underwent a sequence of actions in order to produce a sophisticated solution for
an online restaurant website. As stated in Chapter 1.2, a set of objectives were defined after a
study of the project's purpose and research direction. All of the project's actions were geared
toward achieving these goals. The prototype program built at the conclusion of the project
achieved these goals in the following ways:

 Objective 01 was reviewing previous works for automating the restaurant meal
ordering procedure delighted me. A quick discussion of web application development
technologies follows.
 Objective 02 was making simple and easy order form , satisfied with functionality of
simple form
 Objective 03 was satisfied by developing the system with PHP,HTML and CSS.
 Objective 04 was satisfied by menu updating system.
 Objective 05 was addressed with various testing approaches to ensure the prototype
system is as robust as possible.

The project took a long time. It was attempted to incorporate as many features as feasible
within the time constraints. The Functional Requirements were met satisfactorily. Some of the
system's non-functional requirements have not been implemented. These are the most
important elements and have the highest importance. Due to scheduling restrictions, several
needs are not implemented. However, because they are lower priority features, their loss
would not cause substantial operational concerns. These functions may be added in the future.

7.3 Limitations of the System


There are also some limitations of the system. The order cart of the system has basic
functionalities and does not support advanced order cart modification features. Along with
this, validation functionalities and almost all functionalities of the application are handled
with server side programming. It makes extra load on the server, especially when the
application gets lots of viewers. This limitation can be minimized by validating data using
client side language like JavaScript or HTML 5. Along with this, the order model has been
developed. But the controllers and functions for pushing data into order table is not written.
So, the placed orders cannot be viewed.

7.4 Future Recommendations


In addition to the unfinished requirements, there are other possibilities of further improving
the project. The respondent of user acceptance testing also suggest some improvement ideas.
The improvements may include:

1
CQUST Undergraduate Graduation Project Conclusion

• Overcoming the limitations mentioned in the Section 7.3.


• Add secured payment system with various payment methods.
• Add table booking system with presenting graphical floor plan for table management
and reservation.
• Adding support for food order delivery tracking.
• Advanced inventory control with material storage and expiry information.
• Managing customer loyalty membership and discount voucher.
• Converting the system to progressive web application.

7.5 Personal Reflection


I have gained some experiences and developed skills through the project. I also became aware
of some aspects which needs improvements.

7.5.1 Developing Research Capabilities


The literature review part necessitated a thorough examination of several journal articles and
research papers. Reading and evaluating journal papers has given me some insight into how to
create a structured journal paper and how research is performed. It also helped me enhance
my public speaking abilities. I also became aware of my research deficiencies, which I need to
address in order to become a better researcher.

7.5.2 Developing Programming Capabilities


To build the project, I'll need to learn PHP, HTML and CSS. Learning PHP clarified my
understanding of object-oriented programming. I've also gotten some problem-solving
experience, since I've had to brainstorm, seek, and ponder for two or three days to figure out
why a piece of code wasn't functioning. Occasionally, a stupid situation arises. In addition, I
was not skilled in creating user interfaces.

7.6 Concluding Remarks


This project is for developing a web application for restaurant. For developing the application,
a systematic approach has been taken into account. RBDMS has been applied to develop the
system. Along with this, ERD has been used for modelling processes and data. The
application has been developed using PHP.

A functional complicated prototype of an online restaurant system was successfully created as


part of the project. The prototype website has been thoroughly tested to demonstrate the
system's quality and performance. This report also included a summary of all pertinent study
findings and decision-making procedures. In conclusion, the initiative met its aims and served
its purpose. I'm hoping that the website will be able to fulfil the majority of restaurant online
ordering needs.

2
CQUST Undergraduate Graduation Project References

References
[1] L. Robinson, J. Petrey. An Exploration of a Website Design Process and Results of a Usability Study[J].
Medical Reference Services Quarterly, 2019, 38(1):56-69.

[2] Alagoz, S. M. and Hekimoglu, H. (2012) ‘A Study on Tam: Analysis of Customer Attitudes in Online
Food Ordering System’, Procedia - Social and Behavioral Sciences, 62, pp. 1138–1143. doi:
10.1016/j.sbspro.2012.09.195

[3] Beltis, A. J. (2016) 9 Advantages of an Online Food Ordering System. Available at:
https://pos.toasttab.com/blog/online-food-ordering-system (Accessed: 7 July 2017)

[4] Jesse James Garrett’s The Elements of User Experience: User-Centered Design for the Web and Beyond
(2nd Edition).

[5] Peter Morville and Louis Rosenfeld’s Information Architecture for the World Wide Web: Designing
Large-Scale Web Sites.

[6] Bounnady, K. et al. (2016) ‘Comparison the processing speed between PHP and ASP.NET’, in. 2016
13th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and
Information Technology (ECTI-CON), pp. 1–5. doi: 10.1109/ECTICon.2016.7561484

[7]Cheong, S. N., Chiew, W. W. and Yap, W. J. (2010) ‘Design and development of Multi-touchable
E-restaurant Management System’, in. 2010 International Conference on Science and Social Research
(CSSR 2010), IEEE, pp. 680–685. doi: 10.1109/CSSR.2010.5773867.

[8]Dawson, C. W. (2009) Projects in Computing and Information Systems: A Student’s Guide.


Addison-Wesley.

[9]Dennis, A., Wixom, B. H. and Roth, R. M. (2012) Systems Analysis and Design. 5th
Editon. John wiley & sons.

[10] Parr, T. J. (2004) ‘Enforcing strict model-view separation in template engines’, in Proceedings of the
13th international conference on World Wide Web. ACM, pp. 224–233.

[11] Patel, M. (2015) Online Food Order System for Restaurants. Master’s thesis. Grand Valley State
University.Available at: https://scholarworks.gvsu.edu/cistechlib/219/ (Accessed: 27 January 2018).

[12] Tan, C. L. (2013) Implementing a Web-Based Computerized Restaurant System. Master’s thesis.
University of Manchester. Available at: 77
https://studentnet.cs.manchester.ac.uk/resources/library/thesis_abstracts/MSc13/FullText/Tan-ChinLoong-f
ulltext.pdf (Accessed: 29 December 2017).

[13] Tan, T.-H., Chang, C.-S. and Chen, Y.-F. (2012) ‘Developing an intelligent erestaurant with a menu
recommender for customer-centric service’, IEEE Transactions on Systems, Man, and Cybernetics, Part
C(Applications and Reviews), 42(5), pp. 775–787.

[14] Tatsubori, M. and Suzumura, T. (2009) ‘HTML templates that fly: a template engine approach to
automated offloading from server to client’, in Proceedings of the 18th international conference on World
wide web. ACM, pp. 951–960.

[15] The PHP Group (2018) What is PHP?, PHP Official Website. Available at:
http://php.net/manual/en/intro-whatis.php (Accessed: 22 January 2018).

3
CQUST Undergraduate Graduation Project Acknowledgements

Acknowledgements
First and foremost, I thank Almighty Allah for the safety and health that were required to
finish this Project. I'd want to convey my gratitude to my supervisor, Mr. Chengyaun Chen,
for his advice and suggestions. It would have been impossible for me to finish the project
without his advice, suggestions, and motivation. I'm also grateful to my parents and other
family members for encouraging me to focus on my studies and finish them on time. I'm also
grateful to all of my friends, classmates, and professors who have helped me along the way

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy