You are on page 1of 67

ONLINE GAS BOOKING SYSTEM

In partial fulfillment for the award of the degree of

BACHELOR OF COMPUTER APPLICATION

Submitted by

THAMIZHARASI V (212105079)
NARMADHA R (212105074)
DHIVYA P (212105070)

Under the Guidance of


Ms. A.RESHMA MCA.,
ASSISTANT PROFESSOR IN COMPUTER SCIENCE

Dhanalakshmi Srinivasan Arts and Science (Co-Education) College


Mamallapuram – 603104

UNIVERSITY OF MADRAS

APRIL - 2024
BONAFIDE CERTIFICATE

Certified that this report titled “ONLINE GAS BOOKING SYSTEM” is a bonafide

record of the project work done by Selvi.V.THAMIZHARASI (212105079),

Selvi.R.NARMADHA (212105074), Selvi.P.DHIVYA (212105070), under our supervision and

guidance, towards partial fulfillment of the requirement for the award of degree Bachelor of

Computer Application of Dhanalakshmi Srinivasan Arts and Science (Co-Education) College.

SIGNATURE OF THE GUIDE SIGNATURE OF THE HOD

Submitted for the Madras University Mini project viva voce examination held
on………………….

INTERNAL EXAMINAR EXTERNAL EXAMINAR


ACKNOWLEDGEMENT

It expresses my sincere and profound thanks to our most respected the Chairman
Thiru.A. SRINIVASAN for providing me a congenial academic environment.

My heartfelt thanks to the Principal Dr. C. MADHANPERIYASAMY for giving


us the environment and motivate us to do project.

I would like to express my profound gratitude to Head of the Department


Mrs.R.KANMANI.

My sincere thanks to my guide Ms.A.RESHMA who gave us all the manual inputs
and also guided us with dedication for the smooth completion of the project.

I also record my thanks and gratitude to all the Faculty Member of the Department
of Computer Application of Dhanalakshmi Srinivasan Arts and Science (Co-Education)
College.

And last but not least my profound thanks to my parents for their dedicated support
and above all my ardent thanks to them, almighty who has showered his blessing on me for
they, successful completion of the project.

SIGNATURE OF CANDIDATES

1.
(THAMIZHARASI V)

2.
(NARMADHA R)

3.
(DHIVYA P)
DECLARATION

We hereby declare that the project titled “ONLINE GAS BOOKING SYSTEM” to

University of Madras in partial fulfilment of the requirement for the award of Bachelor of

Computer Application is a record of original work done by us during the field placement in the

academic year 2021-2024.

THAMIZHARASI V (212105079)
NARMADHA R (212105074)
DHIVYA P (212105070)

Place:

Date:
ABSTRACT

To ensure a simple and secure environment for the customer and the agency we are making
the ‘Online Gas Booking System’. Through this system, we are solving the customers’ problems
in a lot of way like to book their gas cylinder from home and put new connection request without
travelling to the agency and stand in a queue. On the other hand, it also makes easier for the
agency to check the connection request and booking request.

It also prevents any error while registering the gas as if it’s done manually there is always a
chance of omission and oversight. It also helps the agency to move from a manual system of
registering the data to storing it online which digitized the agency and reduces their overall
carbon footprint.

It will avoid the agency from spending a huge amount of their budget in maintaining the
manual records and updating them from time to time.

All the operation will become easier as all information that is provided from the system is
very reliable and high amount data space is used.

The determination of system is to provide the user with simple and secure software which is
understandable, easier to store and search the information.
TABLE OF CONTENTS

S NO TITLE PAGE
NO
CHAPTER 1 INTRODUCTION 1
1.1 EXISTING SYSTEM
1.2 PROPOSED SYSTEM 2
1.3 MODULE DESCRIPTION 3
CHAPTER 2 LITERATURE SURVEY 5
CHAPTER 3 THEME OF PROJECT 6
3.1 ENVIRONMENTAL DETAILS 6
3.1.1 SOFTWARE SPECIFICATIONS 6
3.1.2 HARDWARE SPECIFICATIONS 6
CHAPTER 4 METHODOLOGY 7
4.1 DATA FLOW DIAGRAM 8
4.2 UML DIAGRAM 11
4.3 ER DIAGRAM 12
CHAPTER 5 ARCHITECTURE 15
5.1 SOFTWARE DESCRIPTION 16
CHAPTER 6 IMPLEMENTATION 24
6.1 SAMPLE CODE 25
CHAPTER 7 TESTING 46
7.1 UNIT TESTING 47
7.2 INTERGRATION TESTING 48
7.3 VALIDATION TESTING 48
CHAPTER 8 MAINTENANCE 49
CHAPTER 9 SCREENSHOTS 51
CHAPTER 10 CONCLUSION 59
CHAPTER 11 FUTURE ENHANCEMENT 60
CHAPTER 12 REFERENCES 61
CHAPTER 1

INTRODUCTION

The Online Gas Booking System has been developed to solve the problems prevailing
in the practicing manual system. This system is designed for particular need of the company to
carry out operation in a smooth and effective manner. The Online Gas Booking System can lead
to error free, secure, reliable and fast management system. It can assist the user to concentrate
other activities rather than to concentrate on record keeping. Thus it helps organization in better
utilization of resources.
1.1 EXISTING SYSTEM

The existing gas booking system relies heavily on manual processes, such as phone calls
or in-person visits to booking centers, leading to inefficiencies and delays. Customers often face
challenges in booking gas cylinders due to limited availability of slots and long waiting times.
Additionally, the system lacks transparency and accessibility, making it difficult for users to track
their bookings or make changes to their orders. Administrators also encounter difficulties in
managing inventory and scheduling deliveries, leading to inventory shortages or excesses. Overall,
the existing system is outdated and fails to meet the demands of modern users for convenience and
efficiency.

One major disadvantage of the existing system is its reliance on manual processes, leading
to inefficiencies, delays, and errors. Customers often experience difficulties in booking gas
cylinders due to limited availability of slots and long waiting times. Additionally, the lack of
transparency and accessibility makes it challenging for users to track their bookings or make
changes to their orders. Administrators also face challenges in managing inventory and scheduling
deliveries, leading to inefficiencies and inventory shortages. Overall, the existing system fails to
meet the demands of modern users for convenience, efficiency, and reliability.

1
1.2 PROPOSED SYSTEM

The proposed Online Gas Booking System aims to address the shortcomings of the existing
system by introducing a streamlined and automated booking process. Through an online platform,
customers can easily book gas cylinders from the comfort of their homes or offices, eliminating
the need for manual interventions. The system will feature a user-friendly interface that allows
customers to view available slots, track their bookings in real-time, and make changes or
cancellations as needed. Administrators will have access to a centralized dashboard for managing
inventory, scheduling deliveries, and monitoring system performance. By leveraging modern
technologies such as PHP and MySQL, the proposed system will offer a seamless and efficient
booking experience for both customers and administrators.

Advantages of proposed System

• User is not restricted to just booking through phone.


• User can order anytime during a day online.
• It often happens in phone system that the line gets busy and user have to wait and
keep trying for booking.
• There is no need for users and agency to maintain gas records manually. They can
view the details through their account.
• It is convenient for users to use the website and book the cylinders according to
their needs.
• Payment can also be done online there by providing a more flexible approach.
• He may also inform customers about the changes in rules by putting up
notification in the system
• The system can be customized according to different rules and regulations by
admin as required.
• Hence the system saves time, efforts and cost.

2
1.3 MODULE DESCRIPTION

An online gas booking system typically consists of several modules that work together to
facilitate the booking process efficiently. Here's a breakdown of the key modules commonly found
in such systems:

MODULES:

• Customer Module: Customer first fill the signup form then login into their

panel and do the following activities

• Dashboard: This is the Welcome page for customer.

• New Connection : In this section customer send the request for LPG

connection to the organization

• Book Cylinder: When organization provides connection number then

customer can book his/her cylinder.

• Booking History: In this section, customer can view the history of gas

booking.

• Search: In this section, customer can search gas booking records by entering

booking number.

• Customer can also update his profile, change the password and recover the

password.

Admin Module

Admin is the super user of the website who can manage everything on the
website.Admin can log in through the login page.

• Dashboard: In this section, admin can see all detail in brief like the total new
connection, total new connection, total on hold connection, total approved
connection, total rejected connection, total new booking, total confirmed

3
• Delivery Staff: In this section, admin can mange staff (add/update).
• Reg Users: In this section, admin can view the detail of registered users.Connection: In
this section, admin can view the connection request admin also has the right to change
connection status according to the current status and add his/her remarks.
• Booking: In this section, admin can view booking request and assign to delivery staff or
cancel the booking.
• Assign Booking: In this section, admin can change the status of booking according to
current status and add his/her remarks.
• Reports: In this section, admin can view booking and connection request in a particular
periods.
• Search: In this section, admin can search booking and connection details with the help of
booking number and connection number respectively.Admin can also update his profile,
change the password and recover the password.

4
CHAPTER 2

LITERATURE SURVEY

1. 1.Title: IOT-Based Gas Cylinder Monitoring and Booking System


Authors: Patel, R., Shah, S.
Summary: This paper presents an IoT-based gas cylinder monitoring and booking
system. It discusses the integration of IoT devices with gas cylinders to track usage
and automate the booking process when gas levels are low. The system aims to
enhance user convenience and optimize gas distribution processes.
2. Title: Development of Online Reservation and Billing System for a Gas Delivery Service
Authors: Garcia, M., Lopez, R.
Summary: This paper describes the development of an online reservation and billing
system specifically designed for a gas delivery service. It covers functionalities such as
customer registration, booking management, and billing integration. The system aims
to improve customer experience and streamline business operations.
3. Title: Security Issues and Solutions in Online Booking Systems
Authors: Khan, S., Ali, Z.
Summary: This paper explores security issues and solutions in online booking
systems. It discusses common security threats such as data breaches and unauthorized
access, as well as strategies for mitigating these risks through encryption, authentication
mechanisms, and secure coding practices.
4. Title: Usability Evaluation of Online Booking Systems: A Systematic Review
Authors: Wang, L., Zhang, Q.
Summary: This paper presents a systematic review of usability evaluations conducted
on various online booking systems. It analyzes factors such as user interface design,
navigation efficiency, and user satisfaction. The review aims to identify common
usability issues and best practices for designing user-friendly booking systems.

5
CHAPTER 3

THEME OF THE PROJECT

3.1 ENVIRONMENTAL DETAILS

3.1.1 SOFTWARE SPECIFICATION

• Technology: Python PHP Triad (PHP, MySQL, Apache, and PHPMyAdmin)

• IDE: visual studio code

• Server-Side Technologies: PHP

• Data Base Server: MYSQL

• Operating System: Microsoft Windows 10/Linux

3.1.2 HARDWARE SPECIFICATION

• Processor: Pentium-iv and above

• RAM: 256 MB

• Hard Disk: 4.3GB

• Floppy Disk: 1.44 MB

• CD Drive

• Monitor-15” Color Monitor

6
CHAPTER 4

METHODOLOGY

4.1 DATA FLOW DIAGRAMS

A two-dimensional diagram explains how data is processed and transferred in a system.


The graphical depiction identifies each source of data and how it interacts with other data sources
to reach a common output. Individuals seeking to draft a data flow diagram must identify external
inputs and outputs, determine how the inputs and outputs relate to each other, and explain with
graphics how these connections relate and what they result in. This type of diagram helps
business development and design teams visualize how data is processed and identify or improve
certain aspects.
A data flow diagram (DFD) or bubble chart is a graphical tool for structure analysis. DFD
models a system by using external entities from which data flows to a process, which transforms
the data and creates output data flows which go to other processes or external entities or files.
Data in files may also flow to processes as inputs. DFDs can be hierarchically organized, which
helps in partitioning and analyzing large systems.

Data flow diagram (DFD) is used to show how data flows through the system and the
processes that transform the input data into output. Data flow diagrams are a way of expressing
system requirements in a graphical manner. DFD represents one of the most ingenious tools used
for structured analysis

BASIC DFD SYMBOLS

Function Symbol:

A function is represented using a circle. This symbol is called a process or a bubble.


Bubbles are annotated with the names of corresponding functions.

7
External Entity Symbol:

An external entity such as a user, project manager etc. is represented by a rectangle. The
external entities are essentially those physical entities external to the application system, which
interact with the system by inputting data to the system or by consuming the data produced by
the system. In addition to the human users the external entity symbols can be used to represent
external hardware and software such as application software.

Data Flow Symbol:

A directed arc or an arrow is used as a Data Flow Symbol. This represents the data flow
occurring between two processes or between an external entity and a process; in direction of the
Data Flow Arrow. Data flow Symbols are annotated with corresponding data names.

Data Store Symbol:

A Data Store represents a logical file; it is represented using two parallel lines. A
logical file can represent either Data Store Symbol, which can represent either data structure or a
physical file on disk. Each data store is connected to a process by means of a Data Flow Symbol.
The direction of the Data.

Flow Arrow shows whether data is being read from or written into a Data Store. An
arrow flowing in or out of a data store implicitly represents the entire area of the Data Store and
hence arrows connecting to a data store need not be annotated with the names of the corresponding
data items.

8
9
10
4.2 UML DIAGRAMS

USE CASE DIAGRAM

A use case diagram at its simplest is a representation of a user's interaction with the
system that shows the relationship between the user and the different use cases in which the user
is involved. In this context, a "system" is something being developed or operated, such as a web
site. The "actors" are people or entities operating under defined roles within the system. A use case
is a methodology used in system analysis to identify, clarify, and organize system requirements. In
this context, the term "system" refers to something being developed or operated, such as a mail-
order product sales and service Web site. Use case diagrams are employed in UML (Unified
Modeling Language), a standard notation for the modeling of real-world objects and systems.
There are a number of benefits with having a use case diagram over similar diagrams such as
flowcharts.

4.3 ER DIAGRAM

ENTITY RELATIONSHIP DIAGRAM

The entity relationship model is a high-level data model. It is based on a perception of a


real world that consists of a collection of basic objects, called entities, and of relationship among
these objects. It was developed to facilitate database design by allowing specification of an
enterprise schema, which represent the overall logical structure of a database.

Entity: An entity is an object that has its existence in the real world. It includes all those
―things‖ about which data is collected. An entity may be a tangible object such as a student, a
place or a part. It may also be non-tangible such as an event, a job title or a customer account. For
example, if we say that a customer buys goods, it means customer and goods are entities.
Diagrammatically, entities are represented in rectangles.

An Entity Set: It is a set of entities of the same type that share the same properties, or attributes.
The set of all persons who are customers at a given bank, example, can be defined as the entity set
customer.

11
Attributes: Attributes are units that describe the characteristics or properties of entities. In a
database, entities are represented by tables and attributes by columns. For example, a customer
entity might have numerous attributes such as code, name and addresses. Similarly, the goods
entity may have attributes like code and price. They are drawn in elliptical shapes along with the
entity rectangles.

12
13
14
CHAPTER 5

ARCHITECTURE

5.1 SOFTWARE DESCRIPTION

A system architecture or systems architecture is the conceptual model that defines the
structure, behavior, and more views of a system. An architecture description is a formal
description and representation of a system, organized in a way that supports reasoning about the
structures and behaviors of the system. System architecture can comprise system components,
the externally visible properties of those components, the relationships (e.g. the behavior)
between them. It can provide a plan from which products can be procured, and systems
developed, that will work together to implement the overall system. There have been efforts to
formalize languages to describe system architecture, collectively these are called architecture
description languages (ADLs).

Various organizations define systems architecture in different ways, including:

• An allocated arrangement of physical elements which provides the design solution for a
consumer product or life-cycle process intended to satisfy the requirements of the
functional architecture and the requirements baseline.

• Architecture comprises the most important, pervasive, top-level, strategic inventions,


decisions, and their associated rationales about the overall structure (i.e., essential elements
and their relationships) and associated characteristics and behavior.

• If documented, it may include information such as a detailed inventory of current hardware,


software and networking capabilities; a description of long-range plans and priorities for
future purchases, and a plan for upgrading and/or replacing dated equipment and software

• The composite of the design architectures for products and their life-cycle
processes.

15
FRONTEND

PHP: Hypertext Preprocessor (the name is a recursive acronym) is a widely used, general-
purpose scripting language that was originally designed for web development to produce
dynamic web pages. For this purpose, PHP code is embedded into the HTML source document
and interpreted by a web server with a PHP processor module, which generates the web page
document. As a general-purpose programming language, PHP code is processed by an interpreter
application in command-line mode performing desired operating system operations and
producing program output on its standard output channel.

It may also function as a graphical application. PHP is available as a processor for most
modern web servers and as standalone interpreter on most operating systems and computing
platforms. PHP was originally created by Rasmus Lerdorf in 1995 and has been in continuous
development ever since. The main implementation of PHP is now produced by The PHP Group
and serves as the de facto standard for PHP as there is no formal specification. PHP is free
software released under the PHP License, which is incompatible with the GNU General Public
License (GPL) because restrictions exist regarding the use of the term PHP.

Hypertext refers to files linked together using hyperlinks, such as HTML (Hypertext
Markup Language) files. Preprocessing is executing instructions that modify the output. Below
is a demonstration of the difference between HTML and PHP files.

Accessing a PHP Page

16
• Your browser sends a request to that web page's server for the PHP file you wish
to view.

• The web server calls PHP to interpret and perform the operations called for in the
PHP script.

• The web server sends the output of the PHP program back to your computer.

• Your browser displays the output appropriately.


Benefit of PHP

Because the server does processing, the output of PHP files changes when its input changes. For
example, most of the pages on the Horticulture site have only two (2) PHP commands:

• Include the header file that defines the links on the left, the banner, and the quick
links at the top.

• Include the footer file that displays the mission statement and Horticulture contact
information.

Because including the files is performed every time the PHP file is accessed, when the
header/footer files change, the new content will be immediately updated. In other words, if you
add a new link, every page that includes the header will immediately display the new link.

Security

About 30% of all vulnerabilities listed on the National Vulnerability Database are linked to
PHP. These vulnerabilities are caused mostly by not following best practice programming rules:
technical security flaws of the language itself or of its core libraries are not frequent (23 in 2008,
about 1% of the total). Recognizing that programmers make mistakes, some languages include
taint checking to detect automatically the lack of input validation which induces many issues. Such
a feature is being developed for PHP, but its inclusion in a release has been rejected several times
in the past. There are advanced protection patches such as Suhosin and Hardening- Patch,
especially designed for Web hosting environments.

PHPIDS adds security to any PHP application to defend against intrusions. PHPIDS detects
attacks based on cross-site scripting (XSS), SQL injection, header injection, directory traversal,
remote file execution, remote file inclusion, and denial-of-service (DoS)

17
Syntax

The PHP interpreter only executes PHP code within its delimiters. Anything outside its
delimiters is not processed by PHP (although non-PHP text is still subject to control structures
described in PHP code). The most common delimiters are <?php to open and ?> to close PHP sections.
<script language="php"> and </script> delimiters are also available, as are the shortened forms
<?or<?= (which is used to echo back a string or variable) and ?> as well as ASP-style short forms <%
or <%= and %>. While short delimiters are used, they make script files less portable as support for
them can be disabled in the PHP configuration, and so they are discouraged. The purpose of all these
delimiters is to separate PHP code from non-PHP code, including HTML.

The first form of delimiters, <?php and ?>, in XHTML and other XML documents, creates
correctly formed XML 'processing instructions'. This means that the resulting mixture of PHP code
and other markup in the server-side file is itself well-formed XML.

18
Variables are prefixed with a dollar symbol, and a type does not need to be specified in
advance. Unlike function and class names, variable names are case sensitive. Both double-quoted
("") and here-doc strings provide the ability to interpolate a variable's value into the string. PHP
treats newlines as whitespace in the manner of a free-form language (except when inside string
quotes), and statements are terminated by a semicolon. PHP has three types of comment syntax:
/* */ marks block and inline comments; // as well as # are used for one-line comments. The echo
statement is one of several facilities PHP provides to output text, e.g., to a Web browser.

In terms of keywords and language syntax, PHP is similar to most high-level languages that
follow the C style syntax. if conditions, for and while loops, and function returns are similar in
syntax to languages such as C, C++, Java and Perl.

Data types

PHP stores whole numbers in a platform-dependent range, either a 64-bit or 32-bit signed
integer equivalent to the C-language long type. Unsigned integers are converted to signed values
in certain situations; this behavior is different from other programming languages. Integer variables
can be assigned using decimal (positive and negative), octal, and hexadecimal notations. Floating
point numbers are also stored in a platform-specific range. They can be specified using floating
point notation, or two forms of scientific notation. PHP has a native Boolean type that is similar to
the native Boolean types in Java and C++. Using the Boolean type conversion rules, non-zero
values are interpreted as true and zero as false, as in Perl and C++. The null data type represents a
variable that has no value. The only value in the null data type is NULL. Variables of the "resource"
type represent references to resources from external sources. These are typically created by
functions from a particular extension, and can only be processed by functions from the same
extension; examples include file, image, and database resources. Arrays can contain elements of
any type that PHP can handle, including resources, objects, and even other arrays. Order is
preserved in lists of values and in hashes with both keys and values, and the two can be
intermingled. PHP also supports strings, which can be used with single quotes, double quotes,
nowdoc or heredoc syntax.

19
Functions

PHP has hundreds of base functions and thousands more via extensions. These functions are
well documented on the PHP site; however, the built-in library has a wide variety of naming
conventions and inconsistencies. PHP currently has no functions for thread programming, although
it does support multi-process programming on POSIX systems.

MY SQL

MySQL is the world's most used open source relational database management system
(RDBMS) as of 2008 that run as a server providing multi-user access to a number of databases.
The MySQL development project has made its source code available under the terms of the GNU
General Public License, as well as under a variety of proprietary agreements. MySQL was owned
and sponsored by a single for-profit firm, the Swedish company MySQL AB, now owned by
Oracle Corporation.

MySQL is a popular choice of database for use in web applications, and is a central component
of the widely used LAMP open source web application software stack—LAMP is an acronym for
"Linux, Apache, MySQL, Perl/PHP/Python." Free-software-open source projects that require a
full-featured database management system often use MySQL.

For commercial use, several paid editions are available, and offer additional functionality.
Applications which use MySQL databases include: TYPO3, Joomla, Word Press, phpBB, MyBB,
Drupal and other software built on the LAMP software stack. MySQL is also used in many high-
profile, large-scale World Wide Web products, including Wikipedia, Google(though not for
searches), ImagebookTwitter, Flickr, Nokia.com, and YouTube.

MySQL is primarily an RDBMS and ships with no GUI tools to administer MySQL databases
or manage data contained within the databases. Users may use the included command line tools,
or use MySQL "front-ends", desktop software and web applications that create and manage
MySQL databases, build database structures, back up data, inspect status, and work with data
records. The official set of MySQL front-end tools, MySQL Workbench is actively developed by
Oracle, and is freely available for use.

20
Graphical

The official MySQL Workbench is a free integrated environment developed by MySQL AB, that
enables users to graphically administer MySQL databases and visually design database structures.
MySQL Workbench replaces the previous package of software, MySQL GUI Tools. Similar to other
third-party packages, but still considered the authoritative MySQL frontend, MySQL Workbench lets
users manage database design & modeling, SQL development (replacing MySQL Query Browser) and
Database administration (replacing MySQL Administrator).

MySQL Workbench is available in two editions, the regular free and open source Community
Edition which may be downloaded from the MySQL website, and the proprietary Standard Edition
which extends and improves the feature set of the Community Edition.

21
Features

As of April 2009, MySQL offered MySQL 5.1 in two different variants: the open source
MySQL Community Server and the commercial Enterprise Server. MySQL 5.5 is offered under
the same licenses. They have a common code base and include the following features:

• A broad subset of ANSI SQL 99, as well as extensions

• Cross-platform support

• Stored procedures

• Triggers

• Cursors

• Updatable Views

• Information schema

• Strict mode (ensures MySQL does not truncate or otherwise modify data to conform to an
underlying data type, when an incompatible value is inserted into that type)

• X/Open XAdistributed transaction processing (DTP) support; two phase commit as part
of this, using Oracle's InnoDB engine

• Independent storage engines (MyISAM for read speed, InnoDB for transactions and
referential integrity, MySQL Archive for storing historical data in little space)

• Transactions with the InnoDB, and Cluster storage engines; savepoints with InnoDB

• SSL support

• Query caching

• Sub-SELECTs (i.e. nested SELECTs)

• Replication support (i.e. Master-Master Replication & Master-Slave Replication) with one
master per slave, many slaves per master, no automatic support for multiple masters per
slave.

• Full-text indexing and searching using MyISAM engine

• Embedded database library

• Unicode support (however prior to 5.5.3 UTF-8 and UCS-2 encoded strings are limited to
the BMP, in 5.5.3 and later use utf8mb4 for full Unicode support)

22
• ACID compliance when using transaction capable storage engines (InnoDB and Cluster)

• Partitioned tables with pruning of partitions in optimizer

• Shared-nothing clustering through MySQL Cluster

• Hot backup (via mysqlhotcopy) under certain conditions

Multiple storage engines, allowing one to choose the one that is most effective for each table
in the application (in MySQL 5.0, storage engines must be compiled in; in MySQL 5.1, storage
engines can be dynamically loaded at run time): Native storage engines (MyISAM, Falcon, Merge,
Memory (heap), Federated, Archive, CSV, Blackhole, Cluster, EXAMPLE, Maria, and InnoDB,
which was made the default as of 5.5).

Partner-developed storage engines (solidDB, NitroEDB, ScaleDB, TokuDB, Infobright


(formerly Brighthouse), Kickfire, XtraDB, IBM DB2). InnoDB used to be a partner-developed
storage engine, but with recent acquisitions, Oracle now owns both MySQL core and
InnoDB.

23
CHAPTER 6

SYSTEM IMPLEMENTATION

Implementation is the stage in the project where the theoretical design is turned into a
working system. The most critical stage is achieving a successful system and in giving confidence
on the new system for the users, what it will work efficient and effectively. It involves careful
planning, investing of the current system, and its constraints on implementation, design of methods
to achieve the change over methods. The implementation process begins with preparing a plan for
the implementation of the system. According to this plan, the activities are to be carried out in these
plans; discussion has been made regarding the equipment, resources and how to test activities. The
coding step translates a detail design representation into a programming language Realization.
Programming languages are vehicles for communication between human and computers
programming language characteristics and coding style can profoundly affect software quality and
maintainability. The coding is done with the following characteristics in mind.

• Ease of design to code translation.

• Code efficiency.

• Memory efficiency.

• Maintainability.

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.

24
SAMPLE CODE:

<!DOCTYPE html>
<html lang="en">

<head>

<title>Online Gas Booking System - Home Page</title>

<!-- Custom fonts for this theme -->


<link href="vendor/fontawesome-free/css/all.min.css" rel="stylesheet" type="text/css">
<link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet"
type="text/css">
<link href="https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic"
rel="stylesheet" type="text/css">

<!-- Theme CSS -->


<link href="css/freelancer.min.css" rel="stylesheet">

</head>

<body id="page-top">

<!-- Navigation -->


<nav class="navbar navbar-expand-lg bg-secondary text-uppercase fixed-top" id="mainNav">
<div class="container">
<a class="navbar-brand js-scroll-trigger" href="index.php">Online Gas Booking System</a>
<button class="navbar-toggler navbar-toggler-right text-uppercase font-weight-bold bg-primary
text-white rounded" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-
controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
Menu
<i class="fas fa-bars"></i>
</button>

25
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<li class="nav-item mx-0 mx-lg-1">
<a class="nav-link py-3 px-0 px-lg-3 rounded js-scroll-trigger" href="index.php">Home</a>
</li>
<li class="nav-item mx-0 mx-lg-1">
<a class="nav-link py-3 px-0 px-lg-3 rounded js-scroll-trigger"
href="admin/login.php">Admin</a>
</li>
<li class="nav-item mx-0 mx-lg-1">
<a class="nav-link py-3 px-0 px-lg-3 rounded js-scroll-trigger"
href="customer/login.php">Customer</a>
</li>
</ul>
</div>
</div>
</nav>

<!-- Masthead -->


<header class="masthead bg-primary text-white text-center">
<div class="container d-flex align-items-center flex-column">

<!-- Masthead Avatar Image -->


<img class="masthead-avatar mb-5" src="img/gas-booking-500x500.jpg" alt="">

<!-- Masthead Heading -->


<h1 class="masthead-heading text-uppercase mb-0">Online Gas Booking System</h1>

<!-- Icon Divider -->


<div class="divider-custom divider-light">
<div class="divider-custom-line"></div>
<div class="divider-custom-icon">
<i class="fas fa-star"></i>
</div>

26
<div class="divider-custom-line"></div>
</div>

<!-- Masthead Subheading -->


<p class="masthead-subheading font-weight-light mb-0">Book Your Cylinder Online</p>

</div>
</header>

<!-- Portfolio Section -->

<!-- Copyright Section -->


<section class="copyright py-4 text-center text-white">
<div class="container">
<p style="color: red;font-size: 20px">Online Gas Booking System</p>
</div>
</section>

<!-- Scroll to Top Button (Only visible on small and extra-small screen sizes) -->
<div class="scroll-to-top d-lg-none position-fixed ">
<a class="js-scroll-trigger d-block text-center text-white rounded" href="#page-top">
<i class="fa fa-chevron-up"></i>
</a>
</div>
<!-- Bootstrap core JavaScript -->
<script src="vendor/jquery/jquery.min.js"></script>
<script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
<!-- Plugin JavaScript -->
<script src="vendor/jquery-easing/jquery.easing.min.js"></script>

<!-- Contact Form JavaScript -->


<script src="js/jqBootstrapValidation.js"></script>
<script src="js/contact_me.js"></script>

27
<!-- Custom scripts for this template -->
<script src="js/freelancer.min.js"></script>

</body>
</html><?php
session_start();
error_reporting(0);
include('includes/dbconnection.php');
if (strlen($_SESSION['ogbsuid']==0)) {
header('location:logout.php');
} else{
if(isset($_POST['submit']))
{
$uid=$_SESSION['ogbsuid'];
$connumber=mt_rand(100000000, 999999999);
$name=$_POST['name'];
$email=$_POST['email'];
$mobnum=$_POST['mobnum'];
$gender=$_POST['gender'];
$dob=$_POST['dob'];
$nationality=$_POST['nationality'];
$mstatus=$_POST['mstatus'];
$address=$_POST['address'];
$selrel=$_POST['selrel'];
$fname=$_POST['firstname'];
$lname=$_POST['lastname'];
$sorfaddress=$_POST['sorfaddress'];
$ctv=$_POST['ctv'];
$zcode=$_POST['zipcode'];
$docs=$_FILES["docs"]["name"];
$extension = substr($docs,strlen($docs)-4,strlen($docs));
$allowed_extensions = array(".jpg","jpeg",".png",".gif",".pdf");
if(!in_array($extension,$allowed_extensions))

28
{
echo "<script>alert('Documents has Invalid format. Only jpg / jpeg/ png /gif format
allowed');</script>";
}
else
{
$docs=md5($docs).time().$extension;
move_uploaded_file($_FILES["docs"]["tmp_name"],"images/".$docs);
$sql="insert into
tblconnection(UserID,ConnectionNumber,Name,Email,MobileNumber,Gender,DOB,Nationality
,MaritalStatus,Address,SelectRelated,FirstName,LastName,SORFAddress,Citytownvillage,ZipC
ode,Documents)values(:uid,:connumber,:name,:email,:mobnum,:gender,:dob,:nationality,:mstatu
s,:address,:selrel,:fname,:lname,:sorfaddress,:ctv,:zcode,:docs)";
$query = $dbh->prepare($sql);
$query->bindParam(':uid',$uid,PDO::PARAM_STR);
$query->bindParam(':connumber',$connumber,PDO::PARAM_STR);
$query->bindParam(':name',$name,PDO::PARAM_STR);
$query->bindParam(':email',$email,PDO::PARAM_STR);
$query->bindParam(':mobnum',$mobnum,PDO::PARAM_STR);
$query->bindParam(':gender',$gender,PDO::PARAM_STR);
$query->bindParam(':dob',$dob,PDO::PARAM_STR);
$query->bindParam(':nationality',$nationality,PDO::PARAM_STR);
$query->bindParam(':mstatus',$mstatus,PDO::PARAM_STR);
$query->bindParam(':address',$address,PDO::PARAM_STR);
$query->bindParam(':selrel',$selrel,PDO::PARAM_STR);
$query->bindParam(':fname',$fname,PDO::PARAM_STR);
$query->bindParam(':lname',$lname,PDO::PARAM_STR);
$query->bindParam(':sorfaddress',$sorfaddress,PDO::PARAM_STR);
$query->bindParam(':ctv',$ctv,PDO::PARAM_STR);
$query->bindParam(':zcode',$zcode,PDO::PARAM_STR);

$query->bindParam(':docs',$docs,PDO::PARAM_STR);
$query->execute();

29
$LastInsertId=$dbh->lastInsertId();
if ($LastInsertId>0) {
echo '<script>alert("Connection detail has been added.")</script>';
echo "<script>window.location.href ='new-connection.php'</script>";
}
else
{
echo '<script>alert("Something Went Wrong. Please try again")</script>';
}

}
}

?>

<!doctype html>
<html class="no-js" lang="en">

<head>

<title>New Connection Forms | Online Gas Booking System</title>

<!-- Google Fonts


============================================ -->
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,700,900"
rel="stylesheet">
<!-- Bootstrap CSS
============================================ -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<!-- Bootstrap CSS
============================================ -->
<link rel="stylesheet" href="css/font-awesome.min.css">
<!-- owl.carousel CSS

30
============================================ -->
<link rel="stylesheet" href="css/owl.carousel.css">
<link rel="stylesheet" href="css/owl.theme.css">
<link rel="stylesheet" href="css/owl.transitions.css">
<!-- animate CSS
============================================ -->
<link rel="stylesheet" href="css/animate.css">
<!-- normalize CSS
============================================ -->
<link rel="stylesheet" href="css/normalize.css">
<!-- meanmenu icon CSS
============================================ -->
<link rel="stylesheet" href="css/meanmenu.min.css">
<!-- main CSS
============================================ -->
<link rel="stylesheet" href="css/main.css">
<!-- educate icon CSS
============================================ -->
<link rel="stylesheet" href="css/educate-custon-icon.css">
<!-- morrisjs CSS
============================================ -->
<link rel="stylesheet" href="css/morrisjs/morris.css">
<!-- mCustomScrollbar CSS
============================================ -->
<link rel="stylesheet" href="css/scrollbar/jquery.mCustomScrollbar.min.css">
<!-- metisMenu CSS
============================================ -->
<link rel="stylesheet" href="css/metisMenu/metisMenu.min.css">
<link rel="stylesheet" href="css/metisMenu/metisMenu-vertical.css">
<!-- calendar CSS
============================================ -->
<link rel="stylesheet" href="css/calendar/fullcalendar.min.css">
<link rel="stylesheet" href="css/calendar/fullcalendar.print.min.css">
<!-- modals CSS

31
============================================ -->
<link rel="stylesheet" href="css/modals.css">
<!-- forms CSS
============================================ -->
<link rel="stylesheet" href="css/form/all-type-forms.css">
<!-- style CSS
============================================ -->
<link rel="stylesheet" href="style.css">
<!-- responsive CSS
============================================ -->
<link rel="stylesheet" href="css/responsive.css">
<!-- modernizr JS
============================================ -->
<script src="js/vendor/modernizr-2.8.3.min.js"></script>
</head>

<body>

<?php include_once('includes/sidebar.php');?>

<?php include_once('includes/header.php');?>
<div class="breadcome-area">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div class="breadcome-list single-page-breadcome">
<div class="row">

<div class="col-lg-12 col-md-6 col-sm-6 col-xs-12">


<ul class="breadcome-menu">
<li><a href="dashboard.php">Home</a><span class="bread-slash">/</span>
</li>
<li><span class="bread-blod">Apply For New Connnection</span>
</li>

32
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Basic Form Start -->
<div class="basic-form-area mg-b-15">
<div class="container-fluid">

<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div class="sparkline12-list">
<div class="sparkline12-hd">
<div class="main-sparkline12-hd">
<h1>New Connection Form</h1>
</div>
</div>
<div class="sparkline12-graph">
<div class="basic-login-form-ad">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div class="all-form-element-inner">
<?php
$uid=$_SESSION['ogbsuid'];
$sql="SELECT * from tblconnection where UserID=:uid";
$query = $dbh -> prepare($sql);
$query->bindParam(':uid',$uid,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);

33
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $row)
{ ?>

<p style="font-size:16px; color:red" align="center">Your Connection details already added.</p>

<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">


<th>Request Number</th>
<td colspan="3"><?php echo $row->ConnectionNumber;?></td>
<tr>
<th>Name</th>
<td><?php echo $row->Name;?></td>
<th>Mobile Number</th>
<td><?php echo $row->MobileNumber;?></td>
</tr>

<tr>
<th>Email</th>
<td><?php echo $row->Email;?></td>
<th>Gender</th>
<td><?php echo $row->Gender;?></td>
</tr>

<tr>
<th>Date of Birth</th>
<td><?php echo $row->DOB;?></td>
<th>Nationality</th>
<td><?php echo $row->Nationality;?></td>
</tr>

34
<tr>
<th>Marital Status</th>
<td><?php echo $row->MaritalStatus;?></td>
<th>Address</th>
<td><?php echo $row->Address;?></td>
</tr>
<tr>
<th>Document Address Proof/ID Proof</th>
<td><a href="images/<?php echo $row->Documents;?>" target="blank">View
Document</a></td>
<th>Applied Date</th>
<td><?php echo $row->AppliedDate;?></td>

</tr>

<tr>
<th>Connection Status</th>
<td style="color: red"><?php $status=$row->Status;

if($row->Status=="Approved")
{
echo "Your Connection Request has been Approved";
}

if($row->Status=="Cancellled")
{
echo "Your Connection Request has been cancelled";
}
if($row->Status=="Onhold")
{
echo "Your Connection Request has been on hold";
}

35
if($row->Status=="")
{
echo "Not Response Yet";
}

;?></td>

</tr>
</table>
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
<tr>
<th colspan="4" style="text-align: center;color: red">Spouse or Father Detail</th>
</tr>
<th>Select Related</th>
<td><?php echo $row->SelectRelated;?></td>
<th>First Name</th>
<td><?php echo $row->FirstName;?></td>
</tr>

<tr>
<th>Last Name</th>
<td><?php echo $row->LastName;?></td>
<th>Spouse or Father Address</th>
<td><?php echo $row->SORFAddress;?></td>
</tr>

<tr>
<th>City/Town/Village</th>
<td><?php echo $row->Citytownvillage;?></td>
<th>Zip Code</th>
<td><?php echo $row->ZipCode;?></td>
</tr>
<tr>

36
</tr>
</table>

<?php

if ($status!="Approved"){
?>
<p align="center">
<a class="btn btn-primary waves-effect waves-light w-lg" href="edit-new-
connection.php?editid=<?php echo htmlentities ($row->ID);?>">Edit</a></p>

<?php } ?>

<?php } }else {?>

<form action="#" method="post" enctype="multipart/form-data">


<?php
$uid=$_SESSION['ogbsuid'];
$sql="SELECT * from tbluser where ID=:uid";
$query = $dbh -> prepare($sql);
$query->bindParam(':uid',$uid,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $row)
{ ?>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Name</label>
</div>

37
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="name" value="<?php echo $row-
>FullName;?>" required="true" readonly="true">
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Email</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="email" class="form-control" name="email" value="<?php echo $row->Email;?>"
required='true' readonly="true">
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Mobile Number</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="mobnum" value="<?php echo $row-
>MobileNumber;?>" required='true' maxlength='10' readonly="true">
</div>
</div>
</div>

<?php $cnt=$cnt+1;}} ?>


<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Gender</label>

38
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<p style="text-align: left;"><input type="radio" name="gender" id="gender"
value="Female">Female</p>

<p style="text-align: left;"><input type="radio" name="gender" id="gender"


value="Male">Male</p>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Date of Birth</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="date" class="form-control" name="dob" value="" required='true' maxlength='10'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Nationality</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="nationality" value="" required='true'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Marital Status</label>

39
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<select type="text" class="form-control" name="mstatus" value="" required='true'>
<option value="">Choose Status</option>
<option value="Married">Married</option>
<option value="Single">Single</option>
<option value="Divorce">Divorce</option>
<option value="Widow">Widow</option>
</select>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Address</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<textarea type="text" class="form-control" name="address" value="" required='true'></textarea>
</div>
</div>
</div>
<br/>
<h4 style="color: red;text-align: center;">Spouse or Father Information</h4>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Select Related</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<p style="text-align: left;"><input type="radio" name="selrel" id="gender" value="Spouse"
checked="true">Spouse</p>

40
<p style="text-align: left;"><input type="radio" name="selrel" id="gender"
value="Father">Father</p>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">First Name</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="firstname" value="" required='true'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Last Name</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="lastname" value="" required='true'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Address</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<textarea type="text" class="form-control" name="sorfaddress" value=""
required='true'></textarea>
</div>

41
</div>
</div>

<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">City/Town/Village</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="ctv" value="" required='true'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Zipcode</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="text" class="form-control" name="zipcode" value="" required='true'>
</div>
</div>
</div>
<div class="form-group-inner">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">
<label class="login2 pull-right pull-right-pro">Upload Document(ID Proof and Address
proof)</label>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-12">
<input type="file" class="form-control" name="docs" value="" required='true'>
</div>
</div>
</div>

42
<div class="form-group-inner">
<div class="login-btn-inner">
<div class="row">
<div class="col-lg-3"></div>
<div class="col-lg-9">
<div class="login-horizental cancel-wp pull-left form-bc-ele">

<button class="btn btn-sm btn-primary login-submit-cs"


type="submit"name="submit">Add</button>
</div>
</div>
</div>
</div>
</div>
</form><?php } ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Basic Form End-->
<?php include_once('includes/footer.php');?>
</div>

<!-- jquery
============================================ -->
<script src="js/vendor/jquery-1.12.4.min.js"></script>
<!-- bootstrap JS

43
============================================ -->
<script src="js/bootstrap.min.js"></script>
<!-- wow JS
============================================ -->
<script src="js/wow.min.js"></script>
<!-- price-slider JS
============================================ -->
<script src="js/jquery-price-slider.js"></script>
<!-- meanmenu JS
============================================ -->
<script src="js/jquery.meanmenu.js"></script>
<!-- owl.carousel JS
============================================ -->
<script src="js/owl.carousel.min.js"></script>
<!-- sticky JS
============================================ -->
<script src="js/jquery.sticky.js"></script>
<!-- scrollUp JS
============================================ -->
<script src="js/jquery.scrollUp.min.js"></script>
<!-- mCustomScrollbar JS
============================================ -->
<script src="js/scrollbar/jquery.mCustomScrollbar.concat.min.js"></script>
<script src="js/scrollbar/mCustomScrollbar-active.js"></script>
<!-- metisMenu JS
============================================ -->
<script src="js/metisMenu/metisMenu.min.js"></script>
<script src="js/metisMenu/metisMenu-active.js"></script>
<!-- tab JS
============================================ -->
<script src="js/tab.js"></script>
<!-- icheck JS
============================================ -->
<script src="js/icheck/icheck.min.js"></script>

44
<script src="js/icheck/icheck-active.js"></script>
<!-- plugins JS
============================================ -->
<script src="js/plugins.js"></script>
<!-- main JS
============================================ -->
<script src="js/main.js"></script>

</body>

</html><?php } ?>

45
CHATER 7
SYSTEM TESTING

System testing is a series of different tests that whose primary purpose is to fully exercise
the computer-based system. Although each test has a different purpose, all work should verify that
all system element have been properly integrated and performed allocated function. Testing is the
process of checking whether the developed system works according to the actual requirement and
objectives of the system. The philosophy behind testing is to find the errors. A good test is one that
has a high probability of finding an undiscovered error. A successful test is one that uncovers the
undiscovered error. Test cases are devised with this purpose in mind. A test case is a set of data
that the system will process as an input.

TYPES OF TESTING DONE:

SYSTEM TESTING:

After a system has been verified, it needs to be thoroughly tested to ensure that every
component of the system is performing in accordance with the specific requirements and that it is
operating as it should including when the wrong functions are requested or the wrong data is
introduced.

Testing measures consist of developing a set of test criteria either for the entire system or for
specific hardware, software and communications components. For an important and sensitive
system such as an electronic voting system, a structured system testing program may be established
to ensure that all aspects of the system are thoroughly tested.

Testing measures that could be followed include:

• Applying functional tests to determine whether the test criteria have been met

• Applying qualitative assessments to determine whether the test criteria have been met.

• Conducting tests in ―laboratory‖ conditions and conducting tests in a variety of ―real


life‖ conditions.

• Conducting tests over an extended period of time to ensure systems can perform
consistently.

46
• Conducting ―load tests‖, simulating as close as possible likely conditions

• while using or exceeding the amounts of data that can be expected to be handled in an
actual situation.

Test measures for hardware may include:

• Applying ―non-operating‖ tests to ensure that equipment can stand up to expected levels of
physical handling.

• Testing ―hard wired‖ code in hardware (firmware) to ensure its logical correctness and that
appropriate standards are followed.

Tests for software components also include:

• Testing all programs to ensure its logical correctness and that appropriate design,
development and implementation standards have been followed.

• Conducting ―load tests‖, simulating as close as possible a variety of ―real life‖ conditions
using or exceeding the amounts of data that could be expected in an actual situation.

• Verifying that integrity of data is maintained throughout its required manipulation.

47
7.1 UNIT TESTING

The first test in the development process is the unit test. The source code is normally
divided into modules, which in turn are divided into smaller units called units. These units have
specific behavior. The test done on these units of code is called unit test. Unit test depends upon
the language on which the project is developed. Unit tests ensure that each unique path of the
project performs accurately to the documented specifications and contains clearly defined inputs
and expected results. Functional and reliability testing in an Engineering environment. Producing
tests for the behavior of components (nodes and vertices) of a product to ensure their correct
behavior prior to system integration.

7.2 INTEGRATION TESTING

Testing in which modules are combined and tested as a group. Modules are typically code
modules, individual applications, source and destination applications on a network, etc. Integration
Testing follows unit testing and precedes system testing. Testing after the product is code complete.
Betas are often widely distributed or even distributed to the public at large in hopes that they will
buy the final product when it is release.

7.3 VALIDATION TESTING

Valid and invalid data should be created and the program should be made to process this data
to catch errors. When the user of each module wants to enter into the page by the login page using
the use rid and password .If the user gives the wrong password or use rid then the information is
provided to the user like ―you must enter user id and password‖. Here the inputs given by the user
are validated. That is password validation, format of date are correct, textbox validation

48
CHAPTER 8

SYSTEM MAINTENANCE

The results obtained from the evaluation process help the organization to determine
whether its information systems are effective and efficient or otherwise. The process of
monitoring, evaluating, and modifying of existing information systems to make required or
desirable improvements may be termed as System Maintenance.

System maintenance is an ongoing activity, which covers a wide variety of activities,


including removing program and design errors, updating documentation and test data and updating
user support. For the purpose of convenience, maintenance may be categorized into three classes,
namely:

i) Corrective

ii) Adaptive

iii) Perfective

i) Corrective Maintenance: - This type of maintenance implies removing errors in a program,


which might have crept in the system due to faulty design or wrong assumptions. Thus, in
corrective maintenance, processing or performance failures are repaired.

ii) Adaptive Maintenance: - In adaptive maintenance, program functions are changed to enable the
information system to satisfy the information needs of the user.

This type of maintenance may become necessary because of organizational changes which may
include:

a) Change in the organizational procedures,

b) Change in organizational objectives, goals, policies, etc.

c) Change in forms

d) Change in information needs of managers.

e) Change in system controls and security needs, etc.

49
iii) Perfective Maintenance: - Perfective maintenance means adding new programs or modifying
the existing programs to enhance the performance of the information system. This type of
maintenance undertaken to respond to user’s additional needs which may be due to the changes
within or outside of the organization. Outside changes are primarily environmental changes, which
may in the absence of system maintenance, render the information system ineffective and
inefficient. These environmental changes include:

a) Changes in governmental policies, laws, etc.,

b) Economic and competitive conditions, and

c) New technology.

50
CHAPTER 9

SCREENSHOTS

DATABASE

51
Home Page:

52
Customer Panel

Sign Up Page

53
Login Page:

Details

54
Search Booking

Admin Panel

Login Page

55
Dashboard

On Hold Connection

56
Approved Connection Details

Confirm Cylinder Booking

57
View Delivered Cylinder Details

58
CHAPTER 10

CONCLUSION

The project titled as Online Gas Booking System was deeply studied and analyzed to
design the code and implement. It was done under the guidance of the experienced project guide. All
the current requirements and possibilities have been taken care during the project time.Online Gas
Booking System is used for daily operations in any organization to maintain or access employee
related information for internal administration purposes.

In conclusion, the future of online gas booking systems holds immense promise for both users
and providers. With a focus on innovation and customer-centricity, the proposed enhancements
outlined above signify a transformational shift towards greater efficiency, convenience, and
sustainability. By leveraging technologies such as real-time tracking, self-service portals, and smart
home integration, gas booking systems can deliver unparalleled transparency, safety, and user
experience. Additionally, initiatives like multi-language support, loyalty programs, and dynamic
pricing strategies foster inclusivity, engagement, and loyalty among users. Moreover, advancements
in predictive maintenance, augmented reality, and blockchain technology underscore a commitment
to safety, operational excellence, and security. As these enhancements come to fruition, online gas
booking systems are poised to redefine industry standards and set new benchmarks for excellence in
service delivery.

59
CHAPTER 11

FUTURE ENHANCEMENT

In the evolving landscape of online gas booking systems, future enhancements promise to
revolutionize user experience and operational efficiency. Integrating real-time tracking and
notifications will empower users with precise delivery updates and driver information, ensuring
transparency and convenience. Furthermore, the introduction of self-service portals tailored for
dealers and distributors will streamline supply chain management, fostering collaboration and agility.
Embracing green delivery options and smart home automation integration not only enhances
sustainability efforts but also elevates safety and convenience for users. Multi-language support will
cater to diverse user demographics, fostering inclusivity and accessibility. Implementing customer
loyalty programs and dynamic pricing strategies will drive engagement and loyalty, while predictive
maintenance and augmented reality features prioritize safety and operational excellence. The
adoption of block chain technology ensures unparalleled transparency and security across
transactions, bolstering trust and confidence in the system. These enhancements collectively propel
the online gas booking system into a new era of innovation and customer- centricity.

60
CHAPTER 12

REFERENCES

BOOK REFERENCE

• Gerken, Till, and Tobias Ratschiller. Web Application Development with PHP. New Riders
Publishing, 2000.

• Greenspan, Jay, and Brad Bulger. MySQL/PHP database applications. John Wiley & Sons,
Inc., 2001.

• Gutmans, Andi, Stig Bakken, and Derick Rethans. PHP 5 Power Programming (Bruce
Perens' Open Source Series). Prentice Hall PTR, 2004.

WEBSITE REFERENCE:

1. https://www.w3schools.com/php/default.asp
2. https://www.sitepoint.com/php/
3. https://www.php.net/
4. https://www.mysql.com/
5. http://www.mysqltutorial.org
6. https://www.apachefriends.org/download.html

61

You might also like