0% found this document useful (0 votes)
13 views

null

The document outlines a project report for an Online Food Ordering System developed by Akhil S as part of his Bachelor of Computer Science degree at Bharathiar University. It details the project's objectives, specifications, design, and development process, emphasizing its user-friendly nature and the technology stack used, including HTML, CSS, and SQLite. The report also includes acknowledgments, a declaration of originality, and a structured table of contents for further sections.

Uploaded by

k.kamal14367
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

null

The document outlines a project report for an Online Food Ordering System developed by Akhil S as part of his Bachelor of Computer Science degree at Bharathiar University. It details the project's objectives, specifications, design, and development process, emphasizing its user-friendly nature and the technology stack used, including HTML, CSS, and SQLite. The report also includes acknowledgments, a declaration of originality, and a structured table of contents for further sections.

Uploaded by

k.kamal14367
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 43

ONLINE FOOD ORDERING SYSTEM

In partial fulfilment of the requirements for the award of the degree of

Bachelor of Computer Science of Bharathiar University,Coimbatore-46.

PROJECT REPORT

Submitted by

AKHIL S

(Reg.No:2022K0016)

Under the Guidance of

Dr. V.S. MEENAKSHI MCA.,M.Phil., Ph.D

Assistant Professor

DEPARTMENT OF COMPUTER SCIENCE

CHIKKANNA GOVERNMENT ARTS COLLEGE

(Affiliated To Bharathiar University Coimbatore)

Tirupur-641602

APRIL- 2023
CHIKKANNA GOVERNMENT ARTS COLLEGE

(Affiliated To Bharathiar University)

Tirupur-641602

This is to certify that the project work entitled

ONLINE FOOD ORDERING SYSTEM

is the bonafide record of project work done by

AKHIL S

(Reg.No:2022K0016)

In partial fulfilment of requirements for the degree of Bachelor of

Science in Computer Science of Bharathiar University

Guide Head of the Department

submitted for the viva voce Examination held on _____________

Internal Examiner External Examiner


DECLARATION

AKHIL S (2022K0016) hereby declares that the project entitled ONLINE FOOD
ORDERING SYSTEM submitted to Bharathiar University in partial fulfilment of the
requirements for the award of the degree of Bachelor of Science in Computer Science. The
project is a record of original software development carried the by me during the period
(2020-2023) of study in CHIKKANNA GOVERNMENT ARTS COLLEGE under the
guidance of Dr. V.S. MEENAKSHI MCA.,M.Phil., Ph.D, Assistant Professor,
Department of Computer Science and that this work has not been submitted to any other
university for any other degree.

Place:Tirupur Signature of the candidate

Date:
ACKNOWLEDEMENT

I obliged to our great almighty god for showering all his precious blessing upon me as
the psalmist who says unless the lord builds the house Its builders labour in vain I felt his
help and sustaining proper sufficient in every step.

Gratitude is the memory of heart I wish to my sincere thanks to our Principal Dr V.


KRISHNAN M.A.,M.Phil.,B.Ed., Ph.D.,, because allowing me to have the extensive use of
the college facilities to the Project.

I thank Dr. R.SHANKAR MCA., M.Phil.,Ph.D, Assistant Professor and Head of the
Department of Computer Science CHIKKANNA GOVERNMENT ARTS COLLEGE,
Tirupur for the guidance and valuable suggestion during the course of my study.

I would like to express my hearty thanks to Dr. V.S. MEENAKSHI MCA.,M.Phil.,


Ph.D, Assistant Professor, Department of Computer Science CHIKKANNA
GOVERNMENT ARTS COLLEGE Tirupur for his valuable guidance and encouragement
during the project work.

I would also like to thank all the staff members and other authorities who helped and
supported me throughout my course of study. Above all, I would like to thank my Beloved
Parents and Friends who have encouraged and supported me during the course of my project
work. I dedicate this project to them.
CONTENTS
Chapter Description Page
Number
SYNOPSIS 1

1 INTRODUCTION 2

2
1.1 ABOUT THE PROJECT

3
1.2 SYSTEM SPECIFICATION

1.2.1 HARDWARE SPECIFICATION 3

1.2.2 SOFTWARE SPECIFICATION 3

2 SYSTEM STUDY 10

2.1 EXISTING SYSTEM 10

10
2.1.1 DRAWBACKS

10
2.2 PROPOSED SYSTEM

11
2.2.1 FEATURES

3 12
SYSTEM DESIGN AND DEVELOPMENT

12
3.1 FILE DESIGN

12
3.2 INPUT DESIGN

3.3 OUTPUT DESIGN 13

14
3.4 DATABASE DESIGN

17
3.5 SYSTEM DEVELOPMENT

17
3.5.1 DESCRIPTION OF MODULES
4 19
SYSTEM TESTING AND IMPLEMENTATION

5 21
CONCLUSION

22
BIBLIOGRAPHY

23
APPENDICES

23
A. DATA FLOW DIAGRAM

26
B. TABLE STRUCTURE

29
C.SAMPLE CODING

34
D. SAMPLE INPUT

37
E.SAMPLE OUTPUT
SYNOPSIS

The "Online Food Ordering System" has been developed to override the
problems prevailing in the practicing manual system. This software is supported to eliminate
and , in some cases, reduce the hardships faced by this existing system. Moreover, this
system is designed for the particular need of the company to carry out operations in a smooth
and effective manner

No formal knowledge is needed for the user to use this system. Thus, by this all it
proves it is user-friendly .Online Food Ordering System, as described above, can lead
to error free, secure ,reliable and fast management system. It can assist the user to
concentrate on theirother activities rather to concentrate on the record keeping.
Thus, it will help organization in better utilization of resources. This is designed to
assist in strategic planning and will help you ensure that yourorganization is equipped
with the right level of information and details for your futuregoals. Also, for those busy
executives who are always on the go, our systems comewith remote access features, which
will allow you to manage your workforce anytime, at all times. These systems will
ultimately allow you to better manage resources

. The project is developed using HTML & CSS as front end development tool and
MYSQL LITE 3 as backend database.

1
1.INTRODUCTION

1.1 ABOUT THE PROJECT

Online food ordering is the process of ordering food from a website. The product can
either be food that has been specially prepared for direct consumption (such as vegetables
straight from a farm or garden, frozen meats, etc.) or food that has not been (such as
direct from a certified home kitchen, restaurant). The effort to create an online food
ordering system aims to replace the manual method of taking orders with a digital one.
The ability to rapidly and correctly create order summary reports whenever necessary is a
key factor in the development of this project.

The potential of an online food ordering system is enormous. A restaurant can use this
project to keep track of customer orders. This project is simple, quick, and precise. There
is less disk space needed. SQLite3 Server is used as the backbone by the online food
ordering system, eliminating the risk of data loss and ensuring data security.

The system may well be implemented in any organization that distributes foodstuff.
Because the whole process of accepting orders is automated, the meal ordering
experience for both the client and the restaurant is optimized. Online food realtime
ordering management system's objective is to give customers a way to order food and
drinks over the internet. The primary reason for all of this is because it is beneficial to
both the client and vendor.

2
1.2. SYSTEM SPECIFICATION

1.2.1 HARDWARE CONFIGURATION

Processor : Pentium i3 processor

RAM : 4 GB

Hard Disk : 1 TB

Key Board : Standard 104 Keys

Printer : EPSON M200

Monitor : HCL colour monitor

Mouse : USB Optical Mouse

1.2.2 SOFTWARE SPECIFICATION

Operating System : MS-Windows 10 ,Mac or Ubuntu LTS

Front End : HTML,CSS

Back End : SQLite3 (Django Administration)

Language : Python

IDE : SQLite3

3
FRONT END DETAILS : [ HTML & CSS ]

HTML

The Hyper Text Markup Language or HTML is the standard markup


language for documents designed to be displayed in a web browser. HTML is
a markup language that web browsers use to interpret and compose text, images, and
other material into visible or audible web pages.

 Web browsers receive HTML documents from a web server or from local storage
and render the documents into multimedia web pages. HTML describes the structure
of a web page semantically and originally included cues for its appearance.

 HTML elements are the building blocks of HTML pages. With HTML
constructs, images and other objects such as interactive forms may be embedded into
the rendered page.

 Default characteristics for every item of HTML markup are defined in the browser,
and these characteristics can be altered or enhanced by the web page designer's
additional use of CSS

 HTML provides a means to create structured documents by denoting


structural semantics for text such as headings, paragraphs, lists, links, quotes, and
other items.

 HTML elements are delineated by tags, written using angle brackets Tags such
as <img /> and <input /> directly introduce content into the page. Other tags such

as <p> and </p> surround and provide information about document text and may

include sub-element tags. Browsers do not display the HTML tags but use them to
interpret the content

 Filename extension .html.

 HTML can embed programs written in a scripting language such as JavaScript or


python which affects the behavior and content of web pages.

 The first publicly available description of HTML was a document called "HTML
Tags", first mentioned on the Internet by Tim Berners-Lee in late 1991. It describes

4
18 elements comprising the initial, relatively simple design of HTML. Except for the
hyperlink tag, these were strongly influenced by SGMLguid, an in-house Standard
Generalized Markup Language (SGML)-based documentation format at CERN.
Eleven of these elements still exist in HTML 4.

HTML versions:

 HTML 2 -It was released on November 24, 1995

 HTML 3 - It was released on January 14, 1997

 HTML 4 - It was released on December 18,1997

 HTML 5 - It was released on October 28, 2014

CSS

Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of
a document written in a markup language such as HTML or XML (including XML dialects
such as SVG, MathML or XHTML). CSS is a cornerstone technology of the World Wide
Web, alongside HTML and JavaScript

CSS is designed to enable the separation of content and presentation, including layout,
colors, and fonts. This separation can improve content accessibility; provide more flexibility
and control in the specification of presentation characteristics; enable multiple web pages to
share formatting by specifying the relevant CSS in a separate .css file, which reduces
complexity and repetition in the structural content; and enable the .css file to be cached to
improve the page load speed between the pages that share the file and its formatting.

Separation of formatting and content also makes it feasible to present the same markup
page in different styles for different rendering methods, such as on-screen, in print, by voice
(via speech-based browser or screen reader), and on Braille-based tactile devices. CSS also
has rules for alternate formatting if the content is accessed on a mobile device.

5
The CSS specifications are maintained by the World Wide Web Consortium (W3C).CSS
has a simple syntax and uses a number of English keywords to specify the names of various
style properties.A style sheet consists of a list of rules. Each rule or rule-set consists of one or
more selectors, and a declaration block.

CSS was first proposed by Håkon Wium Lie on 10 October 1994. At the time, Lie was
working with Tim Berners-Lee at CERN. Several other style sheet languages for the web
were proposed around the same time, and discussions on public mailing lists and inside
World Wide Web Consortium resulted in the first W3C CSS Recommendation (CSS1) being
released in 1996. In particular, a proposal by Bert Bos was influential; he became co-author
of CSS1, and is regarded as co-creator of CSS

Variations

CSS has various levels and profiles. Each level of CSS builds upon the last, typically
adding new features and typically denoted as CSS 1, CSS 2, CSS 3, and CSS 4. Profiles are
typically a subset of one or more levels of CSS built for a particular device or user interface.

 CSS 1 - It was released on 17 December 1996


 CSS 2 - It was released on May 1998
 CSS 2.1- It was released on 25 February 2004
 CSS 3 - It was released on 24 June 2018

6
BACK END DETAILS : [ SQLite ]

SQLite is a database engine written in the C programming language. It is not a


standalone app; rather, it is a library that software developers embed in their apps. As such, it
belongs to the family of embedded databases. It is the most widely deployed database
engine, as it is used by several of the top web browsers, operating systems, mobile
phones , and other embedded systems.

Many programming languages have bindings to the SQLite library. It generally follows
PostgreSQL syntax, but does not enforce type checking by default. This means that one can,
for example, insert a string into a column defined as an integer.

History

D. Richard Hipp designed SQLite in the spring of 2000 while working for General Dynamics
on contract with the United States Navy. Hipp was designing software used for a damage-
control system aboard guided-missile destroyers, which originally used HP-UX with an IBM
Informix database back-end. SQLite began as a Tcl extension

In August 2000, version 1.0 of SQLite was released, with storage based on gdbm (GNU
Database Manager). In September 2001, SQLite 2.0 replaced gdbm with a custom B-tree
implementation, adding transaction capability. In June 2004, SQLite 3.0 added
internationalization, manifest typing, and other major improvements, partially funded by
America Online. In 2011, Hipp announced his plans to add a NoSQL interface to SQLite, as
well as announcing UnQL, a functional superset of SQL designed for document-oriented
databases. In 2018, SQLite adopted a Code of Conduct based on the Rule of Saint Benedict
which caused some controversy and was later renamed as a Code of Ethics.

SQLite is one of four formats recommended for long-term storage of datasets approved for
use by the Library of Congress

7
Design

SQLite was designed to allow the program to be operated without installing a database
management system or requiring a database administrator. Unlike client–server database
management systems, the SQLite engine has no standalone processes with which the
application program communicates. Instead, a linker integrates the SQLite library —
statically or dynamically — into an application program which uses SQLite's functionality
through simple function calls, reducing latency in database operations; for simple queries
with little concurrency, SQLite performance profits from avoiding the overhead of inter-
process communication.

Before we proceed to explain MySQL database system, let's revise few definitions related to
database.

 Database: A database is a collection of tables, with related data.


 Table: A table is a matrix with data. A table in a database looks like a simple spreadsheet.
 Column: One column (data element) contains data of one and the same kind, for example the
column postcode.
 Row: A row (= tuple, entry or record) is a group of related data, for example the data of one
subscription.
 Redundancy: Storing data twice, redundantly to make the system faster.
 Primary Key: A primary key is unique. A key value can not occur twice in one table. With a
key, you can find at most one row.
 Foreign Key: A foreign key is the linking pin between two tables.
 Compound Key: A compound key (composite key) is a key that consists of multiple
columns, because one column is not sufficiently unique.
 Index: An index in a database resembles an index at the back of a book.
 Referential Integrity: Referential Integrity makes sure that a foreign key value always
points to an existing row.

8
Web browsers

The browsers Google Chrome, Opera, Safari and the Android Browser all allow for storing
information in, and retrieving it from, a SQLite database within the browser, using the Web SQL
Database technology, although this is rapidly becoming deprecated (namely superseded by
IndexedDB). Internally, these Chromium based browsers use SQLite databases for storing
configuration data like site visit history, cookies, download history etc

Web application frameworks

Symfony

Laravel

Bugzilla

Django's (default database management system)

Drupal

Trac

Ruby on Rails's (default database management system)

web2py

Jam.py

9
2.SYSTEM STUDY
2.1 EXISTING SYSTEM

The Existing system in the food ordering is manual system. Each and every action is
done manually using papers. It takes is more time and some mistakes are possible for each
actions. The maintenance is also difficult for the existing system. In the above requirements
are performed by the manual is very slowly.

As the customer details are manually maintained, it takes huge time to search for
existing data for delivered food iteams for repeated customers . Manual maintenance of
details may lead to confusion.

2.1.1 DRAWBACKS OF EXISTING SYSTEM

 It is difficult to modify the Customer’s orderd food details. More than


two order from a customer may be confusing to the delivery and
payment
 Time taken for each action is more.
 Verification of data such as retrieved data, collected data, etc are
tedious.
 Generating reports on daily orders and food delivery takes more time
 As calculations are done manually, greater chance for errors.
 Customer compulsory need go hotels for getting foods.
2.2 PROPOSED SYSTEM

To overcome the drawbacks of the existing system (i.e) manual system, the Food
Ordering is computerized. The proposed system is designed to give a good interface to the
user and restaurant. The basic objective is to automate the activities like new customer
registration, new order and order delivery and payment data collection.The proposed online
food ordering system will eliminate all these manual interventions and increase the speed of
the whole process. The system will allow customers to register online and successfully
submit their orders and payment through cash on delivery credit card ,debit card ,UPI and net
banking.

10
The system has inbuilt validation system to validate the entered data. The customer
can login to the system to check on the status of the delivery. The system will show the all
kinds of available foods and details about already delivered food for clients . The system also
provides information about the cost of each food . This data will be stored in the database for
further reference or audit. Proposed system ensures that very fewer efforts will be required to
take a new food order. Proposed system has the capability to express the information in a
better and more meaningfull.

2.2.1FEATURES OF THE PROPOSED SYSTEM

 Reduce the man power and make machines do the work.


 Eliminate the drawbacks of paperwork.
 Significantly reduce your overhead costs.
 Offers better customer service.
 Data is stored by the system in an organized manner.
 User friendly reports.
 admin can manage the order
 admin and user can modify the order
 admin can see the list of all order
 customer can view order

11
3. SYSTEM DESIGN AND DEVELOPMENT

3.1 FILE DESIGN

Menus and Files are created for displaying the information about foods and price and
its database oriented. This system contains the menus for various kinds of operations.

The system analyst is responsible for designing files, determining their contents and
selecting a method for organizing the data. This system also contains the command buttons as
part of the user interface. Data are accumulated into files that are proposed or maintained by
the system.

This system contains the menus for various kinds of operations. Menus and Files are created
for displaying the information about Remote monitoring System. This system also contains
the command buttons as part of the user interface.

File design process is to design the various inputs needed into a machine-oriented
format. The main objective is to create an input layout that is easy to follow and to avoid
operator errors. In the system design phase, the expanded data flow diagram identifies logical
data flows, data stores, sources and destination. A system flowchart specifies the flow of the
program. Input data are collected and organized into groups of similar data. Once identified,
appropriate input media are selected for processing.

3.2 INPUT DESIGN


Input Design is one of the most expensive phases of the operation of computerized
system and is often the major problem of a system. A large number of problems with a
system can usually be tracked backs to fault input design and method.

Needless to say, therefore, that the input data is the life blood of a system and have to
be analyzed and designed with at most case and consideration.

The decisions made during the input design are

 To provide cost effective method of input


 To achieve the highest possible level of accuracy

12
 To ensure that input is understand by the user.
System analysis decide the following input design details like, what data to input, what
medium to use, how the data should be arranged or coded, data items and transaction needing
validations to detect errors and at last the dialogue to guide user in providing input.

Input data of a system may not be necessarily is raw data captured in the system from
scratch. These can also be the output of another system or subsystem. The design of input
covers all phases of input from the creation of initial data to actual entering the data to the
system for processing. The design of input involves identifying the data needed, specifying
the characteristics of each data item, capturing & preparing data for computer processing and
ensuring correctness of data.

Input designs are forms which as follows,

1. Login Details
2. Customer Details.
3. Food Details
4. Price Details
5. Order Details
6. Delivery Details

3.3 OUTPUT DESIGN


Output Design generally refers to the result and information that are generated by the
system for many end-user, output is the main reason for developing the system and the basis
on which they evaluate the usefulness of the application.

The objective of a system finds its shape in terms of the output. The analysis of the
objective of a system leads to determination of output. Output of a system can face various
forms. The most common are report, screen display, printed forms, graphical drawing etc.,
the output also vary in terms of their contents frequency, timing & format. The users of the
output from a system are the justification for its existence. If the outputs are inadequate in
any way, the system is the itself is adequate. The basic requirement of output are that it
should be accurate, timely and appropriate, in terms of content, medium and layout for its
intended purpose.

13
The output design contains the following reports

1) Customer report

2) Order report

i) Daily report

ii) Monthly report

iii) Period-wise report

3) Delivery report

i) Daily report

ii) Monthly report

iii) Period-wise report

3.4 DATA BASE DESIGN

Data base is designed to manage large bodies of information. The management of data
involves both the definitions of structures for the storage of information. In addition the data
base system must provide for the safety of the information solved, despite system crashes or
due to attempts at unauthorized access. For developing an efficient database we have to fulfil
certain conditions such as controlled redundancy.

a) Defining the data

b) Inputting the data

c) Locating the data

d) Accessing the data

e) Communicating the data

f) Revising the data

Objectives of Data base design

In this data base design several objectives are designed such as :

14
a) Ease of use

b) Control of data integrity

c) Control of redundancy

d) Control of security

e) Data independence (logical & physical)

f) Data storage protection

g) System performance

h) System functions

i) System compatibility

For achieving the abovementioned criteria’s we have to make use of various features
that are available with then SQLite by enforcing integrity constrains, we can ensure data
integrity and reduce data inconsistency to a great extend.

Data Normalisation

Normalization is the term obtained from the Latin word “NORMA” which means that
square used by the carpenter. Normalization is the process of simplifying the relationship
between data elements in a record. Through normalization a collection of data in a record
structure is replaced by successive record structures that are simpler and can be managed
efficiently. While designing the data base, we have to implement the concept of
normalization to avoid redundancy in database. Normalization is being carried out for
four reasons;

 To structure the data so that any pertinent relationship between entities can be
represented.

 To permit simple retrieval of data in response to query and reports required.

 To simplify data maintenance procedure such as insertion, deletion and updating.

 To reduce the need to be structured or recognized data with new application


requirements arise.

15
The major normalization strategies are:

(a) First Normal Form

(b) Second Normal Form

(c) Third Normal Form

(d) Boyce/Codd Normal Form (BCNF)

First Normal Form

First Normal Form is achieved when all repeating groups in a record are removed, so
that record is of fixed length. A repeating group, reoccurrence of a data item or group of
data item within a record indicates another relation.

Second Normal Form

It is achieved when a record is in first normal form and each item in the record is
functionally dependency. A data item is functionally dependent of its value is uniquely
associated with a specific item. To achieve second normal form every column in a table
that is not dependent on the primary key of the record should be removed and used to
form a separate relation.

Third Normal Form

Third Normal Form is achieved when all transitive dependencies are removed from a
record. That is, if A is functionally dependent on B and B is functionally dependent on C,
then A is functionally dependent on C.

Boyce/Codd Normal Form

BCNF is often used to distinguish the new 3NF from the old. An attribute possible
composite is called as ‘determinant’, if other attributes are fully functionally determined
this attribute(or on which some other attribute is fully functionally dependent on this
attribute).

16
A table in BCNF, if every determinant is a candidate key. To achieve a table in
BCNF, remove fields which are fully functionally dependent on a determinant, which
does not act as a candidate key.

3.5 SYSTEM DEVELOPMENT

The process of software development services in India goes through a series of stages in step
wise fashion that almost every developing company follows.

Known as the ‘software development life cycle,’ these six steps include planning, analysis,

design, development & implementation, testing & deployment and maintenance. Let’s study

each of these steps to know how the perfect software is developed. The actual task of

developing the software starts here with data recording going on in the background. Once the

software is developed, the stage of implementation comes in where the product goes through a

pilot study to see if it’s functioning properly

3.5.1 DESCRIPTION OF MODULES

In this project Online Food Ordering System has three modules. They are
Customer Registration, Login, Wishlist, Cart, Order, Payment , Delivery

The software has the following modules:

1 Registration

2 Login

3 Wishlist

4 Cart

5 Order

6 Payment

7 Delivery
Registration

The registration module of food ordering system is an important part of the system
because it is responsible for creating and maintaining the customer and restaurant

17
management accounts. This module is also responsible for verifying the information and
ensuring that it is eligible to use the system.

Login

A customer will get the username and password after the registration process.Using this
username and password the customer can log in to the website where the food is ordered.

Wishlist

This wishlist module allows customers to create personalized collections of foods


they want to buy and save them in their user account for future reference. Wishlist signify a
customer’s interest in a product without an immediate intent to purchase

Cart

By using this module we can add as many items to the cart after adding all the dishes we
want, and then order in a single stroke.

Order

After choosing the food we can order it by using BuyNow option .we can make order for
existing address or new one.

Payment

A payment module is a group of payment features and settings, often made available by third
parties. For example, Authorize.Net, Chase Paymentech, and RazorPay are examples of
payment modules. In this project we used RazorPay payment module. Buy using this
RazorPay module we can pay the payment through UPI Id, Net Banking, Debit card ,Credit
card or we can pay the payment at the doorstep of delivery.

Delivery

After the order we can track delivery of our ordered products(order status) such as On The
Way, Packed , Delivered , Cancel.

18
4 .SYSTEM TESTING AND IMPLEMENTATION

SYSTEM TESTING

Testing is a set of activities that can be planned in advance and conducted


systematically. For this reason a template of software testing – a set of steps into which we
can place specific test case design methods – should be defined for software engineering
process. A successful testing is one that uncovers any discovered errors.

Unit Testing: -

Unit testing focuses verification effort on the smallest unit of software design. Using
the procedural design description as a guide, important control paths are tested to uncover
errors within the boundary of the module.

In the Registration form, the user should enter all the details required.
If anyone of them is neglected then an exception will be generated.

during the test, the user should answer at least one question. Otherwise
an exception will be generated. The selected answer can be wrong.

Integration Testing:-

In this testing all the tested modules are combined into subsystem and then tested.
The effective testing tests the reliability of the system. The system was tested with both real
and simulated data and outputs are generated that satisfies the user.

19
IMPLEMENTATION

The system implementation phase consists of testing the developed software with
sample data and Correction of any errors if identified. It is also used to creating the fields of
the system with sample data and making necessary changes to the system to find out errors
and training of user personnel.

Implementation is the stage of the project when the theoretical design is turned out
into a working system. Thus, it can be considered to be the most critical stage in achieving a
successful new system and in giving the user, confidence that the new system will work and
be effective.

The implementation stage involves careful planning, investigation of the existing


system and it’s constraints on implementation, designing of methods to achieve changeover
and evaluation of changeover method

20
5. CONCLUSION

Finally, the Online food Ordering System software is created successfully. Handling large
volumes of data manually demands lot of strains. The time consumption will also be greater
because of the processing of large volumes data. Subsequently, the manual handling of large
volume data will lead to great charges of error.

With online food ordering system, a restaurant menu online can be set up and the customers
can easily place order. Also with a food menu online, tracking the orders is done easily, it
maintain customer’s database and improve the food delivery service. The restaurants can
even customize online restaurant menu and upload images easily. Having a restaurant
menu on internet, potential customers can easily access it and place order at their
convenience. Thus, an automated food ordering system is presented with features of
feedback and wireless communication. The proposed system would attract customers and
adds to the efficiency of maintaining the restaurant ordering and billing sections.

21
6. BIBLIOGRAPHY

TEXT BOOKS REFERRED

 Django for API’s:Build web APIs with python &Django development”, Author:
William S. Vincet
 Two Scoops of Django1.11: Author: Daniel Ray GreenField
 Django for Professional, Author: William S. Vincet
 Django 2 by Example, Author :Antonio Mele
 Django Design Patterns and Best Practices, Author :Arun Ravindran
 Django Unleashed, Author :SAMS
 Beginnig django E-Commerce, Author :Jim McGaw
 Lightweigt Django 1st Edition, Author :Julia Elman & Mark Lavin
 Practical Django 2 and Channels 2, Author :Federico Marani

 Russell Dyer, "MySQL in a Nutshell", 2nd ed, O'reilly, 2008.

 Software Testing, 2nd Edition, 2005, Author: Ron Patton

WEBSITES REFERRED

 http:\\www.w3schools.com
 http:\\www.learnpython.org
 http:\\www.coursera.org
 http:\\www.codecademy.com
 http:\\www.developers.google.com
 http:\\www.code.org
 http:\\www.codeacademy.com

22
7. APPENDICES

A.DATA FLOW DIAGRAM

Category

Management

Order
Food
Management Management
Management

OnlineFood
Ordering
system

System User
Customer
Management
Management

Login
Management

Zero Level DFD –Online Food Ordering System

23
First Level DFD –Online Food Ordering System

Food Generate
Management Food Report

Category Generate Category


Management Report

Order Generate
Management Order Report

Online Food
Delivery Ordering Generate
Management system Delivery Report

Login Check user


Management login Details

System User Generate System


Management User Report

24
Check
Login to
Admin Roles of Manage Food
System
Access Details

Manage Category
Forgot Details

Password
Manage Order
Manage
Check Details
Modules
Credentials

Manage Customer

25
Details
Send
Email to
the user Manage Payment
Details

Manage Delivery
Details
Manage
Manage Roles of Manage user
System admins user Permission
Manage report

Second Level DFD – Online Food Ordering System


B.TABLE STRUCUTRE

Table Name: Users


Primary key: UserName

Table Description: This table is used to contain all customer details

FIELD DATA TYPE SIZE DESCRIPTION


NAME

UserName VARCHAR2 20 Customer ID

Email VARCHAR2 50 Email Id of the Customer

Password VARCHAR2 10 Password of the Customer

Table Name: Food


Primary key: FoodName

Table Description: This table is used to contain all the details of the food.

FIELD NAME DATA TYPE SIZE DESCRIPTION

FoodName VARCHAR2 4 Name of the food

Selling_price INTEGER 50 Price of the actual item

Discounted_price INTEGER Discounted price of the item


4

Discription VARCHAR2 50 Discription of the food

State
VARCHAR2 20 Name of the state

26
District
20 Name of the District
VARCHAR2(20)

Pincode
INTEGER 6 Pincode of the city

Table Name: Orders


Primary key: Username

Table Description: This table is used to contain all details of the Order

FIELD NAME DATA TYPE SIZE DESCRIPTION

Username VARCHAR2 20 Name of the User

CustomerName VARCHAR2 20 Name of the Customer

Product VARCHAR2 25 Name of the Product

Quantity INTEGER 3 Quantity of the product

Status VARCHAR2 20 Status of the the Orderd product

Payment VARCHAR2 20 Status of the payment

27
Table Name: Wishlist
Primary key: Name

Table Description: This table is used to contain all details of the Wishlist.

FIELD DATA TYPE SIZE DESCRIPTION


NAME

Name VARCHAR2(20) 20 Name of the Customer

Product VARCHAR2(30) 50 Name of the Product

Table Name: Payment


Primary key: Order Id

Table Description: This table is used to contain all details of the payment.

FIELD NAME DATA TYPE SIZE DESCRIPTION

OrderID INTEGER 2 ID of the order

Username VARCHAR2 20 User name of the Customer

Amount INTEGER 4 Total amount of the product

Payment Status VARCHAR2 20 Status of the payment

Payment Id INTEGER 5 Id of the payment

28
C.SAMPLE CODING

{% extends 'ss/base.html' %}

{% load static %}

{% block title %}Customer Registration{% endblock title %}

{% block main-content %}

<div class="container">

<div class="row my-3">

<div class="col-sm-6 offset-sm-3">

<h3>Customer Registration</h3>

<hr>

<form action="" method="post" novalidate class="shadow p-5">

{% csrf_token %}

{% for fm in form %}

{{fm.label_tag}} {{fm}} <small class="text-


danger">{{fm.errors|striptags}}</small>

<br>

{% endfor %}

<input type="submit" value="submit" class="btn btn-


primary">

<br>

<div class="tetx-center text-primary fw-bold"><br>

<small>Existing User ? <a href="{% url 'login' %}"


class="text-danger">Login Now</a> </small>

</div>

29
{% if form.non_field_errors %}

{% for error in form.non_field_errors %}

<p class="alert alert-danger my-


3">{{error}}</p>

{% endfor %}

{% endif %}

{% if messages %}

{% for msg in messeges %}

<div class="alert alert-{{msg.tags}}"


role="alert">

{{msg}}

</div>

{% endfor %}

{% endif %}

</form>

</div>

</div>

</div>

{% endblock main-content %}

{% extends 'ss/base.html' %}

{% load static %}

{% block title %}Login{% endblock title %}

{% block main-content %}

<div class="container">

<div class="row my-3">

<div class="col-sm-6 offset-sm-3">

30
<h3>Login</h3>

<hr>

<form action="" method="post" novalidate class="shadow p-5">

{% csrf_token %}

{% for fm in form %}

{{fm.label_tag}} {{fm}} <small class="text-


danger">{{fm.errors|striptags}}</small>

<br>

{% endfor %}

<small><a href="{% url 'password_reset' %}"> Forget Password ?</small>

<br>

<input type="submit" class="btn btn-primary mt-4" value="Login">

<div class="text-center text-primary fw-bold">

<small>New User? <a href="{% url 'customerregistration' %}" class=" text-


danger"> Create an Account</a></small>

</div>

{% if form.non_field_errors %}

{% for error in form.non_field_errors %}

<p class="alert alert-danger my-


3">{{error}}</p>

{% endfor %}

{% endif %}

</form>

</div>

</div>

</div>

31
{% endblock main-content %}

{% load static %}

{% block title %}category{% endblock title %}

{% block main-content %}

<div class="container">

<div class="row flex justify-content-between">

<div class="img col-lg-5 mt-5">

<img src="{{product.product_image.url}}" class="image col-


xs-6

col-sm-12 col-lg-12 mt-3 text-sm-center w-100 h-75" alt="">

</div>

<div class="productdetail col-lg-5">

<h1 style="font-family: Georgia; font-size:


50px;">{{product.title}}</h1>

<h5>Rs.{{product.discounted_price}}/-</h5>

<small class="text-decoration-line-through text-muted

fs-5"><del>Rs. {{product.selling_price}}/-</small></del>

<br><br><h4> About</h4>

<ul class="fs-5" style="font-family: Rajdhani;">

<li>{{product.description}}</li>

<li>{{product.composition}}</li>

<li>{{product.prodapp}}</li>

</ul>

<form action="/add-to-cart" class="d-inline">

<input type="hidden" name="prod_id"


value="{{product.id}}" />

32
<button type="submit" class="btn btn-primary shadow
px-5 py-2 ">Add to cart</button>

</form>

<a href="{% url 'showcart' %}" class="btn btn-warning shadow


px-5 py-2 ms-4">Buy Now</a>

{% if wishlist %}

<a pid={{product.id}} class="minus-wishlist btn btn-danger


shadow px-5 py-2 ms-4"><i class="fas fa-heart fa-lg"></i></a>

{% else %}

<a pid={{product.id}} class="plus-wishlist btn btn-success


shadow px-5 py-2 ms-4"><i class="fas fa-heart fa-lg"></i></a>

{% endif %}

</div>

</div>

</div>

{% endblock main-content %}

33
D.SAMPLE INPUT

34
35
36
E. SAMPLE OUTPUT

37

You might also like