You are on page 1of 89

CHAPTER 1

INTRODUCTION

1|Page
1. INTRODUCTION

1.1. COMPANY PROFILE

“Naivedyam Restaurant” is the finest restaurants in Pune, a proud initiative of Rajmahal


Hotels. True Indian,Continental & Chinese cuisine flavoured with our chef’s own creativity. A rare
combination of authentic recipes that results in a galaxy of irresistible dishes, from the pleasantly mild
to the intensely spicy.

Find your next great lunch or dinner dining experience featuring time-honored recipes at
Naivedyam. The Restaurant offer fun and wholesome dining options for the whole family. Dress up
your dish with our signature sides and round out the night with our satisfying desserts. This
Restaurant promise you’ll leave with a satisfied belly! Bring the whole family down to the Naivedyam
restaurant, for lunch or dinner. Our service is second to none. Our menuwill speak for itself !

Naidedyam restaurant is a great place to relax and enjoy the company of friends, in a relaxed
and stylishly contemporary atmosphere. You will find all staff have only one goal – to ensure that you
have a great time while in Naivedyam restaurant.

2|Page
1.2. INTRODUCTION

The Online Food Ordering system will help the restaurant administrator to manage
restaurant and make online food delivery and also provides convenience for the customers. It
overcomes the disadvantages of the traditional queuing system. Therefore, this system
enhances the speed and standardization of taking the order from the customer. It provides a
better communication platform. The user’s details are noted electronically.

The online food ordering system set up menu online and the customers easily places
the order with a simple mouse click. Also with a food menu online you can easily track the
orders, maintain customer's database and improve your food delivery service. This system
allows the user to select the desired food items from the displayed menu. The user orders the
food items. The payment can be made by pay-on-delivery system. The user’s details are
maintained confidential because it maintains a separate account for each user.

3|Page
1.3. EXISTING SYSTEM AND NEED FOR SYSTEM

In existing system for giving any orders users should visit hotels or restaurants to
know about food items and give them order and pay advance. In this method time and
manual work is required. Maintaining critical information in the files and manuals is full of
risk and a tedious process.

The existing system serve a major drawback to the realization of efficiency and
customer satisfaction. The experience of ordering in most restaurants is not pleasant for the
customers. Customers will have to make long queues before placing their orders especially
during peak hours and then the ordering staff will record customer orders. Having placed
their order, the customer must then wait near the counter until their order is ready for
collection.The other problem with the current system is that the customers are not able to see
the ingredients of the meals before they place their order.

NEED FOR SYSTEM

This online application enables the end users to register online, select the food from
the menu card, read the menu card and order food online by just selecting the food that the
user want to have.By using this application the work of the Waiter is reduced and we can also
say that the work is nullified. The user will be given a user name and a password to login.

4|Page
1.4. LIMITATIONS OF EXISTING SYSTEM

Due to manual system has following limitations:

1. The existing system serve a major drawback to the realization of efficiency and customer
satisfaction. The experience of ordering in most restaurants is not pleasant for the customers.

2. Customers will have to make long queues before placing their orders especially during
peak hours and then the ordering staff will record customer orders. Having placed their order,
the customer must then wait near the counter until their order is ready for collection.

5|Page CHAPTER 2

PROPOSED SYSTEM
6|Page
2. PROPOSED SYSTEM

2.1. PROBLEM STATEMENT

Online Food Delivery System is designed to overcome those problems using


manual system such as the possibility the paper order is high. Many restaurants use
conventional system which is on paper-based, for food ordering process. Using conventional
system, the waiter must note down the order at paper and send to the cook. The probability to
make mistake was high because sometimes the cook / misinterpret hand-writing order.

Therefore Online Food Delivery System is developed to enhance the efficiency


and accuracy of taking order in food ordering system. Besides that, conventional system
cannot see the sales history therefore Online Food Delivery System is designed to view the
sales history of the restaurant.

2.3. PRODUCT OVERVIEW

The Restaurant Menu and Ordering System is a software package to facilitate


ordering within a traditional restaurant. The customer is able to view the menu, place orders,
call the waiter, and organize the final bill through the surface computer interface built into
their table.The food staff, with their touch-display interfaces to the system, are able to view
orders sent to the kitchen by waiters. During preparation, they are able to let the waiter know
the status of each item, and can send notifications when items are completed, again through
the touch display. The system contains full accountability and logging systems, and supports
supervisor actions to account for exceptional circumstances, such as a meal being refunded or
walked out on.

7|Page
2.4. SUMMARY OF CAPABILITIES

1. Effectual Online Promotion -


One of the important feature is, it allows you to promote your restaurant or food
serving company online and enables you to attract more customers towards your restaurant.

2. Increase in Sales -
An online ordering system opens a window of opportunity for customers.
Restaurants can customize their menus to highlight the menu specials or have them designed
in a way they can make suggestions to the customer as they are ordering.

3. Online Ordering attracts new customers -


It gives new customers a quick and easy way to find and try your restaurant’s
offerings. New customers are much more likely to try your food if the ordering process is
quick, easy and painless.

4. You have variety of options to choose from.

5. You get the best prices for the food.

6. You can order at your convenience and your preferred time.

There is no time restriction for online food ordering & delivery system, your customer can
order their favorite food at anytime anywhere.

8|Page
2.5. ASSUMPTIONS AND DEPENDENCIES

The product does require back-end database server MySQL for storing the user
name and password for different types of user of the system as well as various databases
regarding various insurance information.

1. User must be trained for basic computer functionalities.


2. User must have the basic knowledge of English.
3. The system must be able to respond to database software within reasonable time.

2.6. OBJECTIVES OF SYSTEM

1. Develop a reliable, convenient and accurate Ordering System.

2. To develop a system that will surely satisfied the customer service.

3. To design a system able to accommodate huge amount of orders at a time.

4. To evaluate its performance and acceptability in terms of security, user-friendliness,


accuracy and reliability.

5. To improve the communication between the client and the server and minimize the time of
ordering.One of the main objectives of a restaurant to ensure customer satisfaction. Manual
listing of orders by the waiters/waitresses may result to slow response in customer service.
Hence, if the restaurant uses the proposed system, manipulation of orders to the customers be
so easy and quick by just touching on the tablet and choosing the desired menu.

6. To automatically compute the bill.


The system will also automatically calculate and displays the final bill so the bills will ready
to print without having any error because the information for that item is already inserted.

9|Page
2.7. FUNCTIONAL REQUIREMENTS

This section provides requirement overview of the system.Various functional modules


that can be implemented by the system will be -

1. Registration -

If customer wants to order the food item then he/she must be registered, unregistered
user can’t go to the add food item to cart.

2. Login -
Customer logins to the system by entering valid user id and password for order food
items online.

3. Changes to Cart -
Changes to cart means the customer after login or registration can make order or
cancel order of the food item from the cart.

4. Payment -
For customer there are providing type of secure billing will .We are providing cash on
delivery system for payment.

5. Logout -
After the payment or surf the product the customer will logged out.

7. Technical Issues -
This system will work on client-server architecture. It will require an internet server
and which will be able to run PHP application. The system should support some commonly
used browser such as IE etc.

10 | P a g e
2.8. NON-FUNCTIONAL REQUIREMENTS

1. Security -
The system use SSL (secured socket layer) in all transactions that include any
confidential customer information.The system must automatically log out all customers after
a period of inactivity.
The system should not leave any cookies on the customer’s computer containing the
user’s password. The system’s back-end servers shall only be accessible to authenticated
administrators. Sensitive data will be encrypted before being sent over insecure connections
like the internet.

2. Reliability -
The system provides storage of all databases on redundant computers with automatic
switch over.The reliability of the overall program depends on the reliability of the separate
components.
The main pillar of reliability of the system is the backup of the database which is
continuously maintained and updated to reflect the most recent changes.Thus the overall
stability of the system depends on the stability of container and its underlying operating
system.

3. Availability -
The system should be available at all times, meaning the user can access it using a
web browser, only restricted by the down time of the server on which the system runs. In
case of a of a hardware failure or database corruption, a replacement page will be shown.
Also in case of a hardware failure or database corruption, backups of the database should be
retrieved from the server and saved by the administrator. Then the service will be restarted. It
means 24 X 7 availability.

4. Maintainability -
A commercial database is used for maintaining the database and the application server
takes care of the site. In case of a failure, a re-initialization of the program will be done. Also
the software design is being done with modularity in mind so that maintainability can be done
efficiently.
11 | P a g e
5. Portability -
The application is HTML and scripting language based. So The end-user part is fully
portable and any system using any web browser should be able to use the features of the
system, including any hardware platform that is available or will be available in the future.
An end-user is use this system on any OS; either it is Windows or Linux. The system shall
run on PC and Laptops etc.

2.9. STAKEHOLDER SUMMARY


1. Login Module
 User name
 Password

2. Registration Module
 Full Name
 Email ID
 Contact Number
 Password
 Confirm Password
 Shipping Address
 City
 Pincode

3. Admin Module
 Login an Account
 Add,update and delete Menu,Category as well as Sub-Category details
 View pending order details
 Order Management and User Management

4. User Module
 Create or Login an Account
 View Restaurant menu and select food.
 Add menu food item to cart and review or remove menu from cart
 Do Payment and Place order,View Order History

12 | P a g e
5. Manager Module
 Login an account.
 Retrieve user order from database.

6.Guest Module
 View Menu Card details
7.Delivery Boy Module
 See Order Details
 Receive payment by user.

2.10. Users Summary

Firstly, user have to open the Online food delivery system then user can see the
various food items according to food categories. User can see food items with its price. If
user wants to order the food they have to login the account and if they are not already register
themselves then they have to create account and login.

After login to page user can order the food by adding food item in cart. They can do
the payment process by cash on delivery. After payment process they see order history and
within some specific time user can receive their food order.

To order some other food which is not displayed on website then user can do the food
inquiry by calling to staff of restaurant. The contact details are shown in the website. User
can also give their response by using feedback form.

13 | P a g e
2.11. SCOPE OF THE SYSTEM

Online ordering system will be a web based application whose main language
of programming will be PHP. It’s main aim is to simplify and improve the efficiency of the
ordering process for both customer and restaurant, minimize manual data entry and ensure
data accuracy and security during order placement process. Customers will also be able to
view product menus and there ingredients and be able to have a visual confirmation that the
order was place correctly.

1. This system requires less time for processing or operating and it is user friendly system. It
reduces lot of paper work. It is helpful to save time and money.

2. This system is fast working and accurate in accessing information.

14 | P a g e
2.12. MODULE SPECIFICATIONS
1. Login Module
 User name
 Password

2. Registration Module
 Full Name
 Email ID
 Contact Number
 Password
 Confirm Password
 Shipping Address
 City
 Pincode

3. Admin Module
 Login an Account
 Add,update and delete Menu,Category as well as Sub-Category details
 View pending order details
 Order Management and User Management

4. User Module
 Create or Login an Account
 View Restaurant menu and select food.
 Add menu food item to cart and review or remove menu from cart
 Do Payment and Place order,View Order History

5. Manager Module
 Login an account.
 Retrieve user order from database.

6.Guest Module
 View Menu Card details
15 | P a g e
7.Delivery Boy Module
 See Order Details
 Receive payment by user.

16 | P a g e
2.13. OPERATING ENVIRONMENT

2.13.1. SOFTWARE REQUIRMENTS :

 Operating System : Windows


 Technology : PHP
 Web Technologies : HTML, JavaScript, CSS, JQuery
 Web Server : Wamp2.5
 Database : My SQL

2.13.2. HARDWARE REQUIRMENTS :

 RAM : 1GB
 Hard Disk : 20 GB
 Processor : Intel

17 | P a g e
CHAPTER 3

REQUIREMENT
DETERMINATION AND
ANALYSIS

18 | P a g e
3. REQUIREMENT DETERMINATION AND ANALYSIS

3.1. FACT FINDING TECHNIQUE:

Definition:

“The specific methods, techniques analyst used for collecting data about
requirements are called as fact finding/gathering techniques.”

Fact finding is the formal process of collect information about system and
requirements. It is also called information gathering or data collection. It has to be gathered in
an organized way so that no system details are left out, right problems are identified,
repetitive work is avoided and wrong or incomplete details are not collected. Information
gathering is very important while developing any application.

To understand the drawbacks in the existing system study was conducted


by using following fact finding techniques.

Fact finding techniques are:

1. Interview

 Structured Interview

 Unstructured Interview

2. Questionnaires

 Open ended questionnaire

 Close ended questionnaire

3. Observation

 Record Review

19 | P a g e
3.1.1. Interview :

Definition:

“Interview technique is used to collect information from individuals or from


groups.”

The interview is best method for producing qualitative information,


opinions, policies, suggestions, subjective description of activities and problems etc.
Interview helpful for gathering information from individuals who do not communicate
effectively in writing or who may not have time complete questioning.

We have taken interview of Manager Mr. Vijay Joshi of the Naivedyam


Restaurant.

Interview can be of two types:

1. Structured Interview :

Structured interviews are used standardized question in either open


response or close response format. It requires deep study and preparation.

2. Unstructured Interview :

Unstructured interviews allows respondent to answer in their own


words. Whereas a structure interview uses the set of prescribe answers. In this type of
interview question are connected with last question so it does not required deep study and
preparation.

Questions:

1. Who is the owner of this Restaurant?

2. Which type of services are you provided to the customers?

3. When established this Restaurant in Pune?

4. Which software is use in this Restaurant to record the all information related to the
Customers and their orders?

5. What is problem occur when storing information in record book?

20 | P a g e
2.1.2. Questionnaires :

Definition :

“A questionnaire is a research instrument consisting of a series of question for


the purpose of gathering information from respondent.”

Questionnaire may be used as a supplement to interviews. Questionnaires are useful


for:

1. Gathering numerical data.

2. Getting relatively simple opinion from a large number of people.

3. Obtaining collective opinion.

4. Standardized question format can produce more reliable data than other fact finding
techniques.

There are two types of questionnaires:

 Open ended questionnaire:

Use open ended questionnaire to learn about feeling, opinion and


general experience or to explore a process or problem.

 Close ended questionnaire :

Close ended questionnaire controls the frame of reference by


presenting respondent with specific responses from which to select. This format is
appropriate for collecting factual information.

21 | P a g e
Questions:

1. Are you happy with recording transaction information?

a. Yes

b. No

2. Do you want any new facility from this system?

a. Yes

b. No

3. Are you facing any problem to find stock?

a. Yes

b. No.

4. Are you satisfy with various facilities and services provided by the Restaurant?

a. Yes

b. No

5. Whether you get immediate response to your complaint?

a. Yes

b. No

22 | P a g e
2.1.3. Observation:

Definition:

“Observation methods is most useful when the analyst need to be


actually observe how documents are handle, how process are carried out and whether
specified steps are actually followed or not.”

Observation provides close view of the working of the real system. System
analyst observes people, objects, documents and occurrences of events. Observation allows
analyst to get information, which they cannot obtained any other fact finding technique.

 Record Review :

In record reviews system analyst examines information that has been


recorded about the system and about the users. The record review can take place at the
beginning of the system study or in the later in the study for comparing actual operations
with what the records indicate. Many records and reports can provide valuable
information about organization and operation.

Records may include written policy manuals, rules and regulations, standard
operating procedures used in the organization and form and documents.

We are maintain the records of customer detail, supplier detail, purchase details,
sale details, item details, stock details and service details muster.

23 | P a g e
3.2. FEASIBILITY STUDY :

Feasibility study carried out whether there is complex problem. A


feasibility study is undertaken to determine the possibility or probability of either improving
the existing system or developing completely new system. Feasibility study evaluates the cost
and benefits of the proposed system.

There are three aspects of feasibility study, which should be check. Following
are the types of Feasibility Study:

1. Technical Feasibility

2. Economical Feasibility

3. Operational Feasibility

2.2.1. Technical Feasibility :

Definition:

“Technical feasibility is carried out to determine whether the company


has the capability, in terms of software,hardware,personnel and expertise, to handle the
completion of the project.”

Technical feasibility determines whether it is possible to develop the


project with available equipment, available software technology and the manpower. If there is
any kind of need in order to develop software in this case the cost of hardware, software and
technical equipment are considered.

Our system used hardware, software which are we used the Windows 10 operating
system, processor Intel® Core™ i3 CPU,RAM 4 GB, Hard Disk 500 GB, Front end and back
end are PHP and Mysql respectively. So we does not require costly hardware.

There is lot of security, accuracy and reliability in system by considering the above
reason the system is technically feasible.

24 | P a g e
3.2.2. Economical Feasibility :

Definition:

“Economic analysis is the most frequently used method for evaluating the
effectiveness of a new system. Most commonly called as cost or benefit analysis, the
procedure is to determine the benefits and saving that are expected from a candidate
system and compare them with costs.”

In this feasibility the benefit of the system are considered. Actually the
cost benefit analysis is done. System offers various applications that will save the large
amount of manual works as well as valuable time. The system will simplify the day to day
activities. In the economical feasibility the benefit of the system are considered.

In our system use Oracle 8i for the back end of the system.Minimize cost of
system development gives extra feature with cost. Hence our system is economically feasible.

Economical feasibility consists of two types of cost are as follows:

 One time Cost:

One time cost may include:

1. Feasibility study cost.

2. The costs for converting from present system to new system.

3. Construction or remodeling of computer room/facilities.

4. Cost involved in software packages.

 Recurring Cost : Recurring cost may include:

1. Rental or purchase of equipments.

2. Salaries of personal.

3. Supplies.

4. Equipment maintenance.

25 | P a g e
2.2.3. Operational Feasibility :

Definition :

“Operational feasibility in a measure of how well a proposed system


solves the problem and takes advantages of the opportunities identified during scope
definition and how it satisfies the requirements identified in the requirements analysis
phase of system development.”

After implementing the system the system training program are arranged for
the users. This is carried out by the people who are familiar with information system as well
as the techniques. They are experienced persons like system analyst or managers. The cost of
the training program as well as space requirement for implementation of the system and the
other assets are considered. So our system is operationally feasible.

1. It is user friendly system.

2. Does not require special training.

3. Provide better security.

4. Any user having technical knowledge or not can operate system.

26 | P a g e
CHAPTER 4

SYSTEM ANALYSIS AND


DESIGN

27 | P a g e
4.1. USE CASE DIAGRAMS

BUISNESS USE CASE DIAGRAM

28 | P a g e
4.1.1. Admin Use Case Diagram

4.1.2. Manager Use Case Diagram

29 | P a g e
4.1.3. Customer Use Case Diagram

30 | P a g e
4.1.4. Guest Use Case Diagram

4.1.5. Delivery Boy Use Case Diagram

31 | P a g e
4.2. SEQUENCE DIAGRAM

4.2.1. SEQUENCE DIAGRAM FOR LOGIN

32 | P a g e
4.2.2. SEQUENCE DIAGRAM FOR PLACE ORDER

33 | P a g e
4.3. ACTIVITY DIAGRAM

4.3.1. LOGIN ACTIVITY DIAGRAM

4.3.2. ACTIVITY DIAGRAM FOR PLACE ORDER

34 | P a g e
35 | P a g e
4.4. CLASS DIAGRAM

36 | P a g e
4.5. OBJECT DIAGRAM

37 | P a g e
38 | P a g e
4.6. Module Hierarchy Diagram

39 | P a g e
4.7. COMPONENT DIAGRAM

4.8. DEPLOYMENT DIAGRAM


40 | P a g e
4.9. MODULE SPECIFICATIONS

41 | P a g e
1. Login Module
 User name
 Password

2. Registration Module
 Full Name
 Email ID
 Contact Number
 Password
 Confirm Password
 Shipping Address
 City
 Pincode

3. Admin Module
 Login an Account
 Add,update and delete Menu,Category as well as Sub-Category details
 View pending order details
 Order Management and User Management

4. User Module
 Create or Login an Account
 View Restaurant menu and select food.
 Add menu food item to cart and review or remove menu from cart
 Do Payment and Place order,View Order History

5. Manager Module
 Login an account.
 Retrieve user order from database.

6.Guest Module
 View Menu Card details
7.Delivery Boy Module

42 | P a g e
 See Order Details
 Receive payment by user.

43 | P a g e
4.11. Web Site Map Diagram

Home

Menu Contact Us Order Food Now

Index Page

Indian Food Chinese Food Continental Food Burger Sandwich Sign In / Sign
Up

Categories Sub Categories

Add To Cart Wish List

My Cart

Continue Shopping Update Cart Proceed to Checkout

Place Order

View Order History

Log Out

44 | P a g e
4.12. User Interface Diagram

4.12.1. Home Page

45 | P a g e
4.12.2.Index Page

46 | P a g e
4.12.3. My Cart

47 | P a g e
4.12.4. Order History Page

48 | P a g e
4.12.5. Admin Login Page

49 | P a g e
4.12.6. Admin Page

50 | P a g e
4.12.7. Manage Users By Admin

51 | P a g e
4.12.8. Manage Products

52 | P a g e
4.12.9. Manage Users Log

53 | P a g e
SOURCE CODE

1.HOME PAGE

<?php
if(isset($_POST['submit']))
{
$conn = mysqli_connect('localhost','root','','shopping');
if(!$conn)
{
die("Could not connect : " . mysql_error());
}
$Username = $_POST['name'];
$Email_Id = $_POST['email'];
$Comment = $_POST['comment'];
$sql = 'INSERT INTO contact(name,email,comment) VALUES ("' .
$Username . '","' . $Email_Id . '","' . $Comment . '")' ;
mysql_select_db('shopping');
$retval = mysql_query($sql,$conn);
if(!$retval)
{
die("Sorry there are some error : " . mysql_error());
}
echo "<script>alert('Thanks For Your Response ...'); </script>" ;
mysql_close($conn);
}?>
<!doctype html>
<html>
<head>
54 | P a g e
<meta charset="utf-8">
<title>food</title>
<link href='https://fonts.googleapis.com/css?family=Lobster+Two:400,700'
rel='stylesheet' type='text/css'>

<!--CSS-->
<link rel="stylesheet" type="text/css" href="css/bootstrap.css"/>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
<link rel="stylesheet" type="text/css" href="css/font-awesome.css"/>
<link rel="stylesheet" type="text/css" href="css/animate.css">
<link rel="stylesheet" type="text/css" href="css/responsive.css"/>

<!--JS-->

<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>


<script type="text/javascript" src="js/modernizr.js"></script>
<script src="js/scripts.js"></script>
<script src="js/waypoints.min.js"></script>
</head>

<body>
<!-- Paste this code after body tag -->
<div class="se-pre-con"></div>
<!-- Ends -->

<header> <br>
<div class="container">
<div class="row clearfix" id="home">
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12"> <br><br>
55 | P a g e
<div class="logo">
<h6> <img src="images/Logo.png" alt="" /> <img
src="images/Logo1.png" alt="" /> </h6> <!-- logo -->
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12">
<div class="contact">
<p>Questions? Call us Toll-free!<span class="number"><a
href="#">1800-0000-7777</a></span><span class="time">(11AM to
11PM)</span></p>
</div></div> </div> </div>
</header>
<section class="saction1">
<div class="container">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="menu">
<div class="mobile-nav-container"> </div>
<div class="mobile-nav-btn"><img class="nav-open" src=
"https://s3-us-west-
2.amazonaws.com/s.cdpn.io/6214/nav-open.png" alt="Nav Button
Open" /> <img class="nav-close" src="https://s3-us-west-
2.amazonaws.com/s.cdpn.io/6214/nav-close.png" alt="Nav Button
Close" /> </div>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<!-- <li><a href="#resturant">Popular Restaurants </a></li> -->
<li><a href="#offer">Menu </a></li>
<li><a href="#contact">Contact</a></li></ul>
56 | P a g e
</section><script type="text/javascript"
src="js/sidemenu.js"></script><body></html>
2. INDEX PAGE

<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_GET['action']) && $_GET['action']=="add"){
$id=intval($_GET['id']);
if(isset($_SESSION['cart'][$id])){
$_SESSION['cart'][$id]['quantity']++;
}else{
$sql_p="SELECT * FROM products WHERE id={$id}";
$query_p=mysqli_query($con,$sql_p);
if(mysqli_num_rows($query_p)!=0){
$row_p=mysqli_fetch_array($query_p);
$_SESSION['cart'][$row_p['id']]=array("quantity" => 1,
"price" => $row_p['productPrice']);
header('location:index.php');
}else{
$message="Product ID is invalid";
}
}
}?>
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Meta -->
57 | P a g e
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0, user-scalable=no">
<meta name="description" content="">
<meta name="author" content="">
<meta name="keywords" content="MediaCenter, Template,
eCommerce">
<meta name="robots" content="all">
<title>Naivedya Restaurant</title>
<!-- Bootstrap Core CSS -->
<link rel="stylesheet" href="assets/css/bootstrap.min.css">
<!-- Customizable CSS -->
<link rel="stylesheet" href="assets/css/main.css">
<link rel="stylesheet" href="assets/css/green.css">
<link rel="stylesheet" href="assets/css/owl.carousel.css">
<link rel="stylesheet" href="assets/css/owl.transitions.css">
<!--<link rel="stylesheet" href="assets/css/owl.theme.css">-->
<link href="assets/css/lightbox.css" rel="stylesheet">
<link rel="stylesheet" href="assets/css/animate.min.css">
<link rel="stylesheet" href="assets/css/rateit.css">
<link rel="stylesheet" href="assets/css/bootstrap-
select.min.css">
</head>
<body class="cnt-home">
<header class="header-style-1">
<?php include('includes/top-header.php');?>
<?php include('includes/main-header.php');?>
58 | P a g e
<?php include('includes/menu-bar.php');?>
</header>
<div class="body-content outer-top-xs" id="top-banner-and-menu">
<div class="container">
<div class="furniture-container homepage-container">
<div class="row">
<?php include('includes/side-menu.php');?>
</div><!-- /.sidemenu-holder -->
<div class="col-xs-12 col-sm-12 col-md-9 homebanner-
holder">
<div id="hero" class="homepage-slider3">
<div id="owl-main" class="owl-carousel owl-inner-nav owl-ui-sm">
<div class="full-width-slider">
<div class="item" style="background-image:
url(assets/images/sliders/sliders1.jpg);">
<!-- /.container-fluid -->
</div><!-- /.item -->
</div><!-- /.full-width-slider -->
<div class="full-width-slider">
<div class="item full-width-slider" style="background-
image: url(assets/images/sliders/sliders2.jpg);">
</div><!-- /.item -->
</div><!-- /.full-width-slider -->
<div class="info-boxes wow fadeInUp">
<div class="info-boxes-inner">
<div class="row">
<div class="col-md-6 col-sm-4 col-lg-4">
</div><!-- .col -->

59 | P a g e
<?php } ?>
</body>
</html>
4.13. TABLE SPECIFICATIONS

4.13.1. Table Name : Uesrs


Description : Information of Users Registration

Sr. No Field Name Field Type Size Constraint Description

1. UID Int 10 Primary Key User ID

2. EmailID Varchar 50 Not NULL Name of User

3. ContactNo Varchar 10 Not NULL Contact No

4. Password Varchar 10 Not NULL Password of User

6. ConfirmPass Varchar 10 Not NULL Confirm Password

7. ShippingAddress Int 255 Not NULL Shipping Address of user

8. ShippingCity Varchar 5 Not NULL City Name

9. ShippingPincode Int 6 Not NULL Pincode for shipping food

10 RegDate Timestamp - Not NULL Registration Date

11. UpdationDate Timestamp - Not NULL Updation Date

4.13.2.Table Name : UsersPhno


Description : Information Of UsersPhno

Sr. No Field Name Field Type Size Constraint Description

1. UID Int 10 Primary Key Customer ID

2. ContactNo Int 10 Not NULL Contact no. of User


60 | P a g e
61 | P a g e
4.13.3. Table Name : Uesrlog
Description : Information of Userslog Table

Sr. No Field Name Field Type Size Constraint Description

1. ULID Int 10 Primary Key Userlog ID

2. UserEmail Int 50 Not NULL Email ID

3. LoginTime Timestamp - Not NULL Login Time

4. LogoutTime Timestamp - Not NULL Logout Time

5. Status Varchar 15 Not NULL Status of userlog

4.13.4. Table Name : Wishlist


Description : Information of Wishlist Table

Sr. No Field Name Field Type Size Constraint Description

1. WID Int 10 Primary Key Wishlist ID

2. UID Int 10 Foreign Key User ID

3. FIID Int 10 Foreign Key Food Item ID

4. PostingDate Timestamp - Not NULL Posting Date

62 | P a g e
4.13.5. Table Name : Orders
Description : Information of Orders

Sr. No Field Name Field Type Size Constraint Description

1. OID Int 10 Primary Key Order ID

2. UID Int 10 Foreign Key User ID

3. FIID Int 10 Foreign Key Food ItemID

4. Quantity Int 2 Not NULL Quantity

5. OrderDate Timestamp - Not NULL Food Ordering date

6 OrderStatus Varchar 15 Not NULL Order Status

4.13.6. Table Name : OrderTrackHistory


Description : Information of OrderTrackHistory Table

Sr. No Field Name Field Type Size Constraint Description

1. OHID Int 10 Primary Key OrderHistory ID

2. OID Int 10 Foreign Key Order ID

3. Status Varchar 10 Not NULL Order Status

4. Remark Varchar 10 Not NULL Remark

5. PostingDate Timestamp - Not NULL Posting Date

63 | P a g e
4.13.7. Table Name : Admin
Description : Information of Admin

Sr. No Field Name Field Type Size Constraint Description

1. AID Int 10 Primary Key Admin ID

2. UserName Varchar 10 Not NULL Admin Name

3. Password Varchar 15 Not NULL Password of Admin

4. CreationDate Timestamp - Not NULL User creation Date

5. UpdationDate Date - Not NULL Updation Date

4.13.8. Table Name : Category


Description : Information of Category

Sr. No Field Name Field Type Size Constraint Description

1. CaID Int 10 Primary Key Category ID

2. CategoryName Varchar 15 Not NULL Category Name

3. CategoryDescription Varchar 100 Not NULL Category


Description

4. CreationDate Timestamp - Not NULL Creation Date

5. UpdationDate Timestamp - Not NULL Updation Date

64 | P a g e
4.13.9. Table Name : Subcategory
Description : Information of Subcategory

Sr. No Field Name Field Type Size Constraint Description

1. SubCatID Int 10 Primary Key SubCategory ID

2. CaID Int 10 Foreign Key Category ID

3. SubCategoryName Varchar 15 Not NULL SubCategory Name

4. CreationDate Timestamp - Not NULL Creation Date

5. UpdationDate Timestamp - Not NULL Updation Date

4.13.10. Table Name : Contact


Description : Information of Contact Us

Sr. No Field Name Field Size Constraint Description


Type

1. CoID Int 10 Primary Key Contact ID

2. Name Varchar 15 Not NULL User anme

3. Email ID Varchar 50 Not NULL Email ID

4. Comment Varchar 255 Not NULL Comment

65 | P a g e
4.13.11. Table Name : Food Item
Description : Information of Food Item Table

Sr. No Field Name Field Type Size Constraint Description

1. FIID Int 10 Primary Key Food Item ID

2. CaID Int 10 Foreign Key Category ID

3. SubCatID Int 10 Foreign Key SubCategory ID

4. FoodName Varchar 20 Not NULL Price of Food Item

5. FoodPrice Int 3 Not NULL Price of Food

6. FoodDescription Varchar 255 Not NULL Food Description

7. FoodImage Varchar 100 Not NULL Food Image

8. ShippingCharges Int 2 Not NULL Shipping Charges

9. PostingDate Timestamp - Not NULL Posting Date

10. UpdationDate Timestamp - Not NULL Updation Date

4.13.12. Table Name : Manager


Description : Information of Manager

Sr. No Field Name Field Type Size Constraint Description

1. MId Int 10 Primary Key Manager ID

2. Username Varchar 15 Not Null Manager UserName

3. Password Varchar 20 Not Null Manager Password

4. CreationDate Timestamp - Not Null Creation Date

5. UpdationDate Timestamp - Not Null Updation Date

66 | P a g e
4.13.13. Table Name : Delivery Boy
Description : Information of Delivery Boy

Sr. No Field Name Field Type Size Constraint Description

1. DBId Int 10 Primary Key Delivery Boy ID

2. DBName Varchar 20 Not NULL Delivery Boy Name

3. UserName Varchar 40 Not NULL User name of Delivery


Boy

4. Password Varchar 50 Not NULL Password of Delivery Boy

5. CreationDate Timestamp - Not NULL Creation Date

6. UpdationDate Timestamp - Not NULL Updation Date

67 | P a g e
4.13.15. DATA DICTIONARY

Data Data Size Alia Description Constraint Table Name


Type ses
Element
Int 10 - A unique ID of Primary Key Admin
AID
Admin

Int 10 - A unique ID of Primary Key Category


CaID
Category

Int 10 - A unique ID of Primary Key Category


CaID
Category

Int 10 - A unique ID of Primary Key Category


CaID
Category

Int 10 - A unique ID of Primary Key Category


CartId
Cart

CategoryD Varchar 255 - It contains Not Null Category


Category
escription Description

CategoryN Varchar 20 - It contains Not Null Category


ame Category Name

Varchar 10 - It contains Not Null Users


ConfirmPas Confirm
s password for
user

Int 10 - It contains Not Null Users


ContactNo Contact no. for
user

CreationDa Timesta - - It contains Not Null Category


te mp category type

CreationDa Timesta - - It contains Not Null Category


mp confirm
te password

CreationDa Timesta - - It contains Not Null Users


mp customer
te address

Int 10 - A unique ID of Primary Key FoodItem


FIID
Food Item

68 | P a g e
Int 10 - A unique ID of Primary Key FoodItem
FIID
Food Item

Int 10 - A unique ID of Primary Key FoodItem


FIID
Food Item

FoodDescri Varchar 255 - It contains Not Null FoodItem


description of
ption food

Varchar 50 - It contains Not Null FoodItem


FoodImage
Image of Food

Varchar 50 - It contains Foreign Key Cart


FoodImage
Image of Food

Varchar 50 - It contains Not NULL FoodItem


FoodName
Name of Food

Varchar 50 - It contains Foreign Key Cart


FoodName
Name of Food

Int 3 - It contains price Not Null FoodItem


FoodPrice
of food

Int 3 - It contains price Foreign Key Cart


FoodPrice
of food

Int 4 - It contains Not Null Cart


GrandTotal
grand total

Timesta - - It contains Not Null Users


LoginTime mp login time for
user

LogoutTim Timesta - - It contains Not NULL Users


mp logout time for
e user

Varchar 20 - It contains Not Null Users


Name
name of user

Int 10 - A unique ID of Primary Key OrderTrackHisto


OHID
Order History ry

Int 10 - A unique ID of Primary Key Orders


OID
Order

Int 10 - A unique ID of Primary Key OrderTrackHisto


OID
Order ry

Timesta - - It contains date Not Null Orders


OrderDate
mp of Order

69 | P a g e
Varchar 10 - It contains Not Null Orders
OrderStatus
Order Status

Varchar 10 - It contains Not Null Users


Password password of
user

Varchar 10 - It contains Not Null Admin


Password password of
admin

PostingDat Timesta - - It contains Not Null Food Item


e mp posting date

PostingDat Timesta - - It contains Not Null OrderTrackHisto


e mp posting date ry

PostingDat Timesta - - It contains Not Null WishList


e mp posting date

Int 2 - It contains Not Null Orders


Quantity quantity of
food items

Quantity Int 2 - Not Null Orders

Timesta - - It contains Not NULL Users


RegDate mp registration
date

Varchar 10 - It contains Not NULL OrderTrackHisto


Remark
ry

Varchar 255 - It contains Not Null Users


ShippingA shipping
ddress address for
order

Int 2 - It contains Foreign Key Cart


ShippingCh shipping
arges address for
order

Int 2 - It contains Not NULL Orders


ShippingCh shipping
arges charges for
order

ShippingCi Varchar 5 - It contains Not NULL Orders


shipping city
ty for order

ShippingPi Int 6 - It contains Not NULL Orders


70 | P a g e
shipping
ncode pincode for
order

Varchar 10 - It contains Not Null Orders


Status status of
ordered food

Varchar 10 - It contains Not Null UserLog


Status status of
ordered food

SubCategor Varchar 15 - It contains Not NULL SubCategory


name of sub-
yName category

Int 10 - A unique ID for Primary Key SubCategory


SubCatID
sub-category

Int 10 - A unique ID for Foreign Key Food Item


SubCatID
sub-category

Int 10 - A unique ID for Primary Key Users


UID
Users

Int 10 - A unique ID for Foreign Key Orders


UID
usesr

Int 10 - A unique ID for Primary Key UserLog


ULID
UserLog

UpdationD Timesta - - It contains Not Null Orders


ate mp Updation date

UpdationD Timesta - - It contains Not Null Users


ate mp Updation date

UpdationD Timesta - - It contains Not Null Admin


ate mp Updation date

UpdationD Timesta - - It contains Not Null Category


ate mp Updation date

UpdationD Timesta - - It contains Not Null SubCategory


ate mp Updation date

Varchar 50 - It contain user Not Null Users


UserEmail
Email Id

Varchar 20 - It contains User Not Null Users


UserName
name

WID Int 10 - A unique ID of Primary Key Wishlist


71 | P a g e
Wishlist

72 | P a g e
4.14. TEST PROCEDURES AND IMPLEMENTATION

 Software Testing

Software testing is the process of evaluation a software item to detect differences between
given input and expected output. Also to assess the feature of A software item. Testing
assesses the quality of the product. Software testing is a process that should be done during
the development process. In other words software testing is a verification and validation
process.

 Verification

Verification is the process to make sure the product satisfies the conditions imposed at the
start of the development phase. In other words, to make sure the product behaves the way we
want it to.

 Validation

Validation is the process to make sure the product satisfies the specified requirements at the
end of the development phase. In other words, to make sure the product is built as per
customer requirements.

1.Basics of software testing

There are two basics of software testing: blackbox testing and whitebox testing.

Blackbox Testing

Black box testing is a testing technique that ignores the internal mechanism of the system and
focuses on the output generated against any input and execution of the system. It is also
called functional testing.

Whitebox Testing

White box testing is a testing technique that takes into account the internal mechanism of a
system. It is also called structural testing and glass box testing.

73 | P a g e
Black box testing is often used for validation and white box testing is often used for
verification.

2.Types of testing

There are many types of testing like

 Unit Testing
 Integration Testing
 Functional Testing
 System Testing
 Stress Testing
 Performance Testing
 Usability Testing
 Acceptance Testing
 Regression Testing
 Beta Testing

Unit Testing

Unit testing is the testing of an individual unit or group of related units. It falls under the class
of white box testing. It is often done by the programmer to test that the unit he/she has
implemented is producing expected output against given input.

Integration Testing

Integration testing is testing in which a group of components are combined to produce output.
Also, the interaction between software and hardware is tested in integration testing if
software and hardware components have any relation. It may fall under both white box
testing and black box testing.

Functional Testing

74 | P a g e
Functional testing is the testing to ensure that the specified functionality required in the
system requirements works. It falls under the class of black box testing.

System Testing

System testing is the testing to ensure that by putting the software in different environments
(e.g., Operating Systems) it still works. System testing is done with full system
implementation and environment. It falls under the class of black box testing.

Stress Testing

Stress testing is the testing to evaluate how system behaves under unfavorable conditions.
Testing is conducted at beyond limits of the specifications. It falls under the class of black
box testing.

Performance Testing

Performance testing is the testing to assess the speed and effectiveness of the system and to
make sure it is generating results within a specified time as in performance requirements. It
falls under the class of black box testing.

Usability Testing

Usability testing is performed to the perspective of the client, to evaluate how the GUI is
user-friendly? How easily can the client learn? After learning how to use, how proficiently
can the client perform? How pleasing is it to use its design? This falls under the class of black
box testing.

Acceptance Testing

Acceptance testing is often done by the customer to ensure that the delivered product meets
the requirements and works as the customer expected. It falls under the class of black box
testing.

Regression Testing

75 | P a g e
Regression testing is the testing after modification of a system, component, or a group of
related units to ensure that the modification is working correctly and is not damaging or
imposing other modules to produce unexpected results. It falls under the class of black box
testing.

Beta Testing

Beta testing is the testing which is done by end users, a team outside development, or
publicly releasing full pre-version of the product which is known as beta version. The aim of
beta testing is to cover unexpected errors. It falls under the class of black box testing.

Test Case : 1
Table Name : Login
Test Procedures and Implementations for Login Page

Functionality Test Scenario Test Test Case Expected


Case Description Result
To check the The Invalid Email Login The associated Error message
functionality of ID is filled and Email ID is should be
the login page. valid password is enterd invalid displayed saying
entered. and the valid “Invalid Email ID
password is or Password”.
entered.

The Valid Email ID The valid Error message


is filled and the associated ID is should be
Invalid password is entered and the displayed saying
entered. invalid password “Invalid Email ID
ID is entered. or Password”.

The valid Email ID The valid Email Error message


is entered and ID is entered and shows “Please fill
password field is password field is in this field”.
left blank. left blank.

The Email ID is left The Email ID is Error message


blank and the valid left blank and the shows “Please fill
password field is valid password in this field”.
entered. field is entered.

76 | P a g e
Enter Valid Email Enter Valid Email Message should
ID and associated ID and associated be displayed
password. password. saying “Login
Successful”.

77 | P a g e
Test Case : 2
Table Name : Register
Test Procedures and Implementations for Registration Page

Functionality Test Scenario Test Case Test Case Expected Result


Description
To check the Full Name field Registration Full Name field Error message
functionality of left blank left blank shows “Please fill in
the this field”.
“Registration
Page:.

Full name field The full name Error message


contains field contains should be displayed
numbers numbers. saying “Enter Only
enter letters and
spaces”.

Email ID field Email ID field Error message


does not follow does not follow shows “Please enter
email format email format a part following @ .
xyz@ is
incomplete”.

Contact No. The Email ID is Error message


field does not left blank and shows “Please
follow phone the valid match the format
number format password field is requested. Phone
and does not entered. number with 7-9
start with 7,8 and remaining 9
and 9 digit digit with 0-9”.

Password and Password and Error message


Confirm Confirm shows “Password
Password Field Password Field and Confirm
Does not match Does not match password do not
match”.

Enter valid data Enter valid Message should


for all fields information for display saying “You
all the are successfully
associated fields register”.

78 | P a g e
79 | P a g e
Test Case : 3
Table Name : Contact Us
Test Procedures and Implementations for Contact Form

Sr. Text Field Test Case Error Validation Status


No. Message
1. UserName Name should contains Enter Only enter RequiredField Successful
only alphabets and letters and Validator
spaces spaces

2. Email ID Email should fold email Enter Valid RequiredField Successful


pattern EmailID Validator

80 | P a g e
CHAPTER 5

USER MANUAL

81 | P a g e
5. USER MANUAL

5.1. USER MANUAL

Firstly, user have to open the Online food delivery system then user can see the
various food items according to food categories. User can see food items with its price. If
user wants to order the food they have to login the account and if they are not already register
themselves then they have to create account and login.

After login to page user can order the food by adding food item in cart. They can do
the payment process by cash on delivery. After payment process they see order history and
within some specific time user can receive their food order.

To order some other food which is not displayed on website then user can do the food
inquiry by calling to staff of restaurant. The contact details are shown in the website. User
can also give their response by using feedback form.

82 | P a g e
5.2.OPERATIONS MANUAL / MENU EXPLANATION

1. Login : Login for Admin,User,Manager and Delivery Boy.

2. Register : Registration facility for User.

3. Logout : Logout by Admin,User,Manager and Delivery Boy.

4. Add to Cart : To order food item user have to first add food items to cart.

5. Wishlist : To order food after some time user can add food item in wishlist.

6. Place Order : After adding food items in cart user place order by click on place order
button.

7. Order Management : Order Management done by Admin and User.

8. User Logs : Admin can view user logs.

9. Insert Food Items : Admin can insert Food item details in database.

10. Update Food Item Details : Admin can update food item details.

11. Delete Food Item Details : Admin can delete food item details.

12. Add Category and Subcategory Details : Admin can add category and Subcategory
details in database.

83 | P a g e
5.3.PROGRAM SPECIFICATIONS / FLOW CHART

84 | P a g e
DRAWBACKS AND LIMITATIONS

1. Potential Delays :
Ordering online is not a time-saving process.Coincidentally, there will be other
customers who would have ordered online, hence there will be delays. Other external factors
which can delay the food delivery process are a shortage of delivery personnel, traffic
fluctuations in particular areas. Delays can damage the brand reputation and can contribute
negative feedback.

2. Expensive :
The restaurant or takeaway prices may be significantly higher than the actual cost
of cooking the meal due to higher overheads for the restaurant.

3. Limited Menu :
Another disadvantage to food delivery systems is the menu choices. Most food
delivery services have a limited number of meals that they offer for consumption. Every few
weeks or months the menu will change, but if you stick to the system for more than a few
months the menu items will become repetitive. You also must eat the meals delivered for that
week.

85 | P a g e
PROPOSED ENHANCEMENT

There are many places where we can improve. The following are the features that we are
about to implement in near future.

1. In future we provide search facilities like price wise searching and track orders.

2. Provide notifications to user about offers and discounts.

3. We can develop mobile application for most of the users who uses smart phones rather than
browsers.

4. There are various modules we are about to implement in near features. All of the above
defined modules are very much important for the Naivedyam Restaurant of any portal like
payment module, searching module,etc.

86 | P a g e
CONCLUSION

In this fast moving life where people don't have time to shop manually, online
shopping has emerged as a time saving and convenient way of shopping. Thus, Online Food
Ordering System has become a boon for the restaurant owners who do not want their
customers to move away just because of the scarcity of time. Customer is the king for every
business and nobody wants to loose the profitable customers. The online food ordering
system provides various features to your customers so as to keep in the list of your 'regular
customers. Customers can enjoy the convenience of ordering food online while sitting at their
homes/offices. This results in a comfort for both restaurant owners as well as their customers
as there is no more annoying phone call or pamphlet/brochure based food ordering.

The Online Food Ordering System system helps the restaurant owners to upload their
menus online so that they can be easily managed or changed and customers can order online
for their favorite cuisines. Moreover recipes can be customized according to the taste and
preferences of the customers. Adding more to this, the system has various others features
which prove to be propitious for the restaurant owners. Let us have a quick glance at them:

With all its utilities and features, the online food ordering system helps the restaurant
owners to create a brand image of their restaurant and mark a position for themselves in the
digital marketplace. To conclude, the online food ordering system as a whole shows a way for
restaurant owners to act in time and lead the cut-throat competition.

87 | P a g e
BIBLIOGRAPHY

Reference Books :

1. PHP : The Complete Reference by Steven Holzner


2. PHP Reference : Beginner to Intermediate PHP5 by Mario Lurig
3. “Beginning PHP and MySQL From Novice to Professional” by W Jason Gilmore
4. “PHP: A Beginner’s Guide” by Vikram Vaswani

1.www.chennaisunday.com
2. www.scribd.com
3.www.w3school.com
4. www.htmltutorial.com
5.www.csstutorial.com
6. www.google.com
7. Creately.com
8. draw.io

88 | P a g e
89 | P a g e