You are on page 1of 79

A

Project Report on

FINDPLACES

Submitted in the partial fulfillment of the requirement for the


award of Degree of

Master of Computer Application


(Session: 2018-2020)

Under Supervision of: Submitted By:

Dr. Pardeep Kumar Ankush Kumar

Associate Professor MCA-6th Sem


Roll No: 6465519

DEPARTMENT OF COMPUTER SCIENCE & APPLICATION

KURUKSHETRA UNIVERSITY KURUKSHETRA

i
DECLARATION

I, Ankush Kumar, a student of Master of Computer Applications (MCA), 6th semester in the
Department of Computer Science & Applications, Kurukshetra University, Kurukshetra, under
class Roll No.5464519, for the session 2018-2020, hereby, declare that the project entitled
“FindPlaces” has been completed by me at “Appworx IT Solution Pvt Ltd”. after the theory
examination of 6th 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.

Ankush Kumar

ii
Department of Computer Science & Applications
Kurukshetra University, Kurukshetra

Dr. Pardeep Kumar


Associate Professor

CERTIFICATE

It is certified that Mr. Ankush Kumar, a student of Master of Computer Applications (MCA
6th), under class Roll No.5464519 for the session 2018-2020, has completed the project entitled
FindPlaces and undertaken at “Appworx IT Solution Pvt Ltd” . under my supervision.

I wish him/her all success in his all endeavors.

Dr. Pardeep Kumar

iii
Department of Computer Science & Applications
Kurukshetra University, Kurukshetra

Dr. Rajender Nath

Professor & Chairman

CERTIFICATE

It is certified that Mr. Ankush Kumar is a bona fide student of Master of Computer
Applications (MCA 6th), under class Roll No.5464519. He has undertaken the project entitled at
“Appworx IT Solution Pvt Ltd”.under the supervision of Dr. Pardeep Kumar.

I wish him/her all success in his all endeavors.

(Dr. Rajender Nath)

iv
CERTIFICATE OF TRAINING

This is to certify that Mr. Ankush Kumar a student of Department of Computer Science and
Application, Kurukshetra University is under training from 28th January, 2020 to 30th July,
2020. During this training, he is working under the guidance of Ms. Seema Chauhan. His
overall performance during the training period is Excellent. Other details related to his training
are as below:

i. Name of the Organization: Appworx IT Solutions Pvt. Ltd.


ii. Place of work: Chandigarh
iii. Address of the Employer: Plot No. 10, 4th Floor, Rajiv Gandhi IT Park, Chandigarh,
160101
iv. Stipend (in Rs.): N/A

Name: Deepti

Designation: Centre Manager

Department: Skill Development

Appworx IT Solutions Pvt Ltd., Corporate and Reg. Office Address: Netsmartz House, Plot No 10, I.T. Park,
Chandigarh-160101, India Phone No: 91-172-5055200, Website: www.appworx.in, CIN:
U72900CH2012PTC033966

v
ACKNOWLEDGMENT

I am highly grateful to the Dr. Rajender Nath, Chairperson, DCSA, KUK for providing me
this opportunity to carry out the six month industrial training at Appworx IT Solution Pvt Ltd.

The Constant guidance and encouragement received from Dr. Pardeep Kumar (Astt. Professor,
Dept. of Computer Science and Application) and training in charge Ms. Seema Chauhan has
been of great help in carrying out the work and is acknowledged with reverential thanks.

The help rendered by Ms. Seema Chauhan Supervisor for experimentation is greatly
acknowledged.
I also express gratitude to other faculty members of the Department of Computer ScienceAnd
Application, Kurukshetra University, Kurukshetra for their intellectual support throughout the
course of this work.
Finally, I am indebted to all whosoever have contributed in this report work.

Ankush kumar

vi
ABSTRACT
This report describes an overview and the outcome of work done during the industrial training of the
Master of Computer Applications. During training, I had made the project on FIND PLACES. In this
project, I have used HTML5, CSS, JavaScript, PHP and MYSQL Server.

FindPlaces is a website which is used to search for the places we don’t know about and provides the
following services
 To provide best or satisfactory informative services to users.
 To provide a better way to get to know detailed information about a place.
 To provide a search platform where users get a deep knowledge about the place of their own
choice.
 To achieve our goal i.e. to make a website with the help of which an unknown can also explore
those searched places.
 To build a system that honestly and efficiently works on the search needs.
 Building an innovative system to enhance the tourism of our country.
 Providing a brief knowledge about the place for an unknown to be familiar with it.

vii
INDEX
Chapters Page No.
1. Introduction of Project
1.1 Introduction…………………………………………………….. …… 1
1.2 Objective of the project……………………………………………… 2
1.3 Scope of the project …………………………………………………. 2
1.4 About the Company ………………………………………………… 3
2. Modules
2.1 Admin Module.……………………………………………………… 5
2.2 User Module ….…………………………………………………….. 5
3. Feasibility Analysis
3.1 Feasibility Analysis ….……………………………………………… 7
4. Schedule of Activities 8
4.1 System Development Life Cycle …………………………………… 9-10
5. Application Environment
5.1 Hardware Environment……………………………………………… 11
5.2 Software Environment………………………………………………. 11
6. Data Flow Diagrams
6.1 Data Flow Diagram……………………………………………......... 12
6.2 DFD Symbols………………………………………………………... 12
6.3 Flow Chart ………………………………………………………… 13
6.4 Entity-Relationship Model (ERM)….……………………………… 14-15
7. Languages Used
7.1 Front End …………………………………………………………….. 15-20
7.2 Back End ………………………………………………………. ……. 21-22
8. Database Module
8.1 Database Designs ………………………………………… ……… 23-28
8.2 Back-End Designs ……………………………………………… 29-33
8.3 Output Designs ………………………………………………………. 34-40
9. System Implementation
9.1 Coding………………………………………………………………… 41-57
9.2 System Testing……………………………………………………… 59
9.3 System testing Process …………………………………………………….……. 60
viii
9.4 Types of System Testing ……………………………..…………………………. 61

9.5 User Acceptance Testing…………………………………………………. 62

9.6 Prerequisites………………………………………………………………. 62

9.7 UAT Process………………………………………………………………. 63-64

10. Deployment

10.1 Introduction………………………………………………………………………. 65

10.2 Deployment methodologies……………………...………………………………. 66

10.3 Deployment Process……………………………….……………………… 67

11. Conclusion and Future Scope


10.1 Conclusion ………………………………………………………….. 68
10.2 Future Scope ………………………………………………………… 69
12. Bibliography
11.1 URLs ………………………………………………………………… 70

ix
CHAPTER 1

1. INTRODUCTION TO PROJECT
1.1 INTRODUCTION:
The objective of the “Find Places” is to provide a system which handles the information of the various
places and updating information according to the requirements. It takes care of people’s needs. It
makes easy to find places for visitors and visit anywhere. It even maintains the data of what and all
history of places.

Data will be stored in the database. It is easy to use for user and free to use. It also maintains the
people visited records. This project is helpful in the Automation of find places including place history,
records, image and rating.
Find places System allows the user to get the details of the place where they wish to go and the detail
of place equipment etc. This software package allows storing the details of all the data related to
place. The system is strong enough to withstand regressive yearly operations under conditions where
the database is maintained and cleared over a certain time of span. The implementation of the system
in the organization will considerably reduce data entry, time and also provide readily calculated
reports.

1
1.2 Objectives Of the Project
The main objective of the Find Place web based application is to provide the best services to users
about the specific place. It mainly works on what to search and what we will get i.e., our plan for a
specific tourist place or historical place can only be successful if and only if we have the whole
knowledge about that particular place. So this project will fulfill these requirements of users.

 To provide best or satisfactory informative services to users.

 To provide a better way to get to know detailed information about a place.

 To provide a search platform where users get a deep knowledge about the place of their own

Choice.

 To achieve our goal i.e. to make a website with the help of which an unknown can also

explore those searched places.

 To build a system that honestly and efficiently works on the search needs.

 Building an innovative system to enhance the tourism of our country.

 Providing a brief knowledge about the place for an unknown to be familiar with it.

 Developing a system with enhanced capabilities to ensure the goal’s achievement.

 Beneficiary system development whether for inter- intra city or international tourists for
helping our economy.

1.3 Scope Of the Project


 Firstly, to learn the different phases of web based product development and gain hand on
experience while developing a complete website. Also to learn the major tools and
technologies of web designing like Bootstrap, Magento etc.

 Secondly, project is very needy and helpful in context with the dependency of people on
mobile devices.

 This type of website are on a very large scale that means doesn’t cover the small places but
here this project Find places covers all small tourist place.
2
1.4 COMPANY PROFILE
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.
Appworx tie-ups with prominent global educational institutions help students for further professional
growth and explore career prospects across geographic boundaries.

Company History:
Appworx IT Solutions Private Limited is a Non-govt company, incorporated on 06 Aug, 2012. It's a
private unlisted company and is classified as ‘company limited by shares’. Company’s authorized
capital stands at Rs 200.0 lakhs and has 62.926% paid-up capital which is Rs 125.85 lakhs. Company
is registered in Chandigarh (Chandigarh) Registrar Office. Appworx IT Solutions Private Limited
registered address is Netsmartz House, Plot No. 10, Rajiv Gandhi Chandigarh Technology Park
Chandigarh Chandigarh CH 160101 IN.

Goal:
To be a catalyst in enriching and empowering businesses through sustainable technology in
accordance with the highest professional standards continuously challenging ourselves while
maintaining team spirit, integrity and happiness.

The Company:
Founded in 2012, Appworx, headquarter in Chandigarh, India. The activity is focused on the
following major activity axes:

3
• Web Development

• Web Designing

• Project Management

• Digital Marketing

Values:
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

The People:
The people are their key strength. They pick and nurture the best to create an awesome base of
expertise and talent. They are a team of young professionals, enthusiastic and talented people. Web
Developers, Web Designers, Digital Marketing experts 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 web developers, therefore making them as an unbeatable team.

4
CHAPTER 2

2. MODULES

2.1 Admin Module

Login to site: Admin can login to the site from admin login form, link to which is available on
site’s Homepage.
Add more Cities/Locations/Categories: Admin can add more and more
Cities/Locations/Categories in the web application
Delete Cities/Locations/Categories: Admin can delete Cities/Locations/Categories the web
application whenever there is a need to delete.
Change password: Admin can change the password when he/she wants.

2.2 User Module

View Interested Locations: User can view interested locations that they want to visit.

View Interested Cities: User can view interested cities that they want to visit.

Know about famous things in selected city: User can get the information about the famous
parks, gardens, temples etc in the selected city.

Feedback: User can give feedback about anything of our site by filling feedback form.

Rating: Users can rate the places.

5
CHAPTER 3

3. FEASIBILITY ANALYSIS
3.1 FEASIBILITY ANALYSIS
The feasibility study carried is out to test if the proposed system is worth being implemented. Given
unlimited and infinite time, all projects are feasible. Unfortunately such resources and time are not
possible in real life situations. Hence it becomes both necessary and prudent to evaluate the feasibility
of the project at the earliest time to avoid unnecessarily wastage of time, effort and professional
embarrassment over an ill-conceived system. Feasibility study is a test of system proposed regarding
its workability, impact on the organization ability to meet the user needs and effective use of
resources. It is to serve as a decision document . It has three question to answer . Since, the present
system is much costly & difficult to use & to operate & it is also time consuming . So our E-
CAMPUS is much feasible , in cost , time , & efforts as compare to the previous manual system. It is
economically feasible , it will only require a single operator to operate the system(Administrator) ,
who is responsible for entering the data into the database via a user interface provided to him.
The following feasibility study are carried out for the proposed system namely :-

• Economic Feasibility :

Economic analysis is the most frequently used method for evaluating the effectiveness of a new
system. More commonly known as cost/benefit analysis, the procedure is to determine the benefits
and savings that are expected from a candidate system and compare them with costs. If benefits
outweigh costs, then the decision is made to design and implement the system. An entrepreneur must
accurately weigh the cost versus benefits before taking an action.

• Technical feasibility :-

The Technical Feasibility Study assesses the details of how you will deliver a product or service (i.e.,
materials, labor, transportation, where your business will be located, technology needed, etc.). Think
of the technical feasibility study as the logistical or tactical plan of how your business will produce,
store, deliver, and track its products or services. A technical feasibility study is an excellent tool for
trouble-shooting and long-term planning. In some regards it serves as a flow chart of how your
products and services evolve and move through your business to physically reach your market.

6
• Operational Feasibility :-

Operational feasibility is a measure of how well a proposed system solves the problems, and takes
advantage of the opportunities identified during scope definition and how it satisfies the requirements
identified in the requirements analysis phase of system development . A system that has operational
feasibility is one that will be used effectively after it has been developed. if users have difficulty with
a new system, it will not produce the expected benefits. Operational feasibility depends on several
vital issues.
• Behavioral Feasibility:-
As evaluation of the behavior of the end user , which may affect the development of the system.
People are inherently resistant to change , & the user needs a sufficient amount of training , it would
result in the expenditure of the user’s needs that is precious enough for them & also for organization .
So generally the user would reject a proposal if it were going to consume many amount of time &
efforts from them. So the outcome of establishing of the proposed system should bring user
convenience & satisfaction.
• Motivational Feasibility :-
As evaluate of the probability that the company is sufficiently motivated to support the development
& implementation of the application with necessary user’s participation , resource sharing , training
etc.

7
CHAPTER 4

4. SCHEDULE OF ACTIVITIES

4.1 System Development Life Cycle:


The software development life cycle (SDLC) is a framework defining tasks performed at each step in
the software development process. SDLC is a structure followed by a development team within the
software organization. It consists of a detailed plan describing how to develop, maintain and replace
specific software. The life cycle defines a methodology for improving the quality of software and the
overall development process.

The software development life cycle is also known as the software development process.

SDLC consists of following activities:

Planning: The most important parts of software development, requirement gathering or requirement
analysis are usually done by the most skilled and experienced software engineers in the organization.
After the requirements are gathered from the client, a scope document is created in which the scope of
the project is determined and documented.

Implementation: The software engineers start writing the code according to the client's requirements.

Testing: This is the process of finding defects or bugs in the created software.

Documentation: Every step in the project is documented for future reference and for the
improvement of the software in the development process. The design documentation may include
writing the application programming interface (API).

Deployment and maintenance: The software is deployed after it has been approved for release.

Maintaining: Software maintenance is done for future reference. Software improvement and new
requirements (change requests) can take longer than the time needed to create the initial development
of the software.

8
ITERATIVE MODEL:
The iterative model is a particular implementation of a software development life cycle (SDLC) that
focuses on an initial, simplified implementation, which then progressively gains more complexity and
a broader feature set until the final system is complete. When discussing the iterative method, the
concept of incremental development will also often be used liberally and interchangeably, which
describes the incremental alterations made during the design and implementation of each new
iteration.

Throughout this article we will take a deeper dive into the iterative model, including where it
originated from, how the process is actually implemented within a project, and both the advantages
and disadvantages that can arise from its use, so let’s get cracking.

9
10
CHAPTER 5
5. APPLICATION ENVIRONMENT

5.1 Hardware Requirements:-

Hardware
PC Windows Server
Processor
Intel dual core or above

RAM 1 GB RAM or above


Hard Disk 20 GB hard disk or above

5.2 Software Requirements:-

Software
Operating System PC (Windows)
Database
My SQL

Server Xampp Web Server


Text Editor Sublime, Notepad++,Visual Studio

11
CHAPTER 6
6. DATA FLOW DIAGRAMS

6.1 DFD (Data Flow Diagram)

The data flow diagrams are pictorial or graphical representation of the outline of the system study.
The data flow diagram covers all the processes and data storage area which takes place during any
transaction in the system. The data flow diagrams are functionally divided into context level, Zero
level and First level data flow diagrams.

6.2 DFD Symbols


Process: Here flow of data is transformed. e.g. Purchase of currencies, update inventory file, etc.
• External Entity: A source or destination of data which is extrenal to the system. e.g. Public,
Dealer etc.
• A data flow: It is packet of data. It may be in the form of document , letter etc.

DATA FLOW DIAGRAM

1 LEVEL DFD:-

12
6.3 FLOWCHART:

13
6.4 ENTITY- RELATIONSHIP MODEL

An Entity-Relationship Model (ERM) is an abstract and conceptual representation of data. Entity-


relationship modeling is a database modeling method, used to produce a type of conceptual schema or
semantic data model of a system, often a relational database, and its requirements in a top-down

fashion.The entity-relationship model is a way of graphically representing the logical relationships of


entities in order to create a database. The ER model was first proposed by Peter Pin-Shan Chen of
Massachusetts Institute of Technology (MIT) in the 1970s.

In ER modeling, the structure for a database is portrayed as a diagram, called an entity-relationship


diagram , that resembles the graphical breakdown of a sentence into its grammatical parts. Entities are
rendered as points, polygons, circles, or ovals. Relationships are portrayed as lines connecting the
points, polygons, circles, or ovals. Any ER diagram has an equivalent relational table, and any
relational table has an equivalent ER diagram. ER diagramming is an invaluable aid to engineers in
the design, optimization, and debugging of database programs. Entities and Entity Sets:

• An entity is an object that exists and is distinguishable from other objects. For instance, John
Harris with S.I.N. 890-12-3456 is an entity, as he can be uniquely identified as one particular
person in the universe.

• An entity may be concrete or abstract.


• An entity set is a set of entities of the same type.
• Entity sets need not be disjoint.
• An entity is represented by a set of attributes.
• Formally, an attribute is a function which maps an entity set into a domain.
Mapping Constraints: An E-R scheme may define constraints to which the contents of a database
must conform.

One-to-one: An entity in A is associated with at most one entity in B, and an entity in B is associated with
at most one entity in A.

One-to-many: An entity in A is associated with any number in B. An entity in B is associated with at most
one entity in A.

Many-to-one: An entity in A is associated with at most one entity in B. An entity in B is associated with
any number in A.

Many-to-many: Entities in A and B are associated with any number from each other.
14
ENTITY RELATIONSHIP DIAGRAM :

Delete View interested


Add more Change Know about famous locations
cities/Locations things in selected cities
cities/locations/ /Categories Password
Categories
Rating
View interested
cities
(LOGIN TO SITE)-
ADMIN Website visitors

Manage

Explor
e

Manage
Admin Module Manage
User Module

Admin_id Admin_Name

15
CHAPTER 7

7. LANGUAGES USED

7.1 FRONT END

7.1.1 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 latter
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.
 HTML stands for Hyper Text Markup Language

 HTML is a markup language

 A markup language is a set of markup tags

 The tags describes document content

 HTML documents contain HTML tags and plain text

 HTML documents are also called web pages

 Hypertext: It refers to the text which acts as a link.

 Markup: It refers to the symbols or sequence of characters to define the structure of the text.

16
7.1.2 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. CSS is designed primarily to enable the
separation of document content (written in HTML or a similar markup language) from document
presentation, including elements such as the layout, colors, and fonts. This separation can improve
content accessibility, provide more flexibility and control in the specification of presentation
characteristics, enable multiple pages to share formatting, and reduce complexity and repetition in the
structural content (such as by allowing for table less web design.

7.1.3 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.
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.
that allows web developers to create dynamic content that interacts with databases. PHP is basically
used for developing web based software applications.
 PHP started out as a small open source project that evolved as more and more people found
out how useful it was.

 PHP is a recursive acronym for "PHP: Hypertext Preprocessor".

 PHP is a server side scripting language that is embedded in HTML. It is used to manage
dynamic content, databases, session tracking, even build entire e-commerce sites.

17
 It is integrated with a number of popular databases, including MySQL, PostgreSQL, Oracle,
Sybase, Informix, and Microsoft SQL Server.

 PHP is pleasingly zippy in its execution, especially when compiled as an Apache module on
the Unix side. The MySQL server, once started, executes even very complex queries with
huge result sets in record-setting time.

7.1.4 JQUERY:
JQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
It is free, open-source software using the permissive MIT license. Web analysis indicates that it is the
most widely deployed JavaScript library by a large margin 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 JQuery's syntax is designed to make it easier to navigate a document,
select DOM elements, create animations, handle events, and develop Ajax applications. JQuery also
provides capabilities for developers to create plug-ins on top of the JavaScript library. This enables
developers to create abstractions for low-level interaction and animation, advanced effects and high-
level, theme able widgets. The modular approach to the JQuery library allows the creation of
powerful dynamic web pages and Web applications.
The set of jQuery core features—DOM element selections, traversal and manipulation—enabled by
its selector engine (named "Sizzle" from v1.3), created a new "programming style", fusing algorithms
and DOM data structures. This style influenced the architecture of other JavaScript
frameworks like YUI v3 and Dojo, later stimulating the creation of the standard Selectors API.
Microsoft and Nokia bundle jQuery on their platforms.Microsoft includes it with Visual Studio for
use within Microsoft's ASP.NET AJAX and ASP.NET MVC frameworks while Nokia has integrated
it into the Web Run-Time widget development platform.

18
7.1.5 JAVASCRIPT:
JAVASCRIPT is an interpreted computer programming language. It was originally implemented as
part of web browser so that client-side scripts could interact with the user, control the browser,
communicate asynchronously and alter the document content that was displayed. JavaScript is a
prototype –based scripting language that is dynamic, weakly typed, and has first-class functions. Its
syntax was influenced by the language C. JavaScript copies many names and naming conventions
from Java, but the two languages are otherwise unrelated and have very different semantics. The key
design principles within JavaScript are taken from the Self and Scheme programming languages. It is
a multi-paradigm language, supporting object-oriented, imperative, and functional programming
styles. JavaScript's use in applications outside of web pages—for example, in PDF documents, site-
specific browsers, and desktop widgets —is also significant. It is a Dynamic programming language
 JavaScript is a lightweight, interpreted programming language.

 Designed for creating network-centric applications.

 Complementary to and integrated with Java.

 Complementary to and integrated with HTML.

 Open and cross-platform

 Client-side JavaScript

7.1.6 AJAX:
AJAX is a web development technique used for creating interactive web applications. The intent is to
make web pages feel more responsive by exchanging small amounts of data with the server behind the
scenes, so that the entire web page does not have to be reloaded each time the user requests a change.
This is intended to increase the web page’s interactivity, speed, functionality, and usability. Ajax is a
cross-platform technique usable on many different operating systems, computer architectures, and
Web browsers as it is based on open standards such as JavaScript and XML, together with open
source implementations of other required technologies. OrAJAX 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.Ajax allows content on Web pages to update
19
immediately when a user performs an action, unlike an HTTP request, during which users must wait
for a whole new page to load. For example, a weather forecasting site could display local conditions
on one side of the page without delay after a user types in a zip code.
Google Maps is one well-known application that uses Ajax. The interface allows the user to change
views and manipulate the map in real time. Ajax applications do not require installation of a plug-in,
but work directly with a Web browser. Because of the technique's reliance on XMLHttpRequest, early
applications worked only with Microsoft's Internet Explorer browser, but most other browsers now
support Ajax.
Applications created with Ajax use an engine that acts as an intermediary between a user's browser
and the server from which it is requesting information. Instead of loading a traditional Web page, the
user's browser loads the Ajax engine, which displays the page the user sees. The engine continues to
run in the background, using JavaScript to communicate with the Web browser. User input or clicking
on the page sends a JavaScript call to the Ajax engine, which can respond instantly in many cases. If
the engine needs additional data, it requests it from the server, usually using XML, while it is
simultaneously updating the page.
Ajax is not a proprietary technology or a packaged product. Web developers have been using
JavaScript and XML in combination for several years. Jesse James Garrett of the consultancy firm
Adaptive Path is credited with coining the name "Ajax" as a shorthand way to refer to the specific
technologies involved in a current approach.

7.1.6 BOOTSTRAP:

BOOTSTRAP is a front-end framework for HTML, CSS and JavaScript that is notable for developing
mobile-first and responsive websites. With some basic knowledge of HTML and CSS, you can create
Bootstrap forms, tables, buttons, typography, navigation, modals, image carousels and optional
JavaScript plugins, by using the premade templates Bootstrap provides you. It comes with the
following features:-

1. Responsive: Bootstrap's features are responsive, which means they are optimized to fit the size of
the screen you're seeing the page on, such as desktops, tablets or cell phones. For example, a

20
Bootstrap form on a desktop site will proportionally change in size when viewed from a mobile
phone.
2. Mobile-first: As we mentioned above, part of the core structure of Bootstrap is mobile-first styles
as opposed to desktop-first. This means that instead of using max-width in the media queries- like you
would for a site designed for desktop- you use min-width. Generally, coding for mobile-first is
simpler than coding for desktop. Also, where global styles (outside the media queries) are usually
designed to make websites look nice on a large screen, a mobile-first approach focuses on sites
looking attractive on a small screen.

3. Browser-friendly: Bootstrap doesn't discriminate, which is why it is compatible with all current
browsers, like Chrome, Safari, Internet Explorer, Firefox, and Opera.

4. Easy-to-use: The best reason of them all! You only need very barebones knowledge of HTML and
CSS to begin using Bootstrap.

21
7.2 BACK END
7.2.1 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. So nowadays,
we use relational database management systems (RDBMS) to store and manage huge volume of data.
This is called relational database because all the data is stored into different tables and relations are
established using primary keys or other keys known as foreign keys.
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).
 MySQL is customizable. The open source GPL license allows programmers to modify the
MySQL software to fit their own specific environments.

22
7.2.2XAMPP
XAMPP is an open source free software developed by Apache friends. XAMPP software package
contains Apache distributions for Apache server, MariaDB, PHP, and Perl. And it is basically a local
host or a local server. This local server works on your own desktop or laptop computer. You can just
install this software on your laptop or desktop and test the clients or your website before uploading it
to the remote web server or computer. This XAMPP server software gives you suitable environment
for testing MYSQL, PHP, Apache and Perl projects on the local computer.

The full form of XAMPP is X stands for Cross-platform, (A)Apache server, (M)MariaDB, (P)PHP
and (P)Perl. The Cross-platform usually means that it can run on any computer with any operating
system.

Next MariaDB is the most famous database server and it is developed by MYSQL team. PHP usually
provides a space for web development. PHP is a server-side scripting language. And the last Perl is a
programming language and is used to develop a web application.

23
CHAPTER 8

8. DATABASE MODULE

The following are the relations we have designed to manage the database. Here we have followed a
convention of having the table names with tb as a prefix, and the remaining name of the table
represent the description of the data inside that table.A Complete Database and tables detail with
Primary and Foreign Keys, and proper Constraints in fields..

Database Design and RDBMS

The general theme behind database design is to handle information as on integrated whole. There is
none of the 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. The general objective is to make information access easy, quick, inexpensive and flexible
for the user. In database design of this project several objectives were considered.

• Controlled redundancy: Redundant data occupies space and therefore is wasteful. If versions
of the same data are in different phase of updating, the system gives conflict information. A
unique aspect of database design is strong a data only once, which control redundancy and
improves system performance.

• Ease of learning and use: A major feature of user-friendly database package is how easy it to
learn and use. Related to this point is that a database can be modified without interfering with
established way of using data.

• Data independence: An important database objective is changing hardware and store


procedures or adding new data without having to rewrite application programs.

• Performance: This objective emphasizes response time to inquiries suitable to use of the data.
How satisfactory the response time is depends on the nature of the user database dialogue.

24
Data table:

Admin Table:

25
Category Table:

Place Table:

26
Location Table:

City Table:

27
Feedback Table:

Newsletter Table:

28
Rating Table:

29
8.2 BACK-END DESIGN PROJECT (SNAPSHOT)

Admin Data:

Add Category:

30
View Category:

Add Location:

31
View Location:

Add Place:

32
View Place:

33
Add City:

View City:

34
8.3 OUTPUT DESIGN (SNAPSHOT)

Home

35
Choose Location
When we click on the Choose Location fiels's dropdown list, A list is displayed which contains
various locations that the users can visit.

Choose City
When we click on the Choose Location fiels's dropdown list, A list is displayed which contains
various cities that the users can visit. These cities are displayed according to selected location.

Search Button
There is a search button below the dropdown fields. When user selects the location and then selects
the city according the selected location, he/she the click on the search button. After this he/she is able
to find the things that they can visit in the selected location and city.
E.g. If user selected Amritsar in the Punjab, they are provided with the information of the places that
they can visit in Amritsar like Temples, Museums etc.

36
Search places

Now, suppose user has selected Museum, then name and address of various Museums that are in
Amritsar are displayed with read more button.

The user can select a particular Museum and can get the full information about it like address,
description, entry fee, timing by clicking on Read More button.Moreover, users are able to see the
gallery of that place and can see the map also and can also rate the places.

37
38
Gallery
After clicking on the gallery button, we can see full gallery of the find places project. We can see
various images of the various places that are added to the project.

39
About us
When we click on the about button, the information about the project developers is displayed and the
page contains the welcome part, slider and footer.

40
Feedback

After clicking on the feedback button, a feedback form is displayed. This form is basically for the
people who visit the site and after visiting the site they can give feedback.

41
CHAPTER 9

9.1CODING

9.1.1 Index.php

<!DOCTYPE html>
<head>
<title>Travel Tours Travel Category </title>
<script>
addEventListener("load", function () {
setTimeout(hideURLbar, 5);
}, false);
function hideURLbar() {
window.scrollTo(0, 1);
}
</script>
<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/style.css" type="text/css" media="all" />
<link href="css/font-awesome.css" rel="stylesheet">
<!-- Font-Awesome-Icons-CSS -->
<link href="http://fonts.googleapis.com/css?family=Pacifico&amp;subset=cyrillic,latin-
ext,vietnamese" rel="stylesheet">
<link href="http://fonts.googleapis.com/css?family=Amaranth:400,400i,700,700i" rel="stylesheet">
<link
href="http://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i,800,8
00i" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#state').on('change',function(){
var stateID = $(this).val();
//alert(stateID);
42
if(stateID){
$.ajax({
type:'POST',
url:'state_city.php',
data:'loc_id='+stateID,
success:function(html){
$('#city').html(html);
}
});
}else{
$('#city').html('<option value="">Select state first</option>');
}
});
});
</script>
<style>
center a {
padding:8px 16px;
border:1px solid #ccc;
color:#333;
font-weight:bold;
}
</style>
</head>
<body>
<div class="header-w3l">
<div class="nav-agile">
<nav class="navbar navbar-default">
<div class="navbar-header logo-w3layouts">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-
example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
43
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<h1>
<a href="index.php">Find Places</a>
</h1>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<div class="w3l-navtop">
<ul class="nav navbar-nav navbar-right">
<li>
<a href="index.php">Home</a>
</li>
<li>
<a href="about.php">About</a>
</li>
<li>
<a href="gallery.php" class="active">Gallery</a>
</li>
<li>
<a href="Feedback.php">Feedback</a>
</li>
</ul>
</div>
<div class="clearfix"> </div>
</div>
</nav>
<div class="clearfix"> </div>
</div>
</div>
<div class="w3l_banner_info">
44
<div class="slider">
<div class="callbacks_container">
<ul class="rslides" id="slider3">
<li>
<div class="slider-img-3">
<div class="slider_banner_info">
<h4>
<span>Explore</span> the Distant Corners of the
<span>World</span>
</h4>
<p>Go, fly, roam, travel, voyage, explore, journey, discover, adventure.</p>
<div class="readmore-w3-agileits">
<div class="row">
<form action="searchplaces.php" method="post" class="contact-block-left">
<div class="col-sm-6">
<select name="location" class="form-control" id="state" required>
<option value="">Choose Location</option>
<?php
error_reporting('E_ALL ^ E_NOTICE');
include('config.php');
$select_loc=mysqli_query($con,"select * from location ");
$i=1;
while($fetchLoc=mysqli_fetch_object($select_loc))
{
?>
<option value="<?php echo $fetchLoc->loc_id; ?>"><?php echo ucwords($fetchLoc-
>loc_name);?></option>
<?php
$i++;
}
?>
<br />
45
</select>
</div>
<div class="col-sm-6">
<div class="clearfix"> </div>
<select name="city" class="form-control " id="city" required>
<option value="">Choose City</option>
</select>
</div>

<br />
<input type="submit" name="search" value="Search" />
</form>
</div>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="trips-section">
<div class="container">
<h3 class="title">Welcome to Our Find Places Portal</h3>
<div class="col-xs-3 exce-grid1-mmstyle">
<?php
if(isset($_POST['search']))
{
$location=$_POST['location'];
$city=$_POST['city'];
$select=mysqli_query($con,"select cat_name from places left join category on
places.category=category.cat_id where city='$city'");
46
$count=mysqli_num_rows($select);
if($count>0)
{
?>
<div class="grid-ec1" style="height:400px;border:solid red 2px;">
<h3>Categories</h3>
<?php
while($fetchcat=mysqli_fetch_object($select)){
?>
<h4>
<i class="fa fa-map-marker"></i><sub><a href="places.php?cat_name=<?php echo $fetchcat-
>category;?>&city=<?php echo $city; ?>">
<?php echo $fetchcat->category;?></a></sub></h4>
<?php
}
}
}else{
}?>
</div>
</div>
<?php
$catname=$_GET['cat_name'];
$city=$_GET['city'];
if(!$_GET['cat_name']){
$record_per_page = 9;
$page = '';
if(isset($_GET["page"]))
{
$page = $_GET["page"];
}
else
{
47
$page = 1;
}
$start_from = ($page-1)*$record_per_page;
$select_places=mysqli_query($con,"select * from places LIMIT $start_from, $record_per_page ");
$count=mysqli_num_rows($select_places);
while($fetch=mysqli_fetch_object($select_places))
{
$places=explode(',',$fetch->image);
?>
<div class="col-xs-4 exce-grid1-mmstyle" style="height:630px;width:430px;margin-top:20px;">
<img src="admin/image/<?php echo $places[0];?>" alt="" height="200px" width="150px">
<div class="grid-ec1">
<h3><?php echo ucwords($fetch->title); ?></h3>
<h4>
<i class="fa fa-map-marker"></i><?php echo $fetch->address; ?></h4>
<br >
<br>
<?php
$select_rating=mysqli_query($con,"select * from rating where place_id='$fetch->place_id' ");
$count=mysqli_num_rows($select_rating);
$fetch_rating=mysqli_fetch_object($select_rating);
$rating_count=$fetch_rating->rating;
//print_r($rating_count);
$total_php_rating=$rating_count/$count;
echo "<h5 style='color:red;''>Average Rating: ";
for($i=1;$i<=$total_php_rating;$i++){
?>
<img src="images/yellow-star.png" style="height:30px;width:30px;" alt="rating" >
<?php
}
echo "</h5>";
?>
48
<div class="readmore-w3-agileits about-read">
<a href="single.php?id=<?php echo $fetch->place_id;?>" >Read More</a>
</div>
</div>
</div>
<?php
}
}
else
{
?>
<div class="clearfix"> </div>
</div>
</div>
<?php
$select_places=mysqli_query($con,"select * from places where category='$catname' AND
city_id='$city' limit 12 ");
$count=mysqli_num_rows($select_places);
while($fetch=mysqli_fetch_object($select_places))
{
$places=explode(',',$fetch->image);
?>
<div class="col-xs-4 exce-grid1-mmstyle" style="margin-top:20px;">
<img src="admin/image/<?php echo $places[0];?>" alt="" height="200px" width="150px">
<div class="grid-ec1">
<h3><?php echo ucwords($fetch->title); ?></h3>
<h4>
<i class="fa fa-map-marker"></i><?php echo $fetch->address; ?></h4>
<br>
<div class="readmore-w3-agileits about-read">
<a href="single.php?id=<?php echo $fetch->places_id;?>" >Read More</a>
</div>
49
</div>
</div>
<?php
}
}
?>
<div class="clearfix"> </div>
</div>
</div><center>
<?php
$page_query = "SELECT * FROM places ORDER BY place_id DESC";
$page_result = mysqli_query($con, $page_query);
$total_records = mysqli_num_rows($page_result);
$total_pages = ceil($total_records/$record_per_page);
$start_loop = $page;
$difference = $total_pages - $page;
if($difference < 1)
{
$start_loop = $total_pages - 1;
}
$end_loop = $start_loop+2;
if($page > 1)
{
echo "<a href='index.php?page=1'>First</a>";
echo "<a href='index.php?page=".($page - 1)."'><<</a>";
}
for($i=$start_loop; $i<$end_loop; $i++)
{
echo "<a href='index.php?page=".$i."'>".$i."</a>";
}
if($page <= $end_loop)
{
50
echo "<a href='index.php?page=".($page + 1)."'>>></a>";
echo "<a href='index.php?page=".$total_pages."'>Last</a>";
}
?>
</center>
<div class="testimonials">
<div class="container">
<h3 class="title">What Out Clients Says</h3>
<div class="w3_testimonials_grids">
<section class="slider">
<div class="flexslider">
<ul class="slides">
<?php
$select_feedback=mysqli_query($con,"select *from feedback");
$count=mysqli_num_rows($select_feedback);
while($fetch=mysqli_fetch_object($select_feedback)){
?>
<li>
<div class="w3_testimonials_grid">
<h4>
<i>
<?php echo $fetch->suggestion;?>
</i>
</h4>
<h5><?php echo ucwords($fetch->name); ?></h5>
</div>
</li>
<?php
}
?>
</ul>
</div>
51
</section>
</div>
</div>
</div>
<?php
include('config.php');
if(isset($_POST['subscribe']))
{
$email=$_POST['email'];
$insert=mysqli_query($con,"insert into newsletter(email) values('$email')");
if($insert)
{
header("location:newsletter.php");
}
else
{
echo "Record Not Inserted".mysqli_error($con);
}
}
?>
<?php
include('footer.php');
?>

Feedback.php
<?php
error_reporting('E_ALL ^ E_NOTICE');
include('config.php');
if(isset($_POST['submit']))
{
$name=$_POST['name'];
52
$email=$_POST['email'];
$suggestion=$_POST['suggestion'];
$insert=mysqli_query($con,"insert into feedback(name,email,suggestion)
values('$name','$email','$suggestion')");
if($insert)
{
header("location:feedback.php");
}
else
{
echo "Record Not Inserted".mysqli_error($con);
}
}
?>
<?php
include('header.php');
?>
<div class="inner_banner_agile">
</div>
<div class="services-breadcrumb">
<div class="inner_breadcrumb">
<ul class="short_ls">
<li>
<a href="index.php">Home</a>
<span>/ /</span>
</li>
<li>Contact</li>
</ul>
</div>
</div>
<div class="contact">
<div class="container">
53
<h3 class="title"> Your Feedback Is Valuable For Us </h3>
<div class="contact-block-left">
<form action="#" method="post">
<input type="text" placeholder="Name" required="" name="name">
<input type="email" class="email" placeholder="Email" name="email" required="">
<textarea placeholder="Suggestion" name="suggestion" required=""></textarea>
<input type="submit" value="Submit" name="submit">
</form>
</div>
<div class="contact-seco">
<div class="col-md-5 col-xs-5 contact-left-w3ls">
<h3>Get In Touch</h3>
<div class="visit">
<div class="col-md-2 col-sm-2 col-xs-2 contact-icon-wthree">
<i class="" aria-hidden="true"></i></div>
<div class="clearfix"></div>
</div>
<div class="mail-w3">
<div class="col-md-2 col-sm-2 col-xs-2 contact-icon-wthree">
<i class="fa fa-envelope-o" aria-hidden="true"></i>
</div>
<div class="col-md-10 col-sm-10 col-xs-10 contact-text-agileinf0">
<h4>Mail us</h4>
<p>
<a href="mailto:hardeepsus@gmail.com">findplaces@gmail.com</a>
</p>
</div>
<div class="clearfix"></div>
</div>
<div class="call">
<div class="col-md-2 col-sm-2 col-xs-2 contact-icon-wthree">
<i class="fa fa-phone" aria-hidden="true"></i>
54
</div>
<div class="col-md-10 col-sm-10 col-xs-10 contact-text-agileinf0">
<h4>Call us</h4>
<p>+91 9878093799</p>
</div>
<div class="clearfix"></div>
</div>
</div>
<div class="col-md-6 col-xs-6 social-w3">
<div class="main">
<ul>
<li class="f1">
<a href="#" class="social-contact-w3">
<i class="fa fa-facebook f1" aria-hidden="true"></i>
<p>Facebook</p>
</a>
</li>
<li class="f3">
<a href="#" class="social-contact-w3">
<i class="fa fa-twitter f3" aria-hidden="true"></i>
<p>Twitter</p>
</a>
</li>
<li class="f4">
<a href="#" class="social-contact-w3">
<i class="fa fa-linkedin f5" aria-hidden="true"></i>
<p>Linkedin</p>
</a>
</li>
</ul>
</div>
</div>
55
<div class="clearfix"> </div>
</div>
</div>
</div>
<div class="footer">
<div class="container">
<div class="footer-row w3layouts-agile">
<div class="col-md-4 col-xs-4 footer-grids">
<h2>More Information</h2>
<p class="footer-one-w3ls">The objective of the “Find Places' is to provide a system which handles
the information of the various places and updating information according to the requirements.It takes
care of people’s needs. It makes easy to find places for visitors and visit anywhere. </p>
</div>
<div class="col-md-5 col-xs-5 footer-grids w3l-agileits">
<h3>Newsletter</h3>
<p>Recieve our latest news straight to your inbox</p>
<form action="#" method="post">
<input type="email" placeholder="Email" name="email" required="">
<input type="submit" value="Subscribe" />
</form>
</div>
<div class="col-md-3 col-xs-3 footer-grids social-agileits">
<h3>Connect With Us</h3>
<div class="social-w3l">
<ul>
<li>
<a href="#" class="wthree_facebook">
<i class="fa fa-facebook" aria-hidden="true"></i>
</a>
</li>
<li>
<a href="#" class="wthree_twitter">
56
<i class="fa fa-twitter" aria-hidden="true"></i>
</a>
</li>

</ul>
</div>
<div class="social-w3r">
<ul>
<li>
<a href="#">Facebook</a>
</li>
<li>
<a href="https://twitter.com/Hardeep68924146">Twitter</a>
</li>
</ul>
</div>
</div>
<div class="clearfix"> </div>
</div>
</div>
</div>
<script src="js/jquery-2.2.3.min.js"></script>
<script src="js/bootstrap.js"></script>
<script src="js/SmoothScroll.min.js"></script>
<script src="js/move-top.js"></script>
<script src="js/easing.js"></script>
<script>
jQuery(document).ready(function ($) {
$(".scroll").click(function (event) {
event.preventDefault();
$('html,body').animate({
scrollTop: $(this.hash).offset().top
57
}, 1000);
});
});
</script>
<script>
$(document).ready(function () {
$().UItoTop({
easingType: 'easeOutQuart'
});
});
</script>
<a href="#" id="toTop" style="display: block;">
<span id="toTopHover" style="opacity: 1;"> </span>
</a>
</body>
</html>

58
SYSTEM TESTING
9.2 Introduction To System Testing

System testing is testing conducted on a complete integrated system to evaluate the system's
compliance with its specified requirements. System testing takes, as its input, all of the integrated
components that have passed integration testing. The purpose of integration testing is to detect any
inconsistencies between the units that are integrated together (called assemblages). System testing
seeks to detect defects both within the "inter-assemblages" and also within the system as a whole. The
actual result is the behavior produced or observed when a component or system is tested.

System testing is performed on the entire system in the context of either functional
requirement specifications (FRS) or system requirement specification (SRS), or both. System testing
tests not only the design, but also the behaviour and even the believed expectations of the customer. It
is also intended to test up to and beyond the bounds defined in the software or hardware requirements
specification

Figure 1: System Testing

9.3 System Testing Process


9.3.1 Test Environment Setup
Create testing environment for the better quality testing.
9.3.1 Create Test Case
59
Generate test case for the testing process.

Figure 2: System Testing Process

9.3.1Create Test Data


Generate the data that is to be tested.
9.3.2Execute Test Case
After the generation of the test case and the test data, test cases are executed.

9.3.3 Defect Reporting


Defects in the system are detected
.
9.3.1Regression Testing
It is carried out to test the side effects of the testing process.

9.3.2Log Defects
Defects are fixed in this step
.
9.3.3 Retest
If the test is not successful then again test is performed.

60
9.4 Types Of System Testing
9.4.1 Performance Testing
Performance Testing is a type of software testing that is carried out to test the speed, scalability,
stability and reliability of the software product or application.
9.4.2 Load Testing
Load Testing is a type of software Testing which is carried out to determine the behavior of a system
or software product under extreme load
9.4.3 Stress Testing

Stress Testing is a type of software testing performed to check the robustness of the system under the
varying loads.
9.4.4 Scalability Testing
Scalability Testing is a type of software testing which is carried out to check the performance of a
software application or system in terms of its capability to scale up or scale down the number of user
request load.

61
9.5 USER ACCEPTANCE TESTING
9.5 Introduction To User Acceptance Testing

User Acceptance Testing (UAT) is a type of testing performed by the end user or the client to
verify/accept the software system before moving the software application to the production
environment. UAT is done in the final phase of testing after functional, integration and system testing
is done. The main purpose of UAT is to validate the end to end business flow. It does NOT focus on
Cosmetic errors, Spelling mistakes or System testing. User Acceptance Testing is carried out in a
separate testing environment with production-like data setup. It is a kind of black box testing where
two or more end-users will be involved. The Full Form of UAT is User Acceptance Testing.

9.6 Prerequisites of User Acceptance Testing


Following are the entry criteria for User Acceptance Testing

 Business Requirements must be available.


 Application Code should be fully developed
 Unit Testing, Integration Testing & System Testing should be completed
 No Showstoppers, High, Medium defects in System Integration Test Phase -
 Only Cosmetic error is acceptable before UAT
 Regression Testing should be completed with no major defects
 All the reported defects should be fixed and tested before UAT
 Traceability matrix for all testing should be completed
 UAT Environment must be ready
 Sign off mail or communication from System Testing Team that the system is ready for UAT
execution

62
9.7 UAT Process
UAT is done by the intended users of the system or software. This type of Software Testing usually
happens at the client location which is known as Beta Testing. Once Entry criteria for UAT are
satisfied, following are the tasks need to be performed by the testers
1. Analysis of business requirements

One of the most important activities in the UAT is to identify and develop test scenarios. These test
scenarios are derived from the following documents:

• Project Charter
• Business Use Cases
• Process Flow Diagrams
• Business Requirements Document(BRD)
• System Requirements Specification(SRS)

1. Creation of UAT test plan


The UAT test plan outlines the strategy that will be used to verify and ensure an application meets its
business requirements. It documents entry and exit criteria for UAT, Test scenarios and test cases
approach and timelines of testing.

Figure 3: User Acceptance Testing


63
1. Identify Test Scenarios
Identify the test scenarios with respect to high-level business process and create test cases with clear
test steps. Test Cases should sufficiently cover most of the UAT scenarios. Business Use cases are
input for creating the test cases.

2. Create UAT Test Cases


It is best advised to use live data for UAT. Data should be scrambled for privacy and security reasons.
Tester should be familiar with the database flow.

3. Preparation of Test Data(Production like Data)


Execute test cases and report bugs if any. Re-test bugs once fixed. Test management can be used for
execution.

4.Run the Test cases


Business Analysts or UAT Testers needs to send a sign off mail after the UAT testing. After sign-
off, the product is good to go for production. Deliverables for UAT testing are Test Plan, UAT
Scenarios and Test Cases, Test Results and Defect Log.

64
Chapter-10
DEPLOYMENT
10.1 Introduction To Deployment

Software deployment includes all of the steps, processes, and activities that are required to make a
software system or update available to its intended users. Today, most IT organizations and software
developers deploy software updates, patches and new applications with a combination of manual and
automated processes. Some of the most common activities of software deployment include software
release, installation, testing, deployment, and performance monitoring. Software development teams
have innovated heavily over the past two decades, creating new paradigms and working methods for
software delivery that are designed to meet the changing demands of consumers in an increasingly
connected world. In particular, software developers have created workflows that enable faster and
more frequent deployment of software updates to the production environment where they can be
accessed by users. While many development teams still choose to host applications using on-premises
IT infrastructure, cloud service providers like Amazon Web Services (AWS), Google Cloud Platform
and Microsoft Azure now offer IT Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS)
products that help developers deploy applications into live environments without the additional
financial and administrative burden of managing their own storage and virtualization servers.

65
10.2 Deployment Methodologies

10.1.1 Developers

Developers is a methodology and a set of best practices for software development whose primary
goals are to shorten delivery times for new software updates while maintaining high quality. In the
Developers framework, there are seven steps in the software development process:

1. Coding
2. Building
3. Testing
4. Packaging
5. Releasing
6. Configuring
7. Monitoring

Developers usually incorporates a framework known as Continuous Integration (CI) where new
code is integrated into a shared repository by working teams on a regular basis, sometimes even
several times per day. Newly integrated code can be tested through an automated build process to
support early bug detection and removal, helping to ensure that releases contain only quality code
with few or no errors. Continuous Deployment (CD) describes a software release strategy where
new code passes through a battery of automated tests before being automatically released into the
production environment where users can interact with it. Continuous deployment works best for
software development teams that have invested heavily in automated testing that helps ensure new
code is production-ready as it is developed.

66
10.3 Deployment Process
Every organization must develop its own process for software deployment, either basing it on an
existing framework of best practices or customizing a process that meets relevant business objectives.
Software deployment can be summarized in three general phases: preparation, testing and the
deployment itself.
10.1.1 Preparation

In the preparation stage, developers must gather all of the code that will be deployed along with any
other libraries, configuration files, or resources needed for the application to function. Together, these
items can be packaged as a single software release. Developers should also verify that the host server is
correctly configured and running smoothly.
10.1.2 Testing
Before an update can be pushed to the live environment, it should be deployed to a test server where it
can be subjected to a pre-configured set of automated tests. Developers should review the results and
correct any bugs or errors before deploying the update to the live environment.
10.1.3 Deployment
Once an update has been fully tested, it can be deployed to the live environment. Developers may run a
set of scripts to update relevant databases before changes can go live. The final step is to check for
bugs or errors that occur on the live server to ensure the best possible customer experience for users
interacting with the new update.

67
CHAPTER 11

11. CONCLUSION AND FUTURE SCOPE

11.1 CONCLUSION

This is to conclude that the project that I undertook was worked upon with a sincere effort. Most of the
requirements have been fulfilled up to the mark and the requirements which have been remaining, can
be completed with a short extension.

The relational database approach of developing the system has helped in:

• Automation of the entire system improves the efficiency

• It provides a friendly graphical user interface which proves to be better when compared to the
existing system.

• It gives appropriate access to the authorized users depending on their permissions.

• It effectively overcomes the delay in communications.

• Updating of information becomes so easier.

68
11.2 FUTURE SCOPE

Future scope mainly includes


The system has been developed with much care that it is free of errors and at the same time it is
efficient and less time consuming. The important thing is that the system is robust. Avoid malfunction
from outsiders .It goes through all phases of software development cycle. So product is accurate. Also
provision is provided for future developments in the system.

Completion of the development process resulted in a software package that provide user friendly
environment which is very easy to work with, even for people with very little knowledge of computer.
Management of various tasks is incorporated in the package and will deliver the required information
in a very easy to use and easy to access manner. This package will provide accuracy, efficiency, speed
and easiness to the end user. Paper work will be subjugated and come to an appropriate level.
This website is basically for people who want to visit the famous places in the interested cities that
they never have seen before. The users of the website will be all those people who want to find out
places for wandering, save the time and money of the visitors as they can search for the interested
places before they actually go. Parks, temples etc. in the interested cities before they actually go there.
So, the objective of this website to save the time and money of the visitors as they can search for the
interested places before they actually go.
The idea of this project is very good so the future scope is that it can be applied to find the places all
over the world rather than a single country.

69
CHAPTER 12
12. BIBLIOGRAPHY
https://getbootstrap.com
https://www.w3schools.com
https://www.tutorialspoint.com/php
https://www.tripadvisor.com
https://www.lonelyplanet.com
https://roadtrippers.com/

70

You might also like