Final Project Report A Web Based Food Se
Final Project Report A Web Based Food Se
Final Project Report A Web Based Food Se
PID-BSIT-F1459
Project Supervisor
Ghulam Irtaza
Submitted By
NAME
This is to certify that Name have worked on and completed their Software
Project at Department of Information Technology, University of Education,
Lahore in partial fulfillment of the requirement for the degree of BS IT under
my guidance and supervision.
In our opinion, it is satisfactory and up to the mark and therefore fulfills the
requirements of BS in Information Technology.
Ghulam Irtaza
(Multan Campus)
___________________
(Signature)
ACKNOWLEDGEMENT
I’m grateful to my loving parents for their encouragement and all sort of moral,
social, and financial support not only in my academic career but also in all other aspects
of life. Their prayers were incessant and enabled me to reach this stage. I’m also
thankful to my all family for their kindness, love and ever supporting prayers. I heartily
express my love to my sisters and brothers for their love and care.
I can’t forget to express special thanks to all my friends who were always ready
to back up me when I really felt myself in problem, they guided me to the best of their
knowledge sacrificing their precious time.
TABLE OF CONTENTS
1.1 INTRODUCTION 2
1.2 PURPOSE 2
1.3 SCOPE 3
CHAPTER NO. 2
2.2.1 Reliability 7
2.2.2 Supportability 7
2.2.4 Usability 7
2.2.5 Efficiency 7
2.2.6 Portability 8
CHAPTER NO. 3
18
3.1 INTRODUCTION 19
3.2 METHODOLOGY
19
CHAPTER NO. 4
30
4.1 INTRODUCTION 31
4.2 PURPOSE 31
4.3 SCOPE 31
4.4 DEFINITIONS, ACRONYMS AND ABBREVIATIONS
32
CHAPTER NO.5
CHAPTER NO.6
TESTING
51
6.1 INTRODUCTION 52
6.4 RESULTS
57
CHAPTER NO.7
7.1 CONCLUSION
59
7.2 FUTURE WORK
59
CHAPTER NO.8
DEPLOYMENT
60
REFERENCES 62
LIST OF FIGURES
4.5.2: DFD 35
“E-MENU” is a web based online project. The main aim of the project is to
provide a centralized point from where every person in the Multan Region can view
and get order of their Deals. It is an online web-based online food ordering project that
serves the functionality of E-Menu. The system allows only registered customers to
login and new customers are allowed to register on the application. This is proposed to
be a web application. This project gives customers the opportunity to order the deals
and Food Stuff provided by all the restaurants and enables them to get their food stuff
at home. This project allows restaurants to direct communicate with customers.
CHAPTER 1
Gathering and Analyzing Information
A Web Based Food Selection Assistant App for the Restaurant of Multan City
1.1 INTRODUCTION
Here, a web based interaction system of e-menu is developed. This site manages all the
Restaurants related information, this system also maintain records of all Restaurants of
Multan who register on the website. In this system administrator and Restaurants can
view their deals and details related to their Restaurants. Customers can also chat with
the administrator of Restaurants for any query about their menu content. Administrator
can add, edit, view, update, and delete any information on the website. Customers can
view the information authorized by the administrator.
This is a web application allows you to access the whole information about all
Restaurants of Multan. The collection of the resources and information at one place in
an organized way is made accessible to all the registered Customers and Restaurants of
Multan.
1.2 PURPOSE
This project aims at creating an E-menu for online food ordering from all over the
Multan. This allows registered users of the system to easily log in and can easily visit
all restaurant’s menu online that are available on the site and choose the menu available
for the order. Saving time, money & easily order by sitting at home are major goals of
this project. Customers can register themselves and view all the allowed details of the
Restaurants of all Multan. The Main objective of E-menu is to gather all the
Restaurants details to one same place and suggest. In this way, every customer will be
able to order any kind of food from any Restaurant from this App/Website. Below are
the some objectives we will cover in this project.
Ordering System for any person, any place and from any Restaurant.
1.3 SCOPE
The E-Menu Cell that is to be developed provide the restaurants as well customers of
University of Education deals and Food Stuff and notes information and also their next
and previous order details. We will firstly cover all restaurants of Multan and after
further implementation and improvements, it will be expand to Punjab region. The E-
Menu is supposed to have the following features:
The project provides the customers and restaurants with online deals and Food
Stuff viewing and downloading.
The system provides the customers suggestions about restaurants and food items
according to their budget.
The customers can chat with the administrator for any query about restaurants
details and deals .
The features that are described in this document E-Menu will cover all the Restaurants
in Multan City. After this, we will expand it to Punjab Region for other further
implementation after improvement.
Document are used in the future phases of the project development cycle. The features
described here meet the needs of all the customers. The success criteria for the system
is based in the level up to which the features described in this document are
implemented in the system.
2.1.1Network Login:
Since the system needs to handle a lot of confidential customer information, a network
login function is essential for ensuring security. Users who do not have the correct
access rights will be prevented from connecting to the database. There are two groups
of users of the system with different access rights:
Admin - acts as the system administrator and can perform all functions.
This function allows the personal information of customer, such as their name, phone
no., address, etc., to be managed. Using this function a customer can:
E-Menu app needs to change the records of items/ deals, such as the particulars, their
prices, the type or Image, etc. Using this function and admin can:
2.2.1 Reliability
E-Menu reliability requirements deals with failures to provide online food order
services. As this project is based totally on PHP so it provides the advanced
functionality of better Security and Usability.
2.2.2 Supportability
Now, this method is intended in such the way that it takes fewer resources to figure out
work correctly. It’s its type of minimum needs that we’d like to require care of :
The system must be controlled by approved person as wrong hands can delete
deals and Food Stuff, notes, results or leak them.
The system is made correctly without any bug or error. All the testing is done as
per the requirements. So everything now depends on the usage of this project.
2.2.4 Usability
The system shall allow the users to access the E-Menu from the Internet using
HTML or it’s derivative technologies. The E-Menu uses a web browser as an
interface.
No specific training is required as every person knows how to use Browser now
adays.
2.2.5 Efficiency
E-Menu is very efficient and compatible to every hardware on which it will run.
Whenever admin or customer search any query it will respond in no time(very fast).
2.2.6 Portability
The Domain Requirements of E-Menu are below and all these domain requirements are
capable to fullfill the requirements.
XAMP/Local Server
HTML5
CSS3
PHP7
Javascript
MySQLi
In Use Case Diagram, a customer can view and order deals. Admin can access every
panel including Customer Dashboard. Customer can check order status. He can also
view and order deals and food items.
Post Condition: Order has been made that Assumption: User is familiar with
goes to the system for processing. how to enter values through mouse
and has a general idea
Description: The user is asked for the mode of payment. The payment is accepted or
is collected by cash collector. And the customer is given a token with their order
number.
Pre-conditions: The order has been confirmed and the total bill has been displayed on
the screen to the customer. Costumer decides to go ahead with the order.
Flow of Events:
Post Condition: Customer waits for the order Assumption: User is familiar with
to be processed. how the system works and what is
expected out of system.
Description: The user is asked for the mode of payment. The payment is accepted or
is collected by cash collector. And the customer is given a token with their order
number.
Pre-conditions: None
Flow of Events:
1. Food preparation person/Store manager notices an item out of stock
2. Updates the menu accordingly.
Post Condition: A new and updated menu list Assumption: The Store manager is
will be displayed. given the rights and privileges to
enter the system and make the
required changes.
Description: Internal order system reads the order once the customer confirms his
order and then he communicates the order to the Restaurant person.
Flow of Events:
1. Internal order system reads the order
2. Communicates the order to the Restaurant
Post Condition: A new and updated menu list Assumption: The Store manager is
will be displayed. given the rights and privileges to
enter the system and make the
required changes.
In Sequence Diagram, we show the activities of the customer and it’s steps how he
check and access the website. Customer access website and website is fetched by web
server which can be fetched by Database. Admin controls the Database and Web
Server.
In Interaction Overview Diagram, we show the customer open the website search deals
and order it. He can also contact with the admin for any error or query. He can search,
browse, view or order the food items and deals and can check out.
In this Activity Diagram, we show the flow of admins how they can login and access
the website. admins can view and update information there and new admin/ restaurant
can register. Admin/ restaurant can update their profile and can left the website.
In the Class Diagram, we show the activities of admin and customer. How admin can
login and what he can do on the website like approve order, add items, modify items,
add items, and add deals.
In the Deployment Diagram, user visit the E-Menu to check the deals and order it from
the database. The history of deals and it’s details are saved in the database server.
3.1 INTRODUCTION
The Planning Phase is the time when the project team transform the initial vision/scope
from the Envisioning Phase into practical plans on how to achieve it. The main purpose
of the Planning Phase is to define the solution in detail along with the approved project
plan and schedule. It states that how and when the project’s objective to be achieved. A
project planning is a formal, approved document used to guide both project execution
and project control.
3.2 METHODOLOGY
The term was roused by James Martin, who worked with associates to build up another
technique called Rapid Iterative Production Prototyping (RIPP). In 1991, this approach
turned into the start of the book Rapid Application Development. Quick application
advancement is still being used today and a few organizations offer items that give a
few or the greater part of the apparatuses for RAD programming improvement. (The
idea can be connected to equipment improvement too.) These items incorporate
necessities gathering instruments, prototyping devices, PC helped programming
building devices, dialect advancement situations, groupware for correspondence among
improvement individuals, and testing devices.
Stakeholder Engagement
Transparency
Focuses on Users
Improves Quality
Here is some work plan for unique web portal in which we defined how we plan to
work:
SR
Activities Days Reason of Durations
No
Introduction to
Team member
6 We mention just introduction with specific skill set
and Tools and
also define tools and technology which we are going
Technology 1
to use.
7 Vision document 2 There is need only some more things and description
of previous identified parameters of products for
generating the Vision.
System
specification and
9 1 Need analysis according to system specification.
external entities
Use case First identify the use case name and Description of
descriptions every single use case according to OOAD.
10 8
11 Use Case 5 Make high level use case diagram and analysis level
Diagram use case diagram in which we define inclusion,
extension and generalization relation ships.
16 System Testing 9 This is the phase which aware us the work need some
changes or it meet user requirements or not, If not
then what changes are required.
A good web development project nearly always has the following necessary roles:
Project architect – develops the overall concept of the project (not the design)
Back-end developer – creates the framework the site interface will be placed on
Site tester – ideally does everything possible to try and break the site until it can
be broken no more.
4.1 INTRODUCTION
Any Design in an application is the base to attract any user to our website or an
application. When user visit Website or an application he has no concern about the
code used behind the Website or application. He not need to know which tool is used in
this design of the Application. The Design of any Particular Website or an application
represents its Functionality. Proper Designing or Structure of the website Provide User
Support.
4.2 PURPOSE
6. Many More….
4.3 SCOPE
XML
Extensible Markup Language is a markup language that was designed to
transport and store data
MySQLi
Mysqli is an improved version of Structure Query Language. It is a database
management system that provide a flexible and efficient database platform to
rise a strong “On Command” business application.
Administrator
The administrator can perform all the activities of the system such like add,
remove, update different records and He or She can also create new users and
also can delete any deals and Food Stuff and user and change its password.
CSS
Cascading Style Sheet is the language for describing the presentation
of Web pages, including colors, layout, and fonts. It allows one to adapt the
presentation to different types of devices, such as large screens, small screens,
or printers. CSS is independent of HTML and can be used with any XML-based
markup language.
PHP
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used
open source general-purpose scripting language that is especially suited for web
development and can be embedded into HTML.
For system developers, they need system architecture diagrams to understand, clarify,
and communicate ideas about the system structure and the user requirements that the
system must support. It's a basic framework can be used at the system planning phase
helping partners understand the architecture, discuss changes, and communicate
intentions clearly.
Sequence diagrams are used to show the functionality through a use case. Any actors
involved in the system are shown at the top of the diagrams. The objects that the system
needs in the order to perform the use cases are shown at the top of the diagram. Each
arrow represents a message pass between actors and the objects or object and object to
perform the needed functionality. Following diagrams are used to describe the behavior
of the system.
In the Class Diagram, we show the activities of admin and customer. How admin can
login and what he can do on the website like approve order, add items, modify items,
add items, and add deals.
Creating a roadmap
You have to understand the direction of the project and establish the goals and purposes
of the web application.
Deciding on outsourcing
Web application development is often cost-effective and faster when outsourced.
Selecting Technology
On this stage you need to define the platform, technology, environment, structure,
and framework. Don’t forget about the project timeline which has to be decided on the
same stage (as far as it largely depends on technology).
Here a visual guide or a simple UI sketch has to be created. Once the interface and
interaction models are approved, the design is implemented.
Testing
That includes QA testing and bug fixing. A web application must be put through the
paces, and all suitable testing techniques must be employed, including load testing,
stress testing, performance testing, usability testing etc.
ARCHITECTURE DIAGRAM
6.1 INTRODUCTION
Web Testing in simple terms is checking your web application for potential bugs before
its made live or before code is moved into the production environment. During this
stage issues such as that of web application security, the functioning of the site, its
access to handicapped as well as regular users and its ability to handle traffic is
checked. Web application testing, a software testing technique exclusively adopted to
test the applications that are hosted on web in which thTest planning, the most
important activity to ensure that there is initially a list of tasks and milestones in a
baseline plan to track the progress of the project. It also defines the size of the test
effort. It is the main document often called as master test plan or a project test plan and
usually developed during the early phase of the project. Here we have some plan
activities.
To determine the scope and the risks that need to be tested and that are NOT to
be tested.
Planning when and how to test and deciding how the test results will be
evaluated, and defining test exit criterion.
system to identify, analyze and fix the defects. There are many advantages of Unit
Testing.
Unit Tests, when integrated with build gives the quality of the build as well.
Checking whether or NOT a blank value or default value can be retrieved from
the database.
Running data tests for all data files, including clip art, tutorials, templates, etc.
User acceptance testing, a testing methodology where the clients/end users involved in
testing the product to validate the product against their requirements. It is performed at
client location at developer's site. For industry such as medicine or aviation industry,
contract and regulatory compliance testing and operational acceptance testing is also
carried out as part of user acceptance testing. UAT is context dependent and the UAT
plans are prepared based on the requirements and NOT mandatory to execute all kinds
of user acceptance tests and even coordinated and contributed by testing team.
A test case is a document, which has a set of test data, preconditions, expected results
and post conditions, developed for a particular test scenario in order to verify
compliance against a specific requirement. Test Case acts as the starting point for the
test execution, and after applying a set of input values, the application has a definitive
outcome and leaves the system at some end point or also known as execution post
condition.
6.4 RESULTS
Result reporting is a mechanism with which the state of the product is presented to the
customer from various angles. Format of the Report varies from time to time as
mentioned below:
Targeted Audience.
Test planning, the most important activity to ensure that there is initially a list of tasks
and milestones in a baseline plan to track the progress of the project. It also defines the
size of the test effort. It is the main document often called as master test plan or a
project test plan and usually developed during the early phase of the project. Here we
have some plan activities.
To determine the scope and the risks that need to be tested and that are NOT to
be tested.
Planning when and how to test and deciding how the test results will be
evaluated, and defining test exit criterion.
Unit Tests, when integrated with build gives the quality of the build as well.
team in order to measure the quality of the system unbiased. It includes both functional
and Non-Functional testing.
Checking whether or NOT a blank value or default value can be retrieved from
the database.
Running data tests for all data files, including clip art, tutorials, templates, etc.
A test case is a document, which has a set of test data, preconditions, expected results
and post conditions, developed for a particular test scenario in order to verify
compliance against a specific requirement. Test Case acts as the starting point for the
test execution, and after applying a set of input values, the application has a definitive
outcome and leaves the system at some end point or also known as execution post
condition.
6.4 RESULTS
Result reporting is a mechanism with which the state of the product is presented to the
customer from various angles. Format of the Report varies from time to time as
mentioned below:
Targeted Audience.
Test Description: “User enters the required fields, presses Log-in button”, It must
contact with the database, and database updates and sends result to the user.
Table 6.1
Table 6.2
Test Description: “User selects the required option from the Menu; Application
connects with the database, database updates and sends result to the user.
Table 6.3
Test Description: “User selects the required option from the Menu; Application
connects with the database, database updates and sends result to the user.
Table 6.4
6.4 REPORT
Reporting test execution results is very important part of testing, whenever test
execution cycle is complete, tester should make a complete test results report which
includes the Test Pass/Fail status of the test cycle.
If manual testing is done then the test pass/fail result should be captured in an excel
sheet and if automation testing is done using automation tool then the HTML or XML
reports should be provided to stakeholders as test deliverable.
7.1 INTRODUCTION
People’s life is getting busier with every passing moment; especially in the
metropolitan & surrounding areas. To keep up with the hectic schedule, they need
quick, reliable, & anytime-anywhere assistance for various day-to-day tasks.Online
food ordering & delivery marketplace has been a promising business idea from the
start. And it is evident from the success of the first generation of online food ordering
startups like FoodPanda, GrubHub, Eat24, and others. However, amid the torrent of
new online business ideas, which are sprouting all over the web, the sector hasn’t
received the attention it deserves from aspiring entrepreneurs. As a result, many parts
of it still remain unexplored.
This system is a bunch of benefits from various point of views. As this online
application enables the end users to register to the system online, select the food items
of their choice from the menu list, and order food online. It is developed to help
restaurants to simplify their daily operational and managerial task as well as improve
the dining experience of customers. And also helps restaurant develop healthy customer
relationships by providing good services. The system enables staff to let update and
make changes to their food and beverage list information based on the orders placed
and the orders completed.
Worldwide, the market for food delivery stands at €83 billion, or 1 percent of the total
food market and 4 percent of food sold through restaurants and fast-food chains. It has
already matured in most countries, with an overall annual growth rate estimated at just
3.5 percent for the next five years. This shows that it is the need of Modern Era.
In the Deployment Diagram, user visit the E-Menu to check the deals and order it from
the database. The history of deals and it’s details are saved in the database server.
IMPLEMENTATION
REFERENCES
[1] Steven Morris, Carlos Coronel, Peter Rob, Database Systems: Design,
Implementation, and Management.
Websites:
[1] www.Stackoverflow
[2] www.php.com
[3] www.w3schools.com
[4] www.tutorialspoint.com/index.htm
[5] www.w3resource.com
[6] www.codeproject.com