Download as pdf or txt
Download as pdf or txt
You are on page 1of 44

A

Project Report on

Food Order Online

Submitted in the partial fulfillment of the requirement for the award of


Degree of

Master of Computer Application


(Session: 2017-2020)

Under Supervision of: Submitted By:


Dr.Ramesh kait Rohit Kumar
MCA-6th Sem
RollNo: 53

DEPARTEMENT OF COMPUTER SCIENCE & APPLICATION


KURUKSHETRA UNIVERSITY KURUKSHETRA

Page 1
Department of Computer Science & Applications
Kurukshetra University, Kurukshetra

DECLARATION

I, Rohit Kumar, a student of Master of Computer Applications (MCA),VIth semester


in the Department of Computer Science & Applications, Kurukshetra University,
Kurukshetra, under Roll No.53, session 2017-2020, hereby declare that the project
entitled “Food Order Online” has been completed by me at “Appworx” after the
theory examination of Vth semester.
The matter embodied in this project work has not been submitted earlier for award of
any degree or diploma to the best of my knowledge and belief.

Date: (Rohit Kumar)

Page 2
Page 3
Acknowledgement

Acknowledgement is the perfect way to convey heartiest thanks to all outstanding

personalities. I consider myself fortunate to get the opportunity of doing a project, yet

the opportunity could not have been utilized without the guidance and support of

many individuals.

First of all, I wish to express my gratitude to my guide Dr. Ramesh kait, Assistant

Professor, Department of computer science & application, K.U. Kurukshetra for his

cooperation and tell me the right direction in preparing this project. I was fortunate to

have him as my project guide. He was ever willing to give me all kind of support and

encouragement.

I also register my gratitude to project guide Ms. Seema Chauhan for allowing me to

undergo training at Appworx pvt.ltd, Panchkula.

I am highly indebted to Appworx pvt.ltd, Panchkula especially Ms. Seema Chauhan,

for giving me a rare opportunity to undertake this project.

Finally, I would be failing to my duty if i did not put on record my deep sense of

obligation to my parents and friends, who provided me an environment conducive to

hard work.

(Rohit Kumar)

Page 4
INDEX

NAME OF TOPIC PAGE NO.

1. INTRODUCTION 6-9

2. REQUIREMENT ELICITATION 10-14

3. SYSTEM DESIGN 15-22

4. IMPLEMANTATION TOOLS AND TECHNOLOGY 23-25

5. TESTING 26-29

6. DEPLOYMENT AND MAINTENANCE 30-31

7.PROJECT SCREENSHOT & CODE 32-41

8. CONCLUSION AND FUTURE SCOPE 42-43

9. BIBLIOGRAPHY 44

Page 5
1.1 Overview of the project

Nowadays due to advancement in technology everything is available online on the


internet. Almost everyone is gathering and downloading the information here and
there from the internet. The aim of developing Online Food Ordering system project
is to replace the traditional way of taking orders with computerized system. Another
important reason for developing this project is to prepare order summary reports
quickly and in correct format at any point of time when required. Food Ordering
System is an application which will help restaurant to optimized and control over
their restaurants. For the waiters, it is making life easier because they don’t have to
go kitchen and give the orders to chef easily. For the management point of view, the
manager will able to control the restaurant by having all the reports to hand and able
to see the records of each employees and orders. This application helps the
restaurants to do all functionalities more accurately and faster way. Food Ordering
System reduces manual works and improves efficiency of restaurant. This application
is helping Food Ordering s to maintain the stock and cash flows and there are many
more functionalities, like as
 To Store records,
 Control orders and service,
 Control staff and shifting,
 Control multiple branches.
1.2 Objectives of the project
 A search engine on the website to allow customers to find specific types of
merchandise.
 A secure online transaction system that will allow shoppers to purchase goods safely
using their credit cards.
 A database of merchandise with photo product descriptions and stock information. This
database will also contain all relevant merchant and customer information.
 A data security system that will ensure that all data that is transmitted between the
various system.
1.3 Methodology used
This project, Food Order, is developed using PHP and MYSQLi database on iterative
and incremental development models with the collaboration of the system’s user.

The following steps are used to design and development of this website

 Problem Statement
 Requirements

Page 6
 Specifications System
 Design Implementation
 Testing
 Maintenance and Reviews
1.4 About the company
Appworx is a joint venture of Sebiz and WeExcel. The company was formed with the
mission to bridge the gap between antiquated college syllabi and the demands of a fast
changing IT environment. To make the workforce industry-ready, Appworx initiated
programs like Skill India Mission, Skill Malls and Technology Excellence Centers and
TISS. Appworx came in to existence as a social entrepreneurial initiative in skill
training, working largely in the underdeveloped regions of the country. The company is
committed towards providing young people with high quality vocational education &
skill training with relevant & recognized certifications that result in meaningful
employment and successful careers in the organized sector. Appworx is a skills training
provider who works with the Indian government as an NSDC training partner and to
date has trained thousands of graduates in different vocational courses, thereby
providing gainful employment to many youngsters. Our tie-ups with prominent global
educational institutions help our students further their professional growth and explore
career prospects across geographic boundaries.
OUR VALUES
We at Appworx have been able to establish our credibility by providing highest level of
service ensuring strict quality compliance at every milestone and providing continuous
and timely support in implementation and integration of system processes at client sites
by capitalizing on the support of an efficient network of professional experts.
MANAGING DIRECTOR
Mr.Nitin Monga is a man of immense perseverance and acute vision. He has worked
with unwavering dedication towards making a difference in the lives of people by
transforming and simplifying current practices especially in the Education and Food
sector [govt].
In 2014, Nitin co-founded Appworx IT Solutions with a vision to contribute to the
Education Industry through the use of technology and to be a part of the Prime
Minister’s Skill India Mission. The organization has multiple training centers across the
country and works at the grass root level focusing on the youth among the lower
income group. Its mission is to train these young minds and enhance employability.

Goal:

Page 7
The goal of Appworx is to be responsive to its users and provide them with software
solution to assist them in being more efficient and productive in their work. The
company plans on continually improving software to help its clients take advantage
new technology.
The Company:
Founded in 2014, Appworx, headquarter in Panchkula, India. The activity is focused on
the following major activity axes:
 Software Development
 Networking consultancy
 Project Management
 Software Export
The Company is
 Producing, developing and internationally distributing high quality software products.
 Providing integrated solutions for data security and reliable services in files like
software distribution, consultancy and technical support.
 Providing solutions in banking, healthcare, insurance and publishing industry.
The People:
They are a team of young professionals, enthusiastic and talented people. Software
programmers, product managers or technical support people, the company is committed
to provide their clients with high quality products and flawless technical support. The
people working in sales, marketing and administration divisions are all client driven,
closely co-operating with the software developers, therefore making them as an
unbeatable team.
The Capabilities:
The reliability of the products, the flexible licensing program and the low prices show
their commitment towards their clients. Appworx software strategic partnership with
reputable companies all over the world has created a global network with excellent
results and outstanding performance in the distribution of software products.
1.5 Organization of Project Report

Organization of the project is divided into eight chapters


 Introduction
 Requirement Specifications
 System Design

 Implementation
 Testing

Page 8
 Deployment, Maintenance and Reviews

 Conclusion and Future Scope

 Bibliography

Chapter 2 Requirement Specification: This chapter covers all the requirement


specification like functional, non-functional, hardware and software specification of the
Food order website.

Chapter 3 System Design: Design is the first step into the development phase for
any engineered product or system. Design is a creative process. A good design is the
key to effective system. The term “design” is defined as “the process of applying
various techniques and principles for the purpose of defining a process or a system in
sufficient detail to permit its physical realization”. System design covers the input
design ,output design and database design of the Food order system.
Chapter 4 Implementation & TECHNOLOGY USED: 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. Implementation covers the code details of the Food Order System. And these
are overview of all technology which are used for develop a website.
Chapter 5 Testing: This chapter covers the type of testing performed during
development of this website, some of test cases.
Chapter 6 Deployment, Maintenance and Reviews : This chapter covers
deployment of the website, Maintenance and Reviews about the Food order System.
Chapter 7 Project screenshot & code: This chapter covers the Conclusion of
the project and future scope i.e. further improvements that can be done.
Chapter 8 Conclusion and Future Scope: This chapter covers the Conclusion
of the project and future scope i.e. further improvements that can be done.
Chapter 9 Bibliography: This chapter covers all the books , references from
where I took help during development of the project

Page 9
CHAPTER 2
Requirements Elicitation
2.1 Introduction
Elicitation method can help in producing a consistent and complete set of security
requirements. However, brainstorming and elicitation methods used for ordinary
functional (end-user) requirements usually are not oriented toward security
requirements and do not result in a consistent and complete set of security
requirements. The resulting system is likely to have fewer security exposures when
security requirements are elicited in a systematic way. Requirements elicitation is an
active research area, and we expect to see advances in this area in the future. We expect
that eventually there will be studies measuring which methods are most effective for
eliciting security requirements. At present, however, there is little if any data comparing
the effectiveness of different methods for eliciting security requirements.
The importance of elicitation cannot be overstated, for it is the linchpin to any
requirements project. As one scholarly article notes: “Mistakes made in elicitation have
been shown many times to be major causes of systems failure or abandonment and this
has a very large cost either in the complete loss or the expense of fixing mistakes.”
Adequate study and preparation for elicitation can go a long way to preventing these
types of errors. The purpose of requirements elicitation, therefore, is to thoroughly
identify the business needs, risks, and assumptions associated with any given project.
The first step in requirements elicitation is gleaning a comprehensive and accurate
understanding of the project’s business need. During the elicitation process, an
analyst’s strong understanding of the business need will help her guard against scope
creep and gold plating, as well as select the proper stakeholders and elicitation
techniques.
An analyst’s next step in eliciting requirements is ensuring that an adequate amount and
mix of stakeholders are secured for the project’s duration. For, as BABOK 2.0
(Business Analysis Body of Knowledge, the definitive guide to all things related to
business analysis) notes, a good analyst must “actively engage stakeholders in defining
requirements.” According to BABOK, a project’s stakeholders may include
customers/end users, suppliers, the project manager, quality analysis, regulators, project
sponsors, operational support, domain subject matter experts, and implementation
subject matter experts. An analyst must recruit the participation of appropriate
stakeholders based on the unique business needs of her project. After an analyst has
identified and recruited her stakeholders, and chosen the method(s) by which she will
Page 10
elicit requirements (outlined below), it is advisable for her to schedule the time for
conducting those methods with stakeholders as far in advance as possible to ensure
adequate participation on their parts.
2.2 Finding Functional Requirements
Requirements, which are related to functional aspect of application fall into this
category. They define functions and functionality within and from the application
system. Functional requirements specify which outputs should be produced from given
inputs. Then describe the relationship between the input and output of the system. For
each functional requirement, a detailed description of all the data inputs and their
source, the units of measure, and the range of valid inputs must be specified.
All the operations to be performed on the input data to obtain the output should be
specified. This includes specifying the validity checks on the input and output data. An
important part of the specification is the system behavior in abnormal situations, like
invalid inputs or error during computations. The functional requirement must clearly
state what the system should do if such situations occur. Specifically, it should specify
the behavior of the system for invalid inputs and invalid outputs. Furthermore, behavior
for situations where input is valid but the normal operations can’t be performed.


Each User will have its account registered Email Id and Password. Login page will

require both of these attributes to access their account.

A search engine on the website to allow customers to find specific types of

merchandise
 A secure online transaction system that will allow shoppers to purchase goods safely
using their credit cards.
2.3 Finding Non-Functional Requirements
Requirements, which are not related to functional aspect of application, fall into this
category. They are implicit or expected characteristics of web application, which users
make assumption of. Non-functional requirements include:
a. Performance Constraints:
It should use less memory and will be easily accessible by the user. Memory
management should be done wisely so that none of the memory part goes wasted. It
saves the time and space.
b. Hardware Limitations:
It should be designed in such a way that cheap hardware must be installed to access and
use it effectively. It should be platform independent. There should be no hardware

Page 11
limitations. It should be designed to work with the low specification hardware so that it
could easily work with the high specification hardware.
c. Maintainable:
Each of the modules should be designed in such a way that a new module can easily be
integrated with it.
d. Testable:
Is should be designed in such a way that each module should be tested easily one by
one and in integrated manners.
2.4 Hardware and Software Requirements

Software Requirements:

 Operating system :Windows.


 Front-End Technology :HTML,CSS,JAVASCRIPT(JSON,JQUERY).
 Back-End : PHP.
 Database :MYSQLi.
 Web Server :XAMPP.
 FRAMEWORK(CMS) :BOOTSTRAP,WORDPRESS.

Hardware Requirements:

 RAM : 2GB
 Processor : Dual core 3.0 GHz or higher
 Hard disk :250GB or higher
2.5 System Requirements Specification
A System Requirements Specification (SRS) (also known as a Software
Requirements Specification) is a document or set of documentation that describes the
features and behavior of a system or software application. It includes a variety of
elements (see below) that attempts to define the intended functionality required by the
customer to satisfy their different users. In addition to specifying how the system
should behave, the specification also defines at a high-level the main business processes
that will be supported, what simplifying assumptions have been made and what key
performance parameters will need to be met by system.
Main Elements
Depending on the methodology employed (agile vs. waterfall) the level of formality
and detail in the SRS will vary, but in general an SRS should include a description of
the functional requirements, system requirements, technical requirements, constraints,
assumptions and acceptance criteria. Each of these is described in more detail below:

Page 12
 Business Drivers - This section describes the reasons why the customer is looking
to build the system. The rationale for the new system is important as it will guide the
decisions made by the business analysts, system architects and developers. Another
compelling reason for documenting the business rationale behind the system is that the
customer may change personnel during the project. Documentation which clearly
identifies the business reasons for the system will help sustain support for a project if
the original sponsor moves on. The drivers may include both problems (reasons why
the current systems/processes are not sufficient) and opportunities (new business
models that the system will make available). Usually a combination of problems and
opportunities are needed to provide motivation for a new system.
 Business Model - This section describes the underlying business model of the
customer that the system will need to support. This includes such items as the
organizational context, current-state and future-state diagrams, business context, key
business functions and process flow diagrams. This section is usually created during the
functional analysis phase.
 Functional and System Requirements - This section usually consists of a

hierarchical organization of requirements, with the business/functional requirements at
the highest-level and the detailed system requirements listed as their child items.
Generally the requirements are written as statements such as "System needs the ability
to do x" with supporting detail and information included as necessary.
 Business and System Use Cases - This section usually consists of a UML use
case diagram that illustrates the main external entities that will be interacting with the
system together with the different use cases (objectives) that they will need to carry out.
For each use-case there will be formal definition of the steps that need to be carried out
to perform the business objective, together with any necessary pre-conditions and post-
conditions. The business use cases are usually derived from the functional requirements
and the system use cases are usually derived from the system requirements.
 Technical Requirements - This section is used to list any of the "non-functional"
requirements that essentially embody the technical environment that the product needs
to operate in, and include the technical constraints that it needs to operate under. These
technical requirements are critical in determining how the higher-level functional
requirements will get decomposed into the more specific system requirements.
 System Qualities - This section is used to describe the "non-functional"
requirements that define the "quality" of the system. These items are often known as
the "-ileitis" because most of them end in "ility". They included such items as:
reliability, availability,

Page 13
serviceability, security, scalability, maintainability. Unlike the functional requirements
(which are usually narrative in form), the system qualities usually consist of tables of
specific metrics that the system must meet to be accepted.
 Constraints and Assumptions - This section will outline any design constraints
that have been imposed on the design of the system by the customer, thereby removing
certain options from being considered by the developers. Also this section will contain
any assumptions that have been made by the requirements engineering team when
gathering and analyzing the requirements. If any of the assumptions are found to be
false, the system requirements specification would need to be re-evaluated to make sure
that the documented requirements are still valid.
 Acceptance Criteria - This section will describe the criteria by which the customer
will "sign-off" on the final system. Depending on the methodology, this may happen at
the end of the testing and quality assurance phase, or in an agile methodology, at the
end of each iteration. The criteria will usually refer to the need to complete all user
acceptance tests and the rectification of all defects/bugs that meet a pre-determined
priority or severity threshold.
Alternatives
In agile methodologies such as extreme programming or scrum formal, static
documentation such as a software requirements specification (SRS) are usually
eschewed in favor of a more lightweight documentation of the requirements, namely by
means of user stories and acceptance tests. This approach requires that the customer is
easily accessible to provide clarification on the requirements during development and
also assumes that the team members responsible for writing the user stories with the
customer will be the developers building the system. A more formal approach may be
needed if the customer is inaccessible and/or a separate team of business analysts will
be developing the requirements. In Rapid Application Development (RAD)
methodologies such as DSDM or Unified Process (RUP, AUP) the requirements
specification is often kept at a higher-level with much of the detailed requirements
embodied in prototypes and mock-ups of the planned system.

Page 14
Chapter 3
System Design
3.1 Introduction
System design provides the understandings and procedural details necessary for
implementing the system recommended in the system study. Emphasis is on the
translating the performance requirements into design specifications. The design phase is
a transition from a user-oriented document (System proposal) to a document oriented to
the programmers or database personnel.

System design goes through two phases of development:


1.) Logical Design
The logical design of an information system is analogous to an engineering blue print
of an automobile. It shows the major features and how they are related to one another.
The detailed specification for the new system was drawn on the bases of user’s
requirement data. The outputs inputs and databases are designed in this phase. E-R
diagrams graphically representation of the relationship between the various entities.
That is it used to represent the relationship between two or more entity. A data flow
diagram shows the logical flow of the system. For a system it describes the input
(source), output (destination), database (data stores) and procedures (data flows) all in a
format that meets the user’s requirement. The logical design also specifies input forms
and screen layouts.
 DFD
 E-R
 DATABASE
A flow chart is defined as a pictorial representation describing a process being studied
or even used to plan stages of a project. Flow charts tend to provide people with a
common language or reference point when dealing with a project or process.
Flow charts provide an excellent form of documentation for a process, and quite often
are useful when examining how various steps in a process work together.
In this flow chart after start the system a splash screen shown, after loading all the data
of the website home page is shown. There is 3 options for the user, first to register in to
Food Order online account, second is if you are already registered then login to Food
Order online
If you select the list of products then for order you should login to Food Order online If
you have no account on Food Order online then register with Food Order online. If you
have an account on Food Order online then direct enter your email or password and
login to Food Order online.

Page 15
After login, dashboard screen is shown where user can see a list of products. After
search the expert user can request to the user for conversation. For create a call request
you have sufficient balance in your account, if you haven’t sufficient balance then user
can’t request for a call. When user request for a call then amount is deducted from the
user’s account. If expert deny to accept the call request then money is refunded to the
user.
When user is registered some chat credits are added to user account. If user want to chat
with someone, then user can request for chat. For this you should have chat credits. If
you have chat credits then your message send to the expert.
In forum part you can post your own forum. Or you can comment on the other’s forum.
It is a public wall. You can’t use offensive words there. Every word you typed checked
at backend with the blacklist table.
Low Level DFD:

Client

Login
into
account
Maintain whole
website
Admin
NutriCure

User can visit on website and buy


the product.

Enduser

2.) Physical Design


The activities following logical design are the procedures followed in the physical
design e.g., producing programs, software, file and a working system. Design
specifications instruct the user about what the system should do. Two Point Cover in
Physical Design:
1.) Input Design
2.) Output Design

3.2 Input Design:


Page 16
The input design is the link that ties the information system into the user‟s world. Input
specifications describe the manner in which data enters the system for processing. Input
design features can ensure the reliability of the system and produce results from
accurate data, or they can result in the production of erroneous information.
Input Design consists of:
 Developing specifications and procedures for data preparation
 Steps necessary to put data into a usable form for processing
 Data entry, the activity of putting data into the computer processing.
Objectives of Input design:
 Controlling the amount of input required
 Avoid delay
 Avoiding errors in data
 Avoiding extra steps
 Keeping the process simple
Input stages several activities have to be carried out as part of the overall input process.
They include some or all of the following

 Data recording (i.e., collection of data)

 Data encapsulation (i.e., transfer of data)

 Data conversion (i.e., controlling the flow of data)

 Data transmission (i.e., transporting the data)

 Data validation (i.e., checking the input data)


 Data correction (i.e., correcting the errors)

Input Performa was designed, after a careful discussion with users. It was attempted to
cover all user requirements. Designed Performa were given to user for any suggestion
and final approval. Various data items were identified and wherever necessary were
recorded.
Input designs are aimed at reducing the chances of mistakes of errors. As the human
beings are prone to errors there is always a possibility of occurrence of chance of
errors. Adequate validation checks are incorporated to ensure error free data storage.
Some of the data validation checks applied is as following:
 Redundancy of data is checked. It means the records of primary key do not occur twice
 Primary key field of any table must not be left blank.
 Wherever items are coded, input code is checked for it‟s validly with respect to several
checks

Page 17
 Utmost care has been taken to incorporate the validation at each stage of the system.
E.g. when entering records into employee information table for employee, it is checked
that whether the corresponding employee exists in the employee information table etc.,
Enough messages and dialogue boxes are provided while design screen, which does
guide user at the time of any errors, or at time of entry. This feature provides a user-
friendly interface to native users.
3.3 Output Design:
Output design is one of the most important features of the information system. When
the outputs are not of good quality the users will be averse to use the newly designed
system and may not use the system. There are many types of output, all of which can be
either highly useful or can be critical to the users, depending on the manner and degree
to which they are used.
Outputs from computer system are required primarily to communicate the results of
processing to users; they are also used to provide a permanent hard copy of these results
for later consultation. Various types of outputs required can be listed as below:
 External Outputs, whose destination is outside the organization.
 Internal outputs, whose destination is with the organization
 Operational outputs, whose use is purely with in the computer department e.g.,
program-listing etc.
 Interactive outputs, which involve the user is communicating directly with the computer, it
is particularly important to consider human factor when designing computer outputs. End
user must find outputs easy to use and useful to their jobs, without quality output, user may
find the entire system unnecessary and avoid using it.
The term “Output” in any information system may apply to either printer or displayed
information. During the designing the output for this system, it was taken into
consideration, whether the information to be presented in the form of query of report or
to create documents etc.
Other important factors that were taken into consideration are:
The End user, who will use the output.
 The actual usage of the planned information
 The information that is necessary for presentation
 When and how often output and their format is needed. While designing output for
project based Attendance Compilation System, the following aspects of outputs
designing were taken into consideration.
 The outputs (i.e., well formatted table outputs in the screen itself) designed are simple
to read and interpret

Page 18
 Format of each output was another important point taken into consideration. Output
media, for each output appropriate media is decided whether it will be displayed on
screen or will be taken to printer or both.
 Other output design related specifications, i.e., how frequently the outputs will be
generated, how many pages or sheets approximately it will keep up, what is its planned
use and output distribution to users are also taken into account.
These were a few major designing issues, which were taken into consideration, while
deciding the output specifications for the system. As direct beneficiary of reports is the
user community, they were consulted constantly at every level. Formats and screen
design for various reports were identified, taking into account the user requirements.
Before finalizing these were given to users for any improvement and suggestions. End
users issues taken into consideration were Readability, Relevance and Acceptability.
Once all the output reports to be generated by ACS system were identified, they were
given to users for their acceptance. For prototyping various outputs, final outputs
models were created with dummy data, before they were finalized
3.4 Database Design
Database Design is an integrated approach as to how the data should be organized user
requirements. Regardless of the type of data structure used, the objectives of database
are accuracy, integrity, security of the data and good overall performance.
In Today's world Database is recognized as the standard of management systems.
DBMS is used for data sharing. Instead of each program managing its own data, the
data across applications are shared by authorized users with the database software
managing the data as an entity.
Objectives of Database: The general theme behind a database is to handle information
as an integrated whole. There is none of artificiality that is normally embedded in
separate files or applications. A database is a collection of interrelated data stored with
minimum redundancy to serve many users quickly and efficiently. A database should
act as a kind of medium to collect and store the incoming data in an organized way. For
example, in case of a relational database such as Oracle, the main purpose of this
database is to store the input data and organize them in terms of attributes (columns)
and tuples (rows) grouped into relations (tables).
The general objective is to make information access easy, quick, and inexpensive and
flexibility for the user. Data integrity means the reliability and accuracy of data.
Integrity rules are designed to keep the data consistent and correct. These rules act like
a check on the incoming data. It is very important that a data base maintains the quality

Page 19
of the data stored in it. DBMS provides several methods to enforce integrity of the data
in a database. In data base design, several specific objectives are considered:
 Controlled redundancy

 Accuracy and Integrity

 Data Integrity

 Data Independence
Two administration used in project that one used for authentication and for
autherization other is main administration used in model.
Result :-
A crucial phase in the systems life cycle is the successful implementation of the new
system design. Implementation simply means converting a new system design into
operation.
In system implementation, user training is crucial for minimizing resistance to change
and giving the new system a chance to prove its worth. Training aids, such as user-
friendly manuals, a data dictionary, job performance aids that communicate information
about the new system, and “help” screens, provide the user with a good start on the new
system.
3.5 Entity Relationship Diagram
Entity-Relationship (ER) diagram, a graphical representation of entities and their
relationships to each other, typically used in computing in regard to the organization of
data within databases or information systems. An entity is a piece of data-an object or
concept about which data is stored.
Three type are:-
1. Entity
2. Attributes
3. Relationship
Explain one by one below:_
1. Entity
Entities are represented by means of rectangles. Rectangles are named with the entity
set they represent.
2. Attributes
Attributes are properties of entities. Attributes are represented by means of eclipses.
Every eclipse represents one attribute and is directly connected to its entity (rectangle).
If the attributes are composite, they are further divided in a tree like structure. Every
node is then connected to its attribute.
3. Relationship

Page 20
Relationships are represented by diamond shaped box. Name of the relationship is
written in the diamond-box. All entities (rectangles), participating in relationship, are
connected to it by a line.
With respect to my project there are various types of entities which are related to
other entity, also they have various types of relations. As in figure 4.6 ER diagram
Registration entity having various types of attributes which are related to Login entity
in which user have to enter correct username and corresponding password to have
successful login

Page 21
Page 22
Chapter 4
TOOLS AND TECHNOLOGY USED

Front End
1. SUBLIME TEXT 3: It is used for coding.
2. HTML5: Hyper Text Markup Language is very effective language to develop the site.
Our project is prepared in HTML. It also includes the important codes that are used
while we coding a site. It supports the d-html and script languages like VB-Script and
Java Script; here in this project we have used the later one.HTML is a very simple
language, easy to learn and user friendly. It is as popular as it can use any text editor for
coding purposes, and developing web pages is an easy task here. HTML is the language
interpreted by browsers. Web pages are also called HTML documents. HTML is a set
of special Codes that can be emended in text to add formatting and linking Information.
HTML is specified as tags in an HTML documents i.e the Web page.
3. CSS3: CSS stands for Cascading Style Sheet. It is used to give designer look to HTML
using the external file. Cascading Style Sheets (CSS) is a style sheet language used for
describing the presentation semantics (the look and formatting) of a document written
in a markup language. It’s most common application is to style web pages written in
HTML and XHTML, but the language can also be applied to any kind of XML
document, including plain XML.
4. PHP: PHP is an acronym for “Hypertext Preprocessor”. It is widely used open source
scripting language. PHP is a server scripting language, and a powerful tool for making
dynamic and interactive Web pages.PHP is a widely-used, free, and efficient alternative
to competitors such as Microsoft's ASP.
5. JQUERY: JQuery is a fast, small, and feature-rich JavaScript library. It makes things
like HTML document traversal and manipulation, event handling, animation, and Ajax
much simpler with an easy-to-use API that works across a multitude of browsers. With
a combination of versatility and extensibility, jQuery has changed the way that millions
of people write
6. JavaScript:- It is powerful client side scripting language which is mainly used for
Validations. It is a Dynamic programming language. It is most commonly used as part
of web browsers, whose implementations allow client-side to interact with the user,
control the browser, communicate asynchronously, and alter the document content that
is displayed. Today’s world need much more than simple HTML.

Page 23
7. AJAX:- AJAX is a technique for creating fast and dynamic web pages. AJAX allows
web pages to be updated asynchronously by exchanging small amounts of data with the
server behind the scenes. This means that it is possible to update parts of a web page,
without reloading the whole page.
WHAT IS PHP?
PHP is an intuitive server side scripting language. Like any other scripting language it
allows developers to build logic into the creation of web page content and handle data
returned from a web browser. PHP also contains a number of extensions that make it
easy to interact with databases, extracting data to be displayed on a web page and
storing information entered by a web site visitor back into the database. web forms and
create content.
HOW DOES PHP WORK?
To develop an understanding of how PHP works it is helpful to first explore what
happens when a web page is served to a user's browser. When a user visits a web site or
clicks on a link on a page the browser sends a request to the web server hosting the site
asking for a copy of the web page. The web server receives the request, finds the
corresponding web page file on the file system and sends it back over the internet to the
user's browser.
CHARACTERISTICS OF PHP
PHP is about providing the programmer with the necessary tools to get the job done in
a quick and efficient fashion. Five important characteristics make PHP’s practical
nature possible:
 Familiarity
 Simplicity
 Efficiency
 Security
 Flexibility
 One final characteristic makes PHP particularly interesting: it’s free!
1. FAMILIARITY: Programmers from many backgrounds will find themselves already
accustomed to the PHP language. Many of the language’s constructs are borrowed from
C and Perl, and in many cases PHP code is almost indistinguishable from that found in
the typical C or Pascal program. This minimizes the learning curve considerably.
2. SIMPLICITY: A PHP script can consist of 10,000 lines or one line: whatever you
need to get the job done. There is no need to include libraries, special compilation
directives, or anything of the sort. The PHP engine simply begins executing the code
after the first escape sequence (<?) and continues until it passes the closing escape
Page 24
sequence (?>). If the code is syntactically correct, it will be executed exactly.

3. EFFICIENCY: Efficiency is an extremely important consideration for working in a


multi-user environment such as the WWW. PHP 4.0 introduced resource allocation
mechanisms and more pronounced support for object-oriented programming, in
addition to session management features. Reference counting has also been introduced
in the latest version, eliminating unnecessary memory allocation

4. SECURITY: PHP provides developers and administrators with a flexible and efficient
set of security safeguards. These safeguards can be divided into two frames of
reference: system level and application level.
FLEXIBILITY: PHP can be run on many platforms, including Windows, Linux and
Mac, it’s easy for users to find hosting service provides. It is developed and maintained
by a large group of PHP developers, this will helps in creating a support community,
abundant extension libraryBack End

MYSQL: MySQL is a relational database. MySQL is a powerful database. It's very


good and free of charge. Many developers in the world selected Mysql and php for
developing their website.
What is a Database?
A database is a structure that comes in two flavors: a flat database and a relational
database. A relational database is much more oriented to the human mind and is often
preferred over the gabble-de-gook flat databases that are just stored on hard drives like
a text file. MySQL is a relational database. .
 MySQL is developed, marketed, and supported by MySQL AB, which is a Swedish
company.
 MySQL is released under an open-source license. So you have nothing to pay to use it.
 MySQL is a very powerful program in its own right. It handles a large subset of the
functionality of the most expensive and powerful database packages.
 MySQL uses a standard form of the well-known SQL data language.
 MySQL works on many operating systems and with many languages including PHP,
PERL, C, C++, JAVA etc.
 MySQL works very quickly and works well even with large data sets.
 MySQL supports large databases, up to 50 million rows or more in a table. The default
file size limit for a table is 4GB, but you can increase this (if your operating system can
handle it) to a theoretical limit of 8 million terabytes (TB).

Page 25
Chapter 5
Testing
5.1 Introduction

Software Testing is the process of executing software in a controlled manner, in order


to answer the question - Does the software behave as specified? Software testing is
often used in association with the terms verification and validation. Validation is the
checking or testing of items, includes software, for conformance and consistency with
an associated specification. Software testing is just one kind of verification, which also
uses techniques such as reviews, analysis, inspections, and walkthroughs. Validation is
the process of checking that what has been specified is what the user actually wanted.
Software testing should not be confused with debugging. Debugging is the process of
analyzing and localizing bugs when software does not behave as expected. Although
the identification of some bugs will be obvious from playing with the software, a
methodical approach to software testing is a much more thorough means for identifying
bugs. Debugging is therefore an activity which supports testing, but cannot replace
testing.
Testing is a set of activity that can be planned in advanced and conducted
systematically. Testing begins at the module level and work towards the integration of
entire computers based system. Nothing is complete without testing, as it vital success
of the system testing objectives, there are several rules that can serve as testing
objectives.

They are
 Testing is a process of executing a program with the intend of finding an error.
 A good test case is one that has high possibility of finding an undiscovered error.
 A successful test is one that uncovers an undiscovered error.

If a testing is conducted successfully according to the objectives as stated above, it


would uncovered errors in the software also testing demonstrate that the software
function appear to be working according to the specification, that performance
requirement appear to have been met.
There are three ways to test program.
 For correctness
 For implementation efficiency
 For computational complexity.

Page 26
Test for correctness are supposed to verify that a program does exactly what it was
designed to do. This is much more difficult than it may at first appear, especially for
large programs.
5.2 Testing Strategy:
To uncover the errors of the modules of my project I used the testing strategies such as
Unit Testing, Integration Testing, Validation Testing, System Testing, Alpha Testing
and Beta Testing. A strategy for software testing is Verification and Validation (V&V)
Model.
5.2.1 Unit Testing:
Unit testing focuses verification efforts on the smallest unit of software design- the
software component or module. Using the component-level design description as a
guide, important control paths are tested to uncover errors within the boundary of the
module. The unit testing is White Box oriented and the step can be conducted in
parallel for multiple components.
With respect to our project we have performed unit testing to our each and every
module and we test every unit is giving required results. On our level each module is
being is tested by persons providing the same required positive results.
5.2.2 Integration Testing:
After unit testing, integration testing was performed. The goal here is to see if modules
can be integrated properly, the emphasis being on testing interfaces between modules.
This testing activity can be considered as testing the design and hence the emphasis on
testing module interactions.
In this project the main system is formed by integrating all the modules. When
integrating all the modules. I have checked whether the integration effects working of
any of the services by giving different combinations of inputs with which the two
services run perfectly before Integration.
I have checked whether the integration effects working of any of the services by giving
different combinations of inputs with which the two services run perfectly before
Integration.
With respect to our project, this phase is being performed after unit testing. Here every
module is being integrated and tested by us in order to testing for the required results.
5.2.3 System Testing:
Here the entire software system is tested. The reference document for this process is the
requirements document, and the goal was to see if software meets its requirements.

Page 27
Here entire „Food Order Online‟ has been tested against requirements of project and it
is checked whether all requirements of project have been satisfied or not.
The lessons learnt after developing this project are as follows:
1. Before developing any project the requirement should be made well clear so that after
developing it the programmer does not have to change it.
2. Software & hardware constraints should he kept in mind.
3. Project should be error free and made in such a way so that modification can be done in
future.
4. User should be given a proper training about how to use project.

Alpha Testing:
The alpha test is conducted at the developer site (i.e. me) in the presence of the
customer. The software is used in a natural setting by all errors and me and usage
problems are recorded for maintenance. This test is conducted in a controlled
environment to uncover errors.
With respect to our project, after completion of project when our client tested the
website keeping each and every requirement in consideration our 80% project is
fulfilling his requirements. All the addons required by the client during the developing
period of our project is also being completed with in required time period
5.3 Testing Techniques Used
Software testing methods are traditionally divided into white-box and black-box testing.
These two approaches are used to describe the point of view that a test engineer takes
when designing test cases.
5.3.1 White Box Testing:
White box testing is when the tester has access to the internal data structures and
algorithms including the code that implement these. Types of white box testing:
API testing (application programming interface) - testing of the application using
public and private APIs.
Code coverage - creating tests to satisfy some criteria of code coverage (e.g., the test
designer can create tests to cause all statements in the program to be executed at least
once).
Fault injection methods - improving the coverage of a test by introducing faults to test
code paths.

 Static testing - White box testing includes all static testing.


5.3.2 Black Box Testing:

Page 28
This testing focuses on the functional requirements of the software. Black-Box testing
enables me to drive sets of input conditions that will fully exercise all functional
requirements for software. The reasons that force me to
Do this test are given bellow:
In this software there are lots of functions. I had checked incorrect or missing
functions.
 The software contains four modules and each interface with each other. The main
thinng to test the time of call requests.Time zone of the user may be not same.SO check
the time according to the timezone of the user.
 The software is depend on the rating system or payment. When call is not completed
then an autogenerated query is run to refund the balance of the user
 The software totally based on the payment gateway, so check the payment is successful
or not, different routes are created.

Page 29
Chapter 6
Deployment and Maintenance
Implementation phase of the software development is concerned with translating the
design specifications into the source code. After the system has been designed, arrives
the stage of putting it into actual usage known as the implementation of the system.
This involves putting up of actual practical usage of the theoretically designed system.
The primary goal of implementation is to write the source code and the internal
documentation so that conformance of the code to its specifications can easily be
verified and so the debugging, modifications and testing are eased. This goal can be
achieved by making the source code as clear and as straightforward as possible.
Simplicity, Elegance and Clarity are the hallmarks of good programs whereas
complexity are indications of inadequate design and misdirected thinking. The system
implementation is a fairly complex and expensive task requiring numerous inter-
dependent activities. It involves the effort of a number of groups of people: user and the
programmers and the computer operating staff etc. This needs a proper planning to
carry out the task successfully. Thus it involves the following activities:

1. Writing and testing of programs individually

2. Testing the system as a whole using the live data

3. Training and Education of the users and supervisory staff

Source code clarity is enhance buy using structured coding techniques, by efficient
coding style, by appropriate supporting documents, by efficient internal comments and
by features provided in the modern programming language.
The following are the structured coding techniques:

1) Single Entry, Single Exit

2) Data Encapsulation

3) Using recursion for appropriate problems

6.1 Maintenance
Maintenance is the last part of the System Development Life Cycle that is actually the
implementation of the post-implementation review plan.
When this system is installed it is used for long period. The average life of a system is 4
to 6 years and maximum used for 10 years. However, this period of use brings with it

Page 30
the need to continually maintain the system, but this system can be modified and new
technologies can be used which are prevalent in market at that period of time.
6.2 Security
Software security has become increasingly important in the age of hackers and viruses.
This attribute measures a system‟s ability to withstand attack on its security. Attacks
can be made on all three components of the software: programs, data and documents.
Creating of User Profiles and Access Rights:
This system administrator can create and delete the user. The admin can change the
setting the user based the requirement of the system. An unauthorized user cannot log
in on to the system. This checked during login of every user.

Page 31
Chapter 7
Project Screenshot

Register page for User

Login for user

Homepage
Page 32
Menu category Page

Menu with item

Page 33
Add to cart
Page 34
Add to cart code
<?php
global $post;
use mp_restaurant_menu\classes\models\Cart as Cart;
$table_column_class = apply_filters('mprm_table_column_class', Cart::get_instance()-
>item_quantities_enabled() ? 'mprm-table-column-4' : 'mprm-table-column-3');
?>
<table id="mprm_checkout_cart" <?php echo !$is_ajax_disabled ? 'class="ajaxed ' .
$table_column_class . '"' : '' ?>>
<thead>
<tr class="mprm_cart_header_row">
<?php do_action('mprm_checkout_table_header_first'); ?>
<th class="mprm_cart_item_name"><?php _e('Product', 'mp-restaurant-
menu'); ?></th>
<th class="mprm_cart_item_price"><?php _e('Price', 'mp-restaurant-menu');
?></th>
<?php if (Cart::get_instance()->item_quantities_enabled()) : ?>
<th class="mprm_cart_quantities"><?php _e('Quantity', 'mp-
restaurant-menu'); ?></th>
<?php endif; ?>
<th class="mprm_cart_actions"><?php _e('Actions', 'mp-restaurant-menu');
?></th>
<?php do_action('mprm_checkout_table_header_last'); ?>
</tr>
</thead>
<tbody>
<?php do_action('mprm_cart_items_before'); ?>
<?php if ($cart_items && !empty($cart_items)) : ?>
<?php foreach ($cart_items as $index => $item) : ?>

<?php do_action('mprm_cart_item_before', $item, $index); ?>

Page 35
<tr class="mprm_cart_item" id="mprm_cart_item_<?php echo
esc_attr($index) . '_' . esc_attr($item['id']); ?>" data-cart-key="<?php echo esc_attr($index)
?>" data-menu-item-id="<?php echo esc_attr($item['id']); ?>">
<?php do_action('mprm_checkout_table_body_first', $item);
?>
<td class="mprm_cart_item_name">
<div class="mprm_cart_item_name_wrapper">
<?php if (current_theme_supports('post-
thumbnails') && has_post_thumbnail($item['id'])) { ?>
<div class="mprm_cart_item_image">
<?php echo
get_the_post_thumbnail($item['id'], apply_filters('mprm_checkout_image_size',
'thumbnail')); ?>
</div>
<?php }
$item_title = Cart::get_instance()-
>get_cart_item_name($item); ?>

<a class="mprm-link" href="<?php echo


get_permalink($item['id']) ?>">
<span
class="mprm_checkout_cart_item_title"><?php echo esc_html($item_title) ?></span>
</a>
<?php
do_action('mprm_checkout_cart_item_title_after', $item); ?>
</div>
</td>
<td class="mprm_cart_item_price">
<?php
echo Cart::get_instance()-
>cart_item_price($item['id'], $item['options']);
do_action('mprm_checkout_cart_item_price_after',
$item);
?>
</td>
<?php if (Cart::get_instance()->item_quantities_enabled()) :
?>
<td class="mprm_cart_quantities">
<input type="number" min="1" step="1"
name="mprm-cart-menu_item-<?php echo $index; ?>-quantity" data-key="<?php echo
$index; ?>" class="mprm-input mprm-item-quantity" value="<?php echo
Cart::get_instance()->get_cart_item_quantity($item['id'], $item['options'], $index); ?>"/>
<input type="hidden" name="mprm-cart-
menu-item[]" value="<?php echo $item['id']; ?>"/>
<input type="hidden" name="mprm-cart-
menu-item-<?php echo $index; ?>-options" value="<?php echo
esc_attr(json_encode($item['options'])); ?>"/>
</td>
<?php endif; ?>

<td class="mprm_cart_actions">
<?php do_action('mprm_cart_actions', $item, $index);
?>

Page 36
<a class="mprm_cart_remove_item_btn"
href="<?php echo esc_url(Cart::get_instance()->remove_item_url($index)); ?>"><?php
_e('Remove', 'mp-restaurant-menu'); ?></a>
</td>

<?php do_action('mprm_checkout_table_body_last', $item);


?>
</tr>

<?php do_action('mprm_cart_item_after', $item, $index); ?>

<?php endforeach; ?>


<?php endif; ?>

<?php do_action('mprm_cart_items_middle'); ?>

<?php if (Cart::get_instance()->cart_has_fees()) : ?>


<?php foreach (Cart::get_instance()->get_cart_fees() as $fee_id => $fee) :
?>
<tr class="mprm_cart_fee" id="mprm_cart_fee_<?php echo $fee_id;
?>">
<?php do_action('mprm_cart_fee_rows_before', $fee_id,
$fee); ?>
<td class="mprm_cart_fee_label"><?php echo
esc_html($fee['label']); ?></td>
<td class="mprm_cart_fee_amount"><?php echo
esc_html(mprm_currency_filter(mprm_format_amount($fee['amount']))); ?></td>
<td>
<?php if (!empty($fee['type']) && 'item' ==
$fee['type']) : ?>
<a href="<?php echo
esc_url(Cart::get_instance()->remove_cart_fee_url($fee_id)); ?>"><?php _e('Remove',
'mp-restaurant-menu'); ?></a>
<?php endif; ?>
</td>
<?php do_action('mprm_cart_fee_rows_after', $fee_id, $fee);
?>
</tr>
<?php endforeach; ?>
<?php endif; ?>

<?php do_action('mprm_cart_items_after'); ?>


</tbody>
</table>

/*purchase cart code */


<?php
use mp_restaurant_menu\classes\models;

$payment_mode = models\Gateways::get_instance()->get_chosen_gateway();

/**
* Hooks in at the top of the purchase form

Page 37
*
* @since 1.4
*/
do_action('mprm_purchase_form_top');

if (models\Checkout::get_instance()->can_checkout()) {
do_action('mprm_purchase_form_before_register_login');
$show_register_form = mprm_get_option('show_register_form', 'none');
if (($show_register_form === 'registration' || ($show_register_form === 'both' &&
!isset($_GET['login']))) && !is_user_logged_in()) : ?>
<div id="mprm_checkout_login_register">
<?php do_action('mprm_purchase_form_register_fields'); ?>
</div>
<?php elseif (($show_register_form === 'login' || ($show_register_form === 'both'
&& isset($_GET['login']))) && !is_user_logged_in()) : ?>
<div id="mprm_checkout_login_register">
<?php do_action('mprm_purchase_form_login_fields'); ?>
</div>
<?php endif; ?>
<?php if ((!isset($_GET['login']) && is_user_logged_in()) ||
!isset($show_register_form) || 'none' === $show_register_form || 'login' ===
$show_register_form) {
do_action('mprm_purchase_form_after_user_info');
}
/**
* Hooks in before Credit Card Form
*
* @since 1.4
*/
do_action('mprm_purchase_form_before_cc_form');
if (mprm_get_cart_total() > 0) {
if (has_action('mprm_' . $payment_mode . '_cc_form')) {
do_action('mprm_' . $payment_mode . '_cc_form');
} else {
do_action('mprm_cc_form');
}
}
/**
* Hooks in after Credit Card Form
*
* @since 1.4
*/
do_action('mprm_purchase_form_after_cc_form');
} else {
do_action('mprm_purchase_form_no_access');
}

do_action('mprm_purchase_form_bottom');

Page 38
Purchase and address of user

Blog Page

Page 39
Admin view screenshots

Add item dashboard

Create category of menu dashboard

Page 40
Page 41
Chapter 8
Conclusion and Future Scope
7.1 Conclusion

FoodOrder online is a platform which lists all users within some category i.e. works on
the basicconcept of sharing the knowledge. It is the easiest, cheapest and effective
platform to shareyour business, educational problems and find the solution of that
problem.
FoodOrder online is a service that allows you to directly contact with the expert who is
the best in their field. FoodOrder online allows its users to search the products and
Order them. User can select the products from list shown on Dashboard. On the other
hand Provider can earn money by selling their product online. The charges for the
products depends on the MRP of such item.
This platform gives an opportunity to add your skills and knowledge and solve your
difficulties. On the other hand if you have a bundle of knowledge in a particular field
then you can earn from this platform. If you are a seller in your field then according to
your products you earn money after selling their products.
For payment to the seller in this system we integrate a payment gateway. With the help
of payment gateway user can recharge their wallet from net banking or from
debit/credit card. When recharge is successful then that money add to the FoodOrder
online account and the same value coupon send to the user account.
When user request for product from Dashboard, the amount of the product deducted
from users account. After the Buying that money send to the seller account. If seller
want to transfer that money from FoodOrder online account to bank account, send
withdraw request to FoodOrder online admin. Admin respond to that request and
transfer money to seller bank account.
7.2 Future Scope
The main motive to develop this project is to help the people to find their needed item
online without going outside from their home. I think us successful to achieve our
motive.
Another motive is to provide earning resources to the seller of any products. For
transferring money we have used pay money payment gateway, which fulfill the
security issues of secure payment. Like when user recharge their wallet with FoodOrder
online then don‟t share their credit/debit card details with other resources.
Some points are there on which work on future. These tasks not completed due to the
shortage of time.
Page 42
In future we can add the functionality of FoodOrder online Discount Coupons to the
buyer and Shipping record.

Page 43
Chapter 9
Bibliography

I have working on this project under the guidance of professionals of Piford


Technologies.
Books

 Robin Nixon(2012) MySQL, JavaScript and CSS,( 2ND Edition )


 Ivan Bayross(2009), SQL,PL/SQL: The Progrmming Languageof Oracle(4 th Edition)
 PankajJalote(2005), An Integrated Approach to Software Engineering(3 rd Edition)
 Elmarsi&Navathe (2008),Fundamentals of Database Management System,(5th Edition)

References
https://www.tutorialspoint.com/
https://www.w3schools.com/
https://stackoverflow.com/
https://www.zomato.com/ncr/order-food-online

Page 44

You might also like