Hall Booking Report
Hall Booking Report
Hall Booking Report
On
NETCOM COMPUTERS
SUBMITTED TO SUBMITTED BY
1
2
DECLARATION
I hereby declare that the work which is being present in this project report “Online
Hall Booking Management System”, in partial fulfilment of the requirement for the
award od the degree of BACHELOR OF COMPUTER APPLICATION,
submitted at AMRAPALI INSTITUTE OF MANAGEMENT AND COMPUTER
APPLICATION is an authentic work done by me during period fromst 1January
2019 to 15th May 2019
Haldwani nainital
3
ACKNOWLEDGEMENT
I would like to extend our thanks and appreciation to all those who have assisted us either
directly or indirectly and participated in the success of this project.
I would like to thank to my guide Mr. Dhiren Dalakoti for his constant support in the
making of the project. As a part of University Curriculum, a final year project is a paramount
importance to an BCA student’s curriculum and being our native effort into this project
undertook by us, we faced a lot of impediments on our way to the completion of this project
but constant guidance and able support of concerned software engineer members lend us a
great help in successful completion of the project.
Even though I expressed my gratitude to every person, who helped me in reaching this stage,
but there might be a few, who’d been left out, who helped me without my knowledge, I
would like to thank all of them.
Last but not least, to all my friends and fellow students for giving me suggestions and helping
us in debugging the code errors and above all the faculty of my Department of Computer
Science (D.S.B Campus Nainital) who have always provided their guidance, support
and well wishes.
Santoshii
4
Table of Contents
2.1 Live Project on Hall Ticket Booking And Management System ……………..….8
2.1.1Introduction……………………………………………………….……..8
5.1 Introduction………………………………………………………………..........14
5.3 DFD………………………………………………………………………….….15
5.5 ER Diagram…………………………………………………………….….…....20
5
CHAPTER 6 - TOOLS AND LANGUAGES 23-42
6.1 HTML………………………………………………………..…………………23
6.2 CSS………………………………………………………………..………..…..24
6.3 JavaScript……………………..………………………………..….……………27
6.4 Bootstrap………………………………………………………………………..30
6.5 Php………………………………………………………………...……….........33
6.6 Ajax……...………………………………………………….……...……...…....36
CHAPTER 13 - LIMITATIONS 81
CHAPTER 14 - CONCLUSION 82
CHAPTER 15 - BIBLIOGRAPHY 83
6
Chapter1 Company Profile
1.1 History:
Netcom Computers Private Ltd. is a one of the oldest it solutions company and a subsidiary
of Netcom India Pvt. Ltd. New Delhi and is one of the leading information technology and
graphics and designing, services. It is providing services in the field of software development,
maintenance, business process outsourcing, and IT Education, Networking and Government
undertakings for the state of Uttarakhand.
Netcom started its life in mid 1997 with the purpose of imparting IT based education to the
masses with core intention of providing it information in the regional language. In this regard
it tied a joint venture with CDAC Gist Pace a Govt. of India Enterprise and became one of
India’s leading IT education provider. On the other had Netcom with its subsidiary Samvad
Prikrama Pvt. Ltd at New Delhi introduced its hands in the field of Graphic and designing
and produced many TV serials and advertisements for DD national Television.
Today Netcom Computers Pvt. Ltd is a wholly owned company in the state of Uttarakhand
with offices at major cities of India and it running successfully. It also provide services like
systems consultancy, hardware and software maintenance, systems integration and
reengineering, countrywide network s3ervices, education and training as well as offshore
project development.
7
Chapter2 Introduction of Project
This web application is the best application for company, this application provide the best
features and facilities to the customer.
Through this customer can easily book the hall which is they want for his function . With the
help of this application admin can manage the booking functionality and can view the
booking details of the user.
And employees can easily see their booking system on their id after login.After completing
the task employee can update their status on their id.
Introduction:
This web application is a service to provide various functionality to the customer &
employee. It is also useful to save the precious time and energy. This application offers
different services like employees management, booking system ,booking details hall details.
2. EFFICIENCY: The basic need of this application is efficiency. The application should be
efficient so that whenever a new user submits his/her details the database is updated
automatically. This record will be useful for other users instantly.
3. CONTROL: The complete control of the project is under the hands of authorized person
who has the password to access this project and illegal access is not supposed to deal with.
All the control is under the administrator and the other members have the rights to just see the
records not to change any transaction or entry.
8
2.1.3-Scope of the proposed Application :
Though there are many application available on system but this can compete with them with
some advancement in its functionality and can be used by any authenticate admin to
maintain their customer’s and employee’s account.
User Registration
Login
Update Profile
View Profile
Logout
1. MENU DRIVEN:
The project uses menu throughout which we can choose required options. Menus are self-
explanatory, as they are very easy to use and user can go to any other web page using the menu
2. USER CONFIRMATION:
Whenever the user tries to delete or edit the data, the system asks for the confirmation. This
issued to avoid the accidental changes to the database.
9
Chapter3 Requirement Analysis
3.1-Functional Requirements:
3.2-Non-functional Requirements:
Those requirements which are not the functionalities of a system but are the characteristics of
a system are called the non-functionalities.
Security access.
24X7 availability.
Better component design to get better performance at peak time.
Flexible service based architecture will be highly desirable for future extensions.
10
3.5 Tools and Environment:
11
Chapter4 Requirement Specification
Document
Applicant: The applicant can register his information and desired information about the hall
and book them in a particular date.
User: user can register his information and can check hall availability on their id.
The searching of record has been made quite simple as all the details of the customer
can be obtained by simply keying in the identification of that customer. Similarly, record
maintenance and update can also be accomplished by using the identification of the customer
with all the details being automatically generated. These details are also being promptly
automatically updated in the master file thus keeping the record absolutely up-to-date.
4.1.1 Characteristics:
A computer based management system is to maintain each customer record.
Separate database is maintained to handle all the details required for all the customers. This
project intends to introduce more user friendliness in the
Various activities such as record updation , maintenance, and searching
12
4.1.2 Constraints:
Some tables have primary key and foreign key. Relationships are created between tables in
the database. All tables are related with each-other.
To view information, user must have valid username and password. Only valid users can
logged successfully and view information available on the database.
Input Data: the software will be keyboard and mouse driven, all input data are from left
mouse clicks on context buttons such as directional buttons or menu options. Incase of filling
information keyboard is required.
RAM: 256 MB
Color: 16 bit
13
Chapter5 Software Design
5.1-Introduction:
The web Application registers the user or the applicant then confirms the user or credentials
like username and password for further work. If the user credentials are validated then allow
the user in website otherwise reject it. All the information related to user credentials is stored
in the database. The entire system can be shown with the help of Data Flow Diagram. A Data
Flow Diagram (DFD) is a diagrammatic representation of the information flows within a
system, showing:
5.2-Scope:
Though there are many application available on market but this can compete with them with
some advancement in its functionality and can be used by any user and college, organization
to maintain their Hall management system and services.
User Registration
Login
Update profile
View booking details
View profile
Logout
14
5.3 -Data Flow Diagram (DFD):
Cancle
Hall details
Login admin
User management
Open booking
System
15
1-LEVEL DFD:
Admin
User
login /registration info.
Hall information
Admin info.
response
request
Hall booking
Admin
booking details
Open booking
Check
booking
User details
User Information
16
5.4 User Interface Design:
User interface design is the design of application with the focus on user’s experience and
interaction. The goal of user interface design is to make the user's interaction as simple and
efficient as possible the goal of user interface design is to make the user's interaction as
simple and efficient as possible. Web page is used for user interface which is built in Xampp
Apache. It has a server side platform which contains MariaDB , PHP ,Perl contains which is
use for srver side coding , data controls (gridview, detailview, sqldatasource etc).
XAMPP is meant only for development purposes. It has certain configuration settings that
make it easy to develop locally but that are insecure if you want to have your installation
accessible to others. If you want have your XAMPP accessible from the internet, make sure
you understand the implications and you checked the FAQs to learn how to protect your site.
Alternatively you can use WAMP, MAMP or LAMP which are similar packages which are
more suitable for production .
Fig. 5.1
17
Application Design:
Xampp server:
XAMPP is by a free and open-source cross-platform web server solution stack package
developed Apache Friends,consisting mainly of the Apache HTTP
Server, MariaDB database, and interpreters for scripts written in
the PHP and Perl programming languages. Since most actual web server deployments use the
same components as XAMPP, it makes transitioning from a local test server to a live server
possible.
XAMPP ployment means a WAMP or LAMP stack can be installed quickly and simply on an
operating system by a developer. With the advantage a number of common add-in
applications such as Wordpress and Joomla! can also be installed with similar ease
using Bitnami.
Etymology :
The term XAMPP is an apparent acronym. However, there is no official acronym expansion
specified on the Apache Friends website. Their homepage header reads "XAMPP Apache +
MariaDB + PHP + Perl", indicating that this abbreviation is a recursive acronym.
Letter Meaning
M MariaDB
P PHP
P PERL
MySQL was replaced with MariaDB on 2015-10-19 and beginning with XAMPP versions
5.5.30 and 5.6.14effectively altering the meaning of the acronym.
18
Features :
XAMPP is regularly updated to the latest releases of Apache, MariaDB, PHP and Perl. It also
comes with a number of other modules
including OpenSSL, phpMyAdmin, MediaWiki, Joomla, WordPress and more. Self-
contained, multiple instances of XAMPP can exist on a single computer, and any given
instance can be copied from one computer to another. XAMPP is offered in both a full and a
standard version (Smaller version).
Usage:
The most obvious characteristic of XAMPP is the ease at which a WAMP webserver stack
can be deployed and instantiated. Later some common packaged applications that could be
easily installed were provided by Bitnami.
Officially, XAMPP's designers intended it for use only as a development tool, to allow
website designers and programmers to test their work on their own computers without any
access to the Internet. To make this as easy as possible, many important security features are
disabled by default.] XAMPP has the ability to serve web pages on the World Wide Web. A
special tool is provided to password-protect the most important parts of the package.
Once XAMPP is installed, it is possible to treat a localhost like a remote host by connecting
using an FTP client. Using a program like FileZilla has many advantages when installing
a content management system (CMS) like Joomla or WordPress [. It is also possible to
connect to localhost via FTP with an HTML editor.
19
5.5 ER-DIAGRAM:
User_name
password
Security que.
Departmt.
Registration
Que.answer
Retype
password
p
User_name Slot_id
B_id
User_name
cc
hall
Booking B_id
management
Status
B_id
B_date hall_id
Hall name
B_id
Hall_id
B_id
Slot_id
date
Slot
20
5.6 USE- CASE DIAGRAM:
REGISTRSTION
USER
LOGIN
BOOKING
BOOKING_DATES
HALL_ID
SLOAT_ID
21
5.6.2 USE- CASE DIAGRAM FOR ADMIN:
LOGIN
ADMIN
MANAGE_BOOKING
User
mangement
MANAGE
HALL_DETAILS
CHECK
BOOKING_DETAIL
S
22
Chapter6 Tools and Languages Used
6.1 HTML:
HTML stands for Hyper Text Markup Language, which is the most widely used language on
Web to develop web pages. HTML was created by Berners-Lee in late 1991 but "HTML 2.0"
was the first standard HTML specification which was published in 1995. HTML 4.01 was a
major version of HTML and it was published in late 1999. Though HTML 4.01 version is
widely used but currently we are having HTML-5 version which is an extension to HTML
4.01, and this version was published in 2012.
HTML stands for Hypertext Markup Language, and it is the most widely used language to
write Web Pages.
Hypertext refers to the way in which Web pages (HTML documents) are linked
together. Thus, the link available on a webpage is called Hypertext.
As its name suggests, HTML is a Markup Language which means you use HTML
to simply "mark-up" a text document with tags that tell a Web browser how to
structure it to display.
Heading Tags:
Any document starts with a heading. You can use different sizes for your headings. HTML
also has six levels of headings, which use the elements <h1>, <h2>, <h3>, <h4>,
<h5>, and <h6>. While displaying any heading, browser adds one line before and one line
after that heading.
23
Paragraph Tag:
The <p> tag offers a way to structure your text into different paragraphs. Each paragraph of
text should go in between an opening <p> and a closing </p> tag
The <br /> tag has a space between the characters br and the forward slash. If you omit this
space, older browsers will have trouble rendering the line break, while if you miss the
forward slash character and just use <br> it is not valid in XHTML.
Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to
simplify the process of making web pages presentable.
CSS handles the look and feel part of a web page. Using CSS, you can control the color of
the text, the style of fonts, the spacing between paragraphs, how columns are sized and laid
out, what background images or colors are used, layout designs, variations in display for
different devices and screen sizes as well as a variety of other effects.
CSS is easy to learn and understand but it provides powerful control over the presentation of
an HTML document. Most commonly, CSS is combined with the markup languages HTML
or XHTML.
Advantages of CSS:
CSS saves time − You can write CSS once and then reuse same sheet in multiple
HTML pages. You can define a style for each HTML element and apply it to as many
Web pages as you want.
Pages load faster − If you are using CSS, you do not need to write HTML tag
attributes every time. Just write one CSS rule of a tag and apply it to all the
occurrences of that tag. So less code means faster download times.
Easy maintenance − To make a global change, simply change the style, and all
elements in all the web pages will be updated automatically.
24
Superior styles to HTML − CSS has a much wider array of attributes than HTML,
so you can give a far better look to your HTML page in comparison to HTML
attributes.
Global web standards − Now HTML attributes are being deprecated and it is being
recommended to use CSS. So its a good idea to start using CSS in all the HTML
pages to make them compatible to future browsers.
Each declaration includes a CSS property name and a value, separated by a colon.
A CSS declaration always ends with a semicolon, and declaration blocks are surrounded by
curly braces.
In the following example all <p> elements will be center-aligned, with a red text color:
25
CSS Selectors:
CSS selectors are used to "find" (or select) HTML elements based on their element name, id,
class, attribute, and more.
You can select all <p> elements on a page like this (in this case, all <p> elements will be
center-aligned, with a red text color):
Example
p{
text-align: center;
color: red;
}
The id Selector:
The id selector uses the id attribute of an HTML element to select a specific element.
The id of an element should be unique within a page, so the id selector is used to select one
unique element!
To select an element with a specific id, write a hash (#) character, followed by the id of the
element.
The style rule below will be applied to the HTML element with id="para1":
Example
#para1 {
text-align: canter;
colour: red;
}
26
The class Selector:
To select elements with a specific class, write a period (.) character, followed by the name of
the class.
In the example below, all HTML elements with class="center" will be red and center-aligned:
Example
canter {
text-align: canter;
colour: red;
}
The ECMA-262 Specification defined a standard version of the core JavaScript language.
Client-Side JavaScript:
Client-side JavaScript is the most common form of the language. The script should be
included in or referenced by an HTML document for the code to be interpreted by the
browser.
27
It means that a web page need not be a static HTML, but can include programs that interact
with the user, control the browser, and dynamically create HTML content.
The JavaScript client-side mechanism provides many advantages over traditional CGI
server-side scripts. For example, you might use JavaScript to check if the user has entered a
valid e-mail address in a form field.
The JavaScript code is executed when the user submits the form, and only if all the entries
are valid, they would be submitted to the Web Server.JavaScript can be used to trap user-
initiated events such as button clicks, link navigation, and other actions that the user initiates
explicitly or implicitly.
Advantages of JavaScript:
The merits of using JavaScript are −
Less server interaction − You can validate user input before sending the page off to
the server. This saves server traffic, which means less load on your server.
Immediate feedback to the visitors − They don't have to wait for a page reload to
see if they have forgotten to enter something.
Increased interactivity − You can create interfaces that react when the user hovers
over them with a mouse or activates them via the keyboard.
Richer interfaces − You can use JavaScript to include such items as drag-and-drop
components and sliders to give a Rich Interface to your site visitors.
o Client-side validation,
o Dynamic drop-down menus,
o Displaying date and time,
o Displaying pop-up windows and dialog boxes (like an alert dialog box, confirm dialog
box and prompt dialog box),
o Displaying clocks etc.
The biggest advantages to a JavaScript having a ability to produce the same result on all
modern browsers.
Client-Side execution: No matter where you host JavaScript, Execute always on client
environment to save a bandwidth and make execution process fast.
User Interface Interactivity: JavaScript used to fill web page data dynamically such as
drop-down list for a Country and State. Base on selected Country, State drop down list
28
dynamically filled. Another one is Form validation, missing/incorrect fields you can alert to a
users using alert box.
Rapid Development: JavaScript syntax's are easy and flexible for the developers. JavaScript
small bit of code you can test easily on Console Panel (inside Developer Tools) at a time
browser interpret return output result. In-short easy language to get pick up in development.
Browser Compatible: The biggest advantages to a JavaScript having a ability to support all
modern browser and produce the same result.
Limitations of JavaScript:
We cannot treat JavaScript as a full-fledged programming language. It lacks the following
important features –
Client-side JavaScript does not allow the reading or writing of files. This has been
kept for security reason.
Code Always Visible: The biggest disadvantages is code always visible to everyone anyone
can view JavaScript code.
Bit of Slow execute: No matter how much fast JavaScript interpret, JavaScript DOM
(Document Object Model) is slow and will be a never fast rendering with HTML.
Stop Render: JavaScript single error can stop to render with entire site. However browsers
are extremely tolerant of JavaScript errors.
Once again, JavaScript is a lightweight, interpreted programming language that allows you to
build interactivity into otherwise static HTML pages.
To make our life simpler, various vendors have come up with very nice JavaScript editng
tools. Some of them are listed here –
29
Microsof FrontPage − Microsof has developed a popular HTML editor called FrontPage.
FrontPage also provides web developers with a number of JavaScript tools to assist in the
creaton of interactve websites.
The ECMAScript Edition 5 standard will be the first update to be released in over four years.
JavaScript 2.0 conforms to Edition 5 of the ECMAScript standard, and the difference
between the two is extremely minor.
Today, Netscape's JavaScript and Microsoft's JScript conform to the ECMAScript standard,
although both the languages still support the features that are not a part of the standard.
6.4 Bootstrap:
Bootstrap is the most popular front end framework in the recent time. It is sleek, intuitive,
and powerful mobile first front-end framework for faster and easier web development. It
uses HTML, CSS and Javascript. This tutorial will teach you the basics of Bootstrap
Framework using which you can create web projects with ease. The tutorial is divided into
sections such as Bootstrap Basic Structure, Bootstrap CSS, Bootstrap Layout Components
30
History:
Bootstrap was developed by Mark Otto and Jacob Thornton at Twitter. It was
Easy to get started − With just the knowledge of HTML and CSS anyone can get
started with Bootstrap. Also the Bootstrap official site has a good documentation.
Provides a clean and uniform solution for building an interface for developers.
It contains beautiful and functional built-in components which are easy to customize.
31
It also provides web based customization.
Scaffolding − Bootstrap provides a basic structure with Grid System, link styles,
and background. This is is covered in detail in the section Bootstrap Basic
Structure
CSS − Bootstrap comes with the feature of global CSS settings, fundamental HTML
elements styled and enhanced with extensible classes, and an advanced grid system.
This is covered in detail in the section Bootstrap with CSS.
JavaScript Plugins − Bootstrap contains over a dozen custom jQuery plugins. You
can easily include them all, or one by one. This is covered in details in the
section Bootstrap Plugins.
Bootstrap is a powerful front-end framework for faster and easier web development. It
includes HTML and CSS based design templates for creating common user interface
components like forms, buttons, navigations, dropdowns, alerts, modals, tabs, accordions,
carousels, tooltips, and so on.
Bootstrap gives you ability to create flexible and responsive web layouts with much less
efforts.
You can save a lot of time and effort with Bootstrap. So bookmark this website and continue
on.
32
Advantages of Using Bootstrap:
If you have had some experience with any front-end framework, you might be wondering
what makes Bootstrap so special. Here are some advantages why one should opt for
Bootstrap framework:
Save lots of time — You can save lots of time and efforts using the Bootstrap predefined
design templates and classes and concentrate on other development work.
Responsive features — Using Bootstrap you can easily create responsive websites that
appear more appropriately on different devices and screen resolutions without any change in
markup.
Consistent design — All Bootstrap components share the same design templates and styles
through a central library, so the design and layout of your web pages will be consistent.
Easy to use — Bootstrap is very easy to use. Anybody with the basic working knowledge of
HTML, CSS and JavaScript can start development with Bootstrap.
Compatible with browsers — Bootstrap is created with modern web browsers in mind and
it is compatible with all modern browsers such as Chrome, Firefox, Safari, Internet Explorer,
etc.
Open Source — And the best part is, it is completely free to download and use.
The PHP Hypertext Preprocessor (PHP) is a programming language that allows web
developers to create dynamic content that interacts with databases. PHP is basically used for
developing web based software applications. This tutorial helps you to build your base with
PHP.
PHP started out as a small open source project that evolved as more and more people found
out how useful it was. Rasmus Lerdorf unleashed the first version of PHP way back in 1994.
33
PHP supports a large number of major protocols such as POP3, IMAP, and LDAP.
PHP4 added support for Java and distributed object architectures (COM and
CORBA), making n-tier development a possibility for the first time.
PHP can handle forms, i.e. gather data from files, save data to a file, through email
you can send data, return data to the user.
You add, delete, modify elements within your database through PHP.
Using PHP, you can restrict users to access some pages of your website.
Characteristics of PHP:
Five important characteristics make PHP's practical nature possible −
Simplicity
Efficiency
Security
Flexibility
Familiarity
To get a feel for PHP, first start with simple PHP scripts. Since "Hello, World!" is an
essential example, first we will create a friendly little "Hello, World!" script.
34
As mentioned earlier, PHP is embedded in HTML. That means that in amongst your normal
HTML (or XHTML if you're cutting-edge) you'll have PHP statements like this –
<html>
<head>
<title>Hello World</title>
</head>
<body>
</body>
</html>
Hello, World!
If you examine the HTML output of the above example, you'll notice that the PHP code is
not present in the file sent from the server to your Web browser. All of the PHP present in
the Web page is processed and stripped from the page; the only thing returned to the client
from the Web server is pure HTML output.
All PHP code must be included inside one of the three special markup tags ATE are
recognised by the PHP Parser.
35
With PHP you are not limited to output HTML. You can output images, PDF files, and even
Flash movies. You can also output any text, such as XHTML and XML.
Why PHP?
PHP runs on various platforms (Windows, Linux, Unix, Mac OS X, etc.)
PHP is compatible with almost all servers used today (Apache, IIS, etc.)
PHP supports a wide range of databases
PHP is free. Download it from the official PHP resource: www.php.net
PHP is easy to learn and runs efficiently on the server side.
6.6 Ajax:
AJAX is a developer's dream, because you can:
A browser built-in XMLHttpRequest object (to request data from a web server)
JavaScript and HTML DOM (to display or use the data)
AJAX allows web pages to be updated asynchronously by exchanging data with a web server
behind the scenes. This means that it is possible to update parts of a web page, without
reloading the whole page.
How AJAX Works:
36
1. An event occurs in a web page (the page is loaded, a button is clicked)
2. An XMLHttpRequest object is created by JavaScript
3. The XMLHttpRequest object sends a request to a web server
4. The server processes the request
5. The server sends a response back to the web page
6. The response is read by JavaScript
7. Proper action (like page update) is performed by JavaScript
Property Description
Example:
37
<script>
function loadDoc() {
xhttp.onreadystatechange = function()
document.getElementById("demo").innerHTML = this.responseText;
};
xhttp.send();
</script>
XAMPP stands for Cross-Platform (X), Apache (A), MySQL (M), PHP (P) and Perl (P). It
is a simple, lightweight Apache distribution that makes it extremely easy for developers to
create a local web server for testing purposes. Everything you need to set up a web server –
server application (Apache), database (MySQL), and scripting language (PHP) – is
included in a simple extractable file. XAMPP is also cross-platform, which means it works
equally well on Linux, Mac and Windows. Since most actual web server deployments use
the same components as XAMPP, it makes transitioning from a local test server to a live
server is extremely easy as well.
38
What’s Included in XAMPP?
XAMPP has four primary components. These are:
1.Apache: Apache is the actual web server application that processes and delivers web
content to a computer. Apache is the most popular web server online, powering nearly 54%
of all websites.
3. PHP: PHP stands for Hypertext Preprocessor. It is a server-side scripting language that
powers some of the most popular websites in the world, including WordPress and
Facebook. It is open source, relatively easy to learn, and works perfectly with MySQL,
making it a popular choice for web developers.
When installing, there would be an option to select whether you want to run Apache and
MySQL as services. If you chose it, Apache and MySQL will start at system boot-up which
may not need if your computer is tight with memory resources or if you are not doing PHP
development frequently. You can change these settings after installation.
39
Go to the location where you installed XAMPP (usually C:\Program Files\xampp)
and double click on XAMPP Control Panel (xampp-control.exe). This will bring you
following screen. Click on Start buttons next to Apache and MySQL for starting them.
Once opened, you would see XAMPP icon on the right of your task bar. Clicking on that icon
will show/hide XAMPP control panel. To exit from XAMPP, click on Exit button in
XAMPP Control Panel.
In such a case, you would need to stop other service temporary and restart it after starting
Apache. For an example, if you do so for Skype, it will find another port for working after
restarting.
In the installation directory, you would see a program called Port Check (xampp-
portcheck.exe). Double click on it and it will show you status of required port for Apache,
MySQL and other software that comes with XAMPP. If required ports are already occupied,
it will show the names of services that run on those ports.
40
Putting Stuff in Web Folder:
Under XAMPP root directory there is a folder called htdocs. That’s where you should put
your web site related stuff. For each web site you create, it’s better to create a folder
inside htdocs folder and then put content inside that to avoid conflicts.
For an example, you can create a folder called learnphp inside htdocs folder and
put welcome.php inside that. Then you can access it via the
URL http://localhost/learnphp/welcome.php.
Usually web servers have been configured to look for an index file (can be index.htm,
index.html, index.php etc) in the root of the web site folder and show its content for the
home page of the site. So, if you had a file called index.php inside learnphp, you would see
its output once you typed http://localhost/learnphp/.
In XAMPP, some Apache configuration settings have been moved to sub configuration files
under xampp\apache\conf\extra.
To open my.cnf, double clicking on it may not work sometimes. In that case, open Notepad
and then locate my.cnf file by setting Files of Type to All Files as below.
41
Restarting Apache and MySQL:
To take effect any configuration change, it’s required to restart Apache and/or
MySQL. In XAMPP, if these two are already running, stop them and start again in the
Control Panel.
42
Chapter7 DataBase Design
In our data flow diagram, we give names to data flows, processes and data stores. Although
the names are descriptive of data, they do not give details .So following DFD, our interest is
to build some details of the contents of data flows, processes and data store. A data dictionary
is a structured repository of data about data .It is a set of rigorous definitions of all DFD data
elements and data structures .The data dictionary for the current system has been given as
under
43
7.1.2 Hall details Table: This table maintains details of Halls.
44
7.1.3 Booking dates table: This table show the booking details.
45
7.1.4 Booking Table:
46
Chapter8 Coding
The coding step of the development phase translates the software design into a programming
language that can be executed by a computer .
Top- down and bottom-up approach are strategies of information processing and knowledge
ordering.
A top-down approach is essentially breaking down a system to gain insight into its
compositional sub-systems. In a top-down approach an overview of the system is first
formulated, specifying but not detailing any first-level subsystems. Each subsystem is then
refined in yet greater detail, sometimes in many additional subsystem levels, until the entire
specification is reduced to base elements.
A bottom-up approach is essentially piecing together systems to give rise to grander systems,
thus making the original systems sub-systems of the emergent system. In a bottom-up
approach the individual base elements of the system are first specified in great detail. These
elements are then linked together to form larger subsystems, which then in turn are linked,
sometimes in many levels, until a complete top-level system is formed.
47
On hall ticket booking system web application has used top-down approach. In this
system, firstly understand the problem. The major step in the development process is to
realize exactly what the problem to be solved is really about. These first thoughts give us
valuable information about the purpose of the application. Another valuable source of
information is the end users that are going to use the application. It is always a good idea to
involve the end users at an early stage of the development process to make sure that your
application solves the correct problem.Create a database. In this database, create tables for all
subsystems Specifying each and every field of all these tables in detail. Specify the primary
key and foreign keys of each table in the database. Now specify the relationships between
these tables in the database. Specify which field of which table is related with which field of
another table and how. In this way, link each table of the database with each-other. Thus, the
development of Management System follows top-down approach.
By identifying how the application is going to be used and which routines the users will
perform with the system, we get a good idea of the data our application is going to handle.
Designing the tables will often be the most difficult part of the entire application development
process. Getting our table design right is crucial as the rest of the application is built on top of
the tables.
It is also important that we identify the forms and reports that are needed. This is the only
way we can design the underlying system to provide the information necessary in them.
The most important results of this step are a clear picture of...
When you have completed this step, test your results with the users/customers. Create a
requirements specification together with your customer. The requirements specification can
be made as a description of criteria which must be fulfilled.
48
Our tables and the relations between them make up the foundation of our application. A bad
table design affects the whole application. This is why it is important to analyze our data and
break it into tables before you create any other application objects
Defining relations between our tables are very important. You should make sure that our
tables adhere to the first three normal forms. This brings many benefits, such as an increase in
consistency and maintainability, a reduction in data redundancy and better search
performance from smaller tables (with narrower rows).
To the users of our application the forms are the application, as it makes up most of the
application’s user interface. Forms are the most important way for our users to interact with
the application. By interacting with forms, the users control the flow of our application. Start
by creating a form that is used to enter data in our application. Add a few sample records of
sample data to our tables. This makes it easier to see whether our (forms and reports) display
the data you want.
For each form, determine what data you want on it, and then create a data source that
contains the data. This is also a test of our tables because you will be able to see if you can
get the data you want from the tables.
Create reports to extract information and present surveys Reports are used to get printed
overview of information extracted from our application’s Data. Typically you produce
applicant list, time period list etc. If you want to check that which Employee has done work
for which client and how much then you can take its report.
Create menus and menu items for accessing the functionality in our application
Creating menus and menu items is the final step before our application development process
is finished. The end users access the functionality in our application through menus. Menus in
hall ticket booking system is very flexible compared to other systems. This application
normally has several menus that are customized specifically to certain uses of the systems.
The Menu items serve as a layer between the end users and the application objects. The menu
items are also used to limit access to the application, based on the privileges defined for the
user.
49
8.2 Modules & Explanation:
Modules:
Login
Registration
User’s profile
Hall details
Check booking details
Booking date management
8.2.1Module description:
1.Home Page:
50
2. Login Form:
51
3.Registration form:
52
4. Admin profile:
53
5. Hall Booking details:
54
6. Hall details:
55
7. Manage user details:
56
8. View Booking details:
57
8.2 Based on dates:
58
9. Open booking for next week:
59
Chapter9 Testing
Testing plays a critical role in quality assurance for software .Due to the limitation of the
verification method for the previous phases, design and requirement fault also appear in the
code. Testing is used to detect these errors, in edition to the error introduced during coding
phase.
Testing is a dynamic method for verification and validation, where the system is to be tested
is executed and behavior of the system is observed. Due to this testing the failure of the
system can be observed, from which the presence of fault can be deduced. However, separate
activities have to be performed to identify the faults.
There are two method of testing: functional and structural. In functional testing, the internal
logic of the system under testing is not considered and the test cases are decided from the
specification or the requirements. It is often called “Black Box Testing”. Equivalence class
partitioning, boundary analysis, and cause effect graphing are examples of methods for
selecting test cases for functional testing. In structural testing, the test cases are decided
entirely on the internal logic of the program or module being tested.
As the goal of testing is to detect any errors in the programs different flavor of testing are
often used. Unit testing are used to test a module or a small collection of modules and the
focus is on detecting coding errors in modules. During integration testing modules are
combined into sub-system, which are then tested. The goal here is to test the system design.
In system testing and acceptance testing, the entire System is tested.
60
The goal here is to test the requirement themselves. Structural testing can be used for unit
testing while at higher level mostly functional testing is used.
System testing is a critical phase in systems implementation. Testing of a system involves
hardware device testing and debugging of computer programs and testing information
processing procedures. Testing can be done with test data, which attempts to simulate all
possible conditions that may arise during processing. The plane for testing are prepared and
then implemented.
61
9.2 Levels of Testing:
In order to uncover the errors present in different phases, we have the concept of
levels of testing. The basic levels of testing are
Client Needs Acceptance
Testing
Unit testing
Unit testing focuses verification effort on the smallest unit of software i.e. the module.
Using the detailed design and the process specifications, testing is done to uncover
errors within the boundary of the module. All modules must be successful in the unit
test before the start of the integration testing begins.
In this project each service can be thought of a module. There are so many modules
like Login, HR Department, Interviewer Section, etc. Each module has been tested by
giving different sets of inputs. When developing the module as well as finishing the
development, the module works without any error. The inputs are validated when
accepting them from the user.
Integration Testing
After unit testing, we have to perform integration testing. The goal here is to see if
modules can be integrated properly, the emphasis being on testing interfaces between
modules. This testing activity can be considered as testing the design and hence the
62
emphasis on testing module interactions.
In this project the main system is formed by integrating all the modules. When
integrating all the modules I have checked whether the integration effects working of
any of the services by giving different combinations of inputs with which the two
services run perfectly before Integration.
System Testing
Here the entire software system is tested. The reference document for this process is
the requirements document, and the goal is to see if software meets its requirements.
Here entire ‘HRRP’ has been tested against requirements of project and it is checked
whether all requirements of project have been satisfied or not
Acceptance Testing
Acceptance Testing is performed with realistic data of the client to demonstrate that
the software is working satisfactorily. Testing here is focused on external behavior of
the system; the internal logic of program is not emphasized.
Test cases should be selected so that the largest number of attributes of an equivalence
class is exercised at once. The testing phase is an important part of software
development. It is the process of finding errors and missing operations and also a
complete verification to determine whether the objectives are met and the user
requirements are satisfied.
A strategy for software testing may also be viewed in the context of the spiral. Unit testing
begins at the vortex of the spiral and, concentrates on each unit, component of the software as
implemented in source code. Testing progresses moving outward along the spiral to
integration testing, where the focus is on designed the construction of the software
63
architecture. Taking another turn outward on spiral, we encounter validation testing, where
requirements established as part of software requirements analysis are validated against the
software that has been constructed. Finally, we arrive at system testing, where the software
and other system elements are tested as a whole. To test computer software, we spiral out
along stream lines that broaden the scope of testing with each turn.
Considering the process from a procedural point of view, testing within the context of
software engineering is actually a series of four steps that are implemented sequentially. The
steps are shown in Figure. Initially, tests focus on each component individually, ensuring that
it functions properly as unit. Hence, the name unit testing. Unit testing makes heavy use of
white-box testing techniques, exercising specific paths in module’s control structure to ensure
complete coverage and maximum error detection.
System Testng
Validaton Testng
Integraton Testng
Validaton testng
Code
Design
64
9.4 Test Cases:
65
(Fig. Test Case for Check-In Form)
There are basically two types of security associated with this system:-
1. Physical security:-
Damage due to natural causes like earth tremor, flooding, water logging, fire hazards,
atmospheric or environmental conditions etc. For overcoming these difficulties the replica of
66
the data are automatically stored at various networks and for environmental conditions Air
conditioning environment is created.
2. Data security:-
1. Data not being available to the authorized person at the time of need.
2. Data becoming available to the unauthorized person.
To overcome these difficulties the following access facilities has been provided:-
i) Identification:-
ii) Authentication:-
System checks the password under the particular user identification. The computer permits
the various resources to the authorized person.
iii) Authorization:-
67
Chapter10 Implementation
System implementation is the stage when the user has thoroughly tested the system and
approves all the features provided by the system. The various tests are performed and the
system is approved only after all the requirements are met and the user is satisfied.
The new system may be totally new; replacing an existing manual or automated system, or it
may a major modification to an existing system. In the either case, proper implementation is
essential to provide a reliable system to meet organization requirements .successful
implementation may not guarantee improvement in the organization using the new system
Implementation is the process of having systems personal check out and put new equipment
to use, train users, install the new application and construct any files of data needed to use it.
This phase is less creative than system design. Depending on the size of the organization that
will be involve in using the application and the risk involved in its use, system developer may
choose to test the operation in only one area of the firm with only one or two persons.
Sometimes, they will run both old and new system in parallel way to compare the results. In
steel other situations, system developers stop using the old systems one day and start using
the new one the next.
A number of popular software packages are designed to produce easily readable site traffic
reports, complete with data graphics and charts to aid in data analysis. As a service to
customers, site hosting companies often offer reports from popular site analysis programs like
Web Trends, often free of charge. Before contracting with an Internet Service Provider (ISP)
for site hosting services, always ask about site analysis services. If you’re ISP or corporate
Web site does not offer a good site traffic analysis package, ask whether the Webmaster can
give you access to a monthly server log of your account. Basic versions of traffic analysis
programs like Web Trends cost about three hundred dollars, and you can run them on a
personal computer if you can gain access to the raw Web server log from your ISP or
corporate webmaster.
68
Top-down implementation:
Top down implementation begins with the user invoked module and works toward the
modules that do not call any other modules. The implementation may proceed depth-first or
breadth-first.
Bottom- Up implementation:
Implementation begins with modules that do not call any other modules and work toward the
main program. Test harness are used to test individual modules. The main module constitutes
Stubs:
supports incremental program development by allowing for error and improvement. A stub
of the algorithm or fulfill all the job requirements. However, it does contain rough versions of
all subprograms and their parameter lists. Furthermore, it can be compiled and run. Extensive
use of procedures and parameter are the difference between stub programs and prototypes.
Quick and dirty prototypes should be improved and rewritten. A stub program helps
demonstrates that a program's structure is plausible. Its procedures and functions are
unsophisticated versions of their final forms, but they allow limited use of the entire program.
In particular, it may work for a limited data set. Often the high-level procedures are ready to
call lower-level code, even if the more detailed subprograms haven't even been written.
69
Chapter11 Maintenance
The maintenance starts after the final software product is delivered to the client. The
maintenance phase identifies and implements the change associated with the correction of
errors that may arise after the customer has started using the developed software. This also
maintains the change associated with changes in the software environment and customer
requirements. Once the system is a live one, Maintenance phase is important. Service after
sale is a must and users/ clients must be helped after the system is implemented. If he/she
faces any problem in using the system, one or two trained persons from developer’s side can
be deputed at the client’s site, so as to avoid any problem and if any problem occurs
Even though the definition of equivalence partitioning states that testing one value from a
class is equivalent to testing any other value from that class, we need to look at the
boundaries of equivalent classes more closely. This is so since boundaries are more error
prone.
To design two valid cases at both the ends test cases using boundary value analysis, for a
range of values,
70
11.1 Cause Effect Analysis:
The main drawback of the previous two techniques is that they do not explore the
combination of input conditions.
Cause effect analysis is an approach for studying the specifications carefully and
identifying the combinations of input conditions (causes) and their effect in the
form of a table and designing test cases
It is suitable for applications in which combinations of input conditions are few and
readily visible.
This is a rigorous approach, recommended for complex systems only. In such systems the
number of inputs and number of equivalent classes for each input could be many and hence
the number of input combinations usually is astronomical. Hence we need a systematic
approach to select a subset of these input conditions.
Software maintenance is widely accepted part of SDLC now a days. It stands for all the
modifications and updations done after the delivery of software product. There are number
of reasons, why modifications are required, some of them are briefly mentioned below:
Market Conditions - Policies, which changes over the time, such as taxation and
newly introduced constraints like, how to maintain bookkeeping, may trigger need
for modification.
Client Requirements - Over the time, customer may ask for new features or
functions in the software.
Organization Changes - If there is any business level change at client end, such as
reduction of organization strength, acquiring another company, organization
venturing into new business, need to modify in the original software may arise.
71
Types of maintenance:
In a software lifetime, type of maintenance may vary based on its nature. It may be just a
routine maintenance tasks as some bug discovered by some user or it may be a large event in
itself based on maintenance size or nature. Following are some types of maintenance based
on their characteristics:
72
Cost of Maintenance:
Reports suggest that the cost of maintenance is high. A study on estimating software
maintenance found that the cost of maintenance is as high as 67% of the cost of entire
software process cycle.
On an average, the cost of software maintenance is more than 50% of all SDLC phases.
There are various factors, which trigger maintenance cost go high, such as:
73
Dependence on external environment
Staff reliability and availability
Maintenance Activities
IEEE provides a framework for sequential maintenance process activities. It can be used in
iterative manner and can be extended so that customized items and processes can be
included.
Analysis - The modification is analyzed for its impact on the system including safety
and security implications. If probable impact is severe, alternative solution is looked
for. A set of required modifications is then materialized into requirement
specifications. The cost of modification/maintenance is analyzed and estimation is
concluded.
74
Design - New modules, which need to be replaced or modified, are designed against
requirement specifications set in the previous stage. Test cases are created for
validation and verification.
Implementation - The new modules are coded with the help of structured design
created in the design step.Every programmer is expected to do unit testing in parallel.
Acceptance Testing - After testing the system internally, it is tested for acceptance
with the help of users. If at this state, user complaints some issues they are addressed
or noted to address in next iteration.
Delivery - After acceptance test, the system is deployed all over the organization
either by small update package or fresh installation of the system. The final testing
takes place at client end after the software is delivered.
Training facility is provided if required, in addition to the hard copy of user manual.
Software Re-engineering
When we need to update the software to keep it to the current market, without impacting its
functionality, it is called software re-engineering. It is a thorough process where the design
of software is changed and programs are re-written.
Legacy software cannot keep tuning with the latest technology available in the market. As
the hardware become obsolete, updating of software becomes a headache. Even if software
grows old with time, its functionality does not.
For example, initially Unix was developed in assembly language. When language C came
into existence, Unix was re-engineered in C, because working in assembly language was
difficult.
Other than this, sometimes programmers notice that few parts of software need more
maintenance than others and they also need re-engineering.
75
Re-Engineering Process
Reverse Engineering
It is a process to achieve system specification by thoroughly analyzing, understanding the
existing system. This process can be seen as reverse SDLC model, i.e. we try to get higher
abstraction level by analyzing lower abstraction levels.
76
Program Restructuring
It is a process to re-structure and re-construct the existing software. It is all about re-
arranging the source code, either in same programming language or from one programming
language to a different one. Restructuring can have either source code-restructuring and
data-restructuring or both.
Re-structuring does not impact the functionality of the software but enhance reliability and
maintainability. Program components, which cause errors very frequently can be changed,
or updated with re-structuring.
The dependability of software on obsolete hardware platform can be removed via re-
structuring.
Forward Engineering
Forward engineering is same as software engineering process with only one difference – it is
carried out always after reverse engineering.
77
Component reusability
A component is a part of software program code, which executes an independent task in the
system. It can be a small module or sub-system itself.
Example
The login procedures used on the web can be considered as components, printing system in
software can be seen as a component of the software.
Components have high cohesion of functionality and lower rate of coupling, i.e. they work
independently and can perform tasks without depending on other modules.
In OOP, the objects are designed are very specific to their concern and have fewer chances
to be used in some other software.
In modular programming, the modules are coded to perform specific tasks which can be
used across number of other software programs.
There is a whole new vertical, which is based on re-use of software component, and is
known as Component Based Software Engineering (CBSE).
78
Reuse Process:
Two kinds of method can be adopted: either by keeping requirements same and adjusting
components or by keeping components same and modifying requirements.
Design - This is also a standard SDLC process step, where requirements are defined
in terms of software parlance. Basic architecture of system as a whole and its sub-
systems are created.
Specify Components - By studying the software design, the designers segregate the
entire system into smaller components or sub-systems. One complete software
design turns into a collection of a huge set of components working together.
79
Chapter12 Scope of the Project
The Online Hotel Management System can help the different organization in reducing the
overhead of engaging too many customer in the manually booking procedure and the
consumed time and money. This system can also help in the Government sector as well as
private for making conferences. They can easily book halls for their meetings, and it will
surely save their time also.
Though there are many online systems available on internet but this can compete with them
with some advancement in its functionality and can be used by any hotel organization to
maintain their customer’s record and online booking process.
80
Chapter13 Limitations
Since, every system has some limitations so our proposed system is also not untouchable in
this regard. Although it includes every kind of features but it can’t be used with a huge data
where number of users are very large, because the data base used in this system is an average
one.
Data base may be the problem in future days when the applicants will be increases. That
might be a problem. That is another limitation of the project. If the applicants will increase
then it will be tuff to store the whole data in the data base and it will also tuff to gathering the
information
Problems of security: Various sites are not properly locked at to ensure whether the
customer’s data is safe in cyber world or not.
Wrong assumption: Many people are afraid using Internet because of the assumption
that it is more expensive than the traditional method of dealing. They still prefer going to
hotel to perform booking and other.
81
Chapter14 Conclusion
This project was successfully completed within the time span allotted. The project hall ticket
booking system has been developed in apache xampp server. All the modules are tested
separately and put together to form the main system. Finally the system is tested with real
data and everything worked successfully. Thus the system has fulfilled the entire objective
identified.
The system had been developed in an attractive dialogs fashion. So user with minimum
knowledge about computers can also operate the system easily. It will make easy
interactions between users and store. The speed and accuracy are maintained in proper way.
Overall the Online System procedure the online features and the customer to save the time,
effort, and money.
82
Chapter15 Bibliography
REFERENCES :
Lee Purcell, Mary Jane Mara, “The ABCs of JavaScript”, Third Edition, 1996.
Roger Pressman , “Software Engineering”, Fourth Edition, published by Tata Mc
Graw Hill, Fifth Edition, 2001.
Steven Holzener , “HTML Black Book” , by Coriolis Group Books , Second Edition,
2000
WEBSITES:
http:/www.javatpoint.com
www.w3schools.com
83