1HALL BOOKING REPORT (Harsh Vardhan Manral)

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 81

PROJECT REPORT

On

“ONLINE HALL BOOKING SYSTEM”

Submitted in the partial fulfillment of the requirements


Of the award of the degree of Bachelor in Computer Applications.

PROJECTGUIDE SUBMITTED BY

Mr. NANDAN SINGH DASILA HARSH VARDHAN MANRAL


Roll no- 170610330004

1
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 of the degree of BACHELOR OF COMPUTER APPLICATION, submitted at
AMRAPALI INSTITUTE OF MANAGEMENT AND COMPUTER
APPLICATIONis anauthentic work done by me during period from 1stJanuary 2020 to 15th
May 2020

Project Guide: Signature of the Student:

Mr. Nandan singh dasila Harsh Vardhan Manral

Amrapali Institute of Applied Sciences Roll No. 170610330004


Haldwani

2
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 wouldliketothanktomyguideMr.Nandan Singh Dasilaforhisconstantsupportinthe making of the


project.As a part of University Curriculum, a final year project is a paramount
importancetoanBCAstudent’scurriculumandbeingournativeeffortintothisproject 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.

Iamthankfultoallstaffmemberswhohelpedmewheneverrequired, during my project.

Even though I expressed my gratitude to every person, who helped me in reaching this stage,
buttheremightbeafew,who’dbeenleftout,whohelpedmewithoutmyknowledge,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
usindebuggingthecodeerrorsandaboveallthefacultyofmyDepartmentofComputer Science
Amrapali Institute of Applied Sciences who have always provided their guidance, support and
well wishes.

HARSH VARDHAN MANRAL

3
Table of Contents

CHAPTER 1 -COMPANYPROFILE7
1.1 History …………………………………………………………..…….…………7

CHAPTER 2 -INTRODUCTION OF PROJECT8-9

2.1 Live Project on Hall Ticket Booking and Management System …………….….8

2.1.1Introduction……………………………………………………….…….8

2.1.2 Purpose of The web Application..............................................................8

2.1.3 Scope of the Proposed web Application...……………….… …….........9

2.1.4 Overview of Proposed overview Application………...…………...……9

CHAPTER 3 -REQUIREMENTANALYSIS10-11

3.1 Functional Requirements......................................................................................10

3.2 Non-Functional Requirements………………………………....………………..10

3.3 Hardware Requirements…………………………………………………….......10

3.4 Software Requirement………………………………..........................................10

3.5Tools and Environment…………………………………………………...……..11

CHAPTER4-REQUIREMENT SPECIFICATION DOCUMENT12-13

4.1 General description of project…………………………………………………..12

4.2 Certain specific requirements……………………………………………….......13

CHAPTER5 -SOFTWARE DESIGN14-22

5.1 Introduction………………………………………………………………..........14

5.3 DFD………………………………………………………………………….….15

5.4 User Interface Design………………………………..…………………….……17

5.5 ER Diagram…………………………………………………………….….…....20

5.6 Use Case Diagram………………………………………...………….….…….…21


CHAPTER 6 -TOOLS AND LANGUAGES23-42

6.1 HTML……………………………………………………….…………………23

6.2 CSS……………………………………………………………….……….…..24

6.3 JavaScript……………………..………………………………..….……………27

6.4 Bootstrap………………………………………………………………………..30
4
6.5 Php………………………………………………………………...……….........33

6.6 Ajax……...………………………………………………….……...……...…....36

6.7 XAMPP Server….………………………………………………………………38

CHAPTER 7 -DATABASE DESIGN43-46

7.1 Tables for Project…………….…………………………….……………....….... 43

CHAPTER 8 -CODING47-59

8.1 Approach used……………………….……………………….…………………..47

8.2 Module and Explanation………….…………………….………………….….....50

CHAPTER 9 -TESTING60-67

9.1 Test criteria…………………...………………………………………………….60

9.2 Levels of testing……………………………………………………………..…...62

9.3 Test information flow…………………………..……………………………..…63

9.4 Test Cases………………………………….………..………………………...…65

9.5 Application Security………………………………….………..…………..…….66

CHAPTER10 -IMPLEMENTATION68-69

CHAPTER 11 -MAINTENANCE70-79

CHAPTER 12 -SCOPE OF THE PROJECT80

CHAPTER 13 -LIMITATIONS 81

CHAPTER 14 -CONCLUSION 82

CHAPTER 15 -BIBLIOGRAPHY83

5
Chapter1Company 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 mid1997 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 provides serviceslike
systems consultancy, hardware and software maintenance, systems integration and
reengineering,countrywidenetworkservices,educationandtrainingaswellasoffshore project
development.

6
Chapter2Introduction of Project

2.1. Live Project Profile of Hall Booking System

Thiswebapplicationisthebestapplicationforcompany,thisapplicationprovidesthebest features and


facilities to the customer.

Through this customer can easilybook the hall which is they want for his function. With the
helpofthisapplicationadmincanmanagethebookingfunctionalityandcanviewthe 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.

2.1.1 Introduction to Project

Introduction:
Thiswebapplicationisaservicetoprovidevariousfunctionalitytothecustomer&
employee.Itisalsousefultosavetheprecioustimeandenergy.Thisapplicationoffers different
services like employees management, booking system ,booking detailshall details.

2.1.2- Purpose of the Web Application:


1. SECURITY: Security is the main criteria for the proposed system. Since illegal
access may corrupt the database. So security has to be given in this project.

2. EFFICIENCY: The basic need of this application is efficiency. The application


should be efficientsothatwheneveranewusersubmitshis/herdetailsthedatabaseisupdated
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.

2.1.3-Scope of the proposed Application:

7
Though there are many applications available on system but this can compete with them with
someadvancementinitsfunctionalityandcanbeusedbyanyauthenticateadminto maintain their
customer’s and employee’s account.

The basic functionalities of the system are:

• User Registration

• Login

• Update Profile

• View Profile

• Logout

2.1.4-Overview of proposed Application:

1. MENU DRIVEN:
Theprojectusesmenuthroughoutwhichwecanchooserequiredoptions.Menusareself-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.

A confirmation is also provided for the exit of the application.

3. GRAPHICAL USER INTERFACE:


User is provided with a graphical interface in which user can select from various options and
can perform for desired operations with perfect understanding of the menu selected.

4. MULTIPLE DOCUMENT INTERFACE:


The package provides a multiple document interface to the user. The user can view more than
one package or pages at the same time.

5. SECURITY AND ACCESS:


Apasswordformhasbeenprovidedatthebeginningofthe package.Enteringthecorrect password will take
user to the main user page

8
Chapter3Requirement Analysis

3.1-Functional Requirements:

• Customer can request details of the service available.


• Employee can view Hall details.
• Customer can cancel the service also.

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.

3.3 Hardware Requirements:

Minimum Hardware Requirement


RAM – 256 MB or More
PROCESSOR – P IV 2.6 GHz

3.4 Software Requirements:

Minimum Software Requirements: -

Operating System –Windows NT/XP/7 and Other Versions

Server -Xampp and wampp server


3.5 Tools and Environment:

WEB Server –Apache Server


Server- xampp server and wammp server
9
Client Side – HTML5
Server Side- PHP

10
Chapter4Requirement
SpecificationDocument

Purpose of this Document:


The purpose of this SRS document is providing a detailed overview of our software product,
its parameters and goals. This document describes the project's target audience and its user
interface,hardwareandsoftwarerequirements.Itdefineshowanorganizationhandles customers.

Scope of the Development Project:


Our project goals are to create a WebApplication for booking the hall by the user and
getdetails about the hallin the following manner:-

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.

Administrator: Control the whole application.

The searching of record has been made quite simple as all the details of the customer
canbeobtainedbysimplykeyingintheidentificationofthatcustomer.Similarly,record maintenance
and update can also be accomplished by using the identification of the customer
withallthedetailsbeingautomaticallygenerated.Thesedetailsarealsobeingpromptly automatically
updated in the master file thus keeping the record absolutely up-to-date.

4.1 General description of project:

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

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.

Toviewinformation,usermusthavevalidusernameandpassword.Onlyvaliduserscan logged successfully


and view information available on the database.

11
4.2 Certain specific requirements:

4.2.1 Inputs and Outputs:

InputData:thesoftwarewillbekeyboardandmousedriven,allinputdataarefromleft mouse clicks on


context buttons such as directional buttons or menu options. Incase of filling information
keyboard is required.

Output Data: Facts and graphics will be displayed to the monitor.

4.2.2 User interface:


Theuserinterfaceforthisproductwillbegraphicalandrelativelysimpleinorderto accommodate
the target audience. All input to our program will be achieved through a mouse as well as
keyboard while all output would be via a monitor.

4.2.3 Hardware interaction:

OS: Windows server 2003

HDD: Minimum 20GB

RAM: 256 MB

Color: 16 bit

Platform: xampp, wampp server

4.2.4 Software interaction:-Apache xammp server

12
Chapter5Software 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
FlowDiagram(DFD)isadiagrammaticrepresentationoftheinformationflowswithina system,
showing:

• how information enters and leaves the system,


• what changes the information, Where information is
stored.

5.2-Scope:
Though there are many applications available on marketbut 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 andservices.

The basic functionalities of the system are:

• User Registration
• Login
• Update profile
• View booking details
• View profile
• Logout

13
5.3 -Data Flow Diagram (DFD):

CONTEXT [0-Level] Diagram DFD:

User Login/ registration Hall details Admin

Login user details

Cancel

Hall details

Login admin

User management

Open booking

Hall Booking View booking inf.

System

14
1-LEVEL DFD

User Interface Design:

Admin
User
login /registration info.

Hall info

Cancel request response

Authentication authentication status View hall details

Admin info.

Admin login /registration user booking

response

request
Hall booking
Admin

booking details

Open booking
Check
booking

Booking details open booking


User
management
Admin

User details

User Information

15
Userinterfacedesignisthedesignofapplicationwiththefocusonuser’sexperienceand interaction. The
goal of user interface design is to make the user's interaction as simple and
efficientaspossiblethegoalofuserinterfacedesignistomaketheuser'sinteractionas 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).

XAMPPismeantonlyfordevelopmentpurposes.Ithascertainconfigurationsettingsthat
makeiteasytodeveloplocallybutthatareinsecureifyouwanttohaveyourinstallation 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. Alternativelyyoucanuse
WAMP, MAMP or LAMP whicharesimilarpackageswhichare more suitable for production.

Fig. 5.1

]
Application Design:
Xampp server:

XAMPPisbya freeandopen-source cross-platform webserver solutionstackpackage developed


Apache Friends,consisting mainly of the Apache HTTP Server, MariaDB database, and
interpreters for scripts written in

16
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 asWordpressand 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.

The term can be unofficially broken down as follows:


Letter Meaning

X as an ideographic letter referring to cross-platform

A Apache or its expanded form, Apache HTTP Server

M MariaDB

P PHP

P PERL

MySQLwasreplacedwithMariaDBon2015-10-19andbeginningwithXAMPPversions 5.5.30 and


5.6.14effectively altering the meaning of the acronym.

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. Selfcontained, 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:

17
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.

XAMPP also provides support for creating and manipulating databases in


MariaDB and SQLite among others.

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.

5.5ER-DIAGRAM:

18
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

5.6USE- CASE DIAGRAM:


19
5.6.1USE- CASE DIAGRAM FOR USER:

REGISTRSTION

USER

LOGIN

BOOKING

BOOKING_DATES

HALL_ID

SLOAT_ID

5.6.2USE- CASE DIAGRAM FOR ADMIN:

20
LOGIN

ADMIN

MANAGE_BOOKING

User
mangement

MANAGE
HALL_DETAILS

CHECK

BOOKING_DETAIL
S

21
Chapter6Tools 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 referstothewayinwhichWebpages(HTMLdocuments)arelinked 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
tosimply"mark-up"atextdocumentwithtagsthattellaWebbrowserhowto structure it to display.

• HTML stands for Hyper Text Markup Language


• HTML describes the structure of Web pages using markup
• HTML elements are the building blocks of HTML pages
• HTML elements are represented by tags
• HTML tags label pieces of content such as "heading", "paragraph", "table", and so on.
• Browsers do not display the HTML tags, but use them to render the content of the
page.

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.

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

Line Break Tag:


Whenever you use the <br /> element, anything following it starts from the next line. This
tag is an example of an empty element, where you do not need opening and closing tags, as
there is nothing to go in between them.
22
The <br /> tag has a space between the characters br and the forward slash. If you omit this
space,olderbrowserswillhavetroublerenderingthelinebreak,whileifyoumissthe forward slash
character and just use <br> it is not valid in XHTML.

6.2 CSS (Cascading Style Sheets):

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:
• CSSsavestime −YoucanwriteCSSonceandthenreusesamesheetinmultiple HTML pages.
You can define a style for each HTML element and apply it to as many Web pages as
you want.

• Pagesloadfaster −IfyouareusingCSS,youdonotneedtowriteHTMLtag
attributeseverytime.JustwriteoneCSSruleofatagandapplyittoallthe occurrences of that
tag. So less code means faster download times.

• Easymaintenance −Tomakeaglobalchange,simplychangethestyle,andall elements in all


the web pages will be updated automatically.

• Superior styles to HTML − CSS has a much wider array of attributes than HTML,
soyoucangiveafarbetterlooktoyourHTMLpageincomparisontoHTML attributes.

• MultipleDeviceCompatibility −Stylesheetsallowcontenttobeoptimizedfor
morethanonetypeofdevice.ByusingthesameHTMLdocument,different versions of a
website can be presented for handheld devices such as PDAs and cell phones or for
printing.

23
• Global web standards − Now HTML attributes are being deprecated and it is being
recommendedtouseCSS.SoitsagoodideatostartusingCSSinalltheHTML pages to make
them compatible to future browsers.

A CSS rule-set consists of a selector and a declaration block:

The selector points to the HTML element you want to style.

The declaration block contains one or more declarations separated by semicolons.

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:
CSS Selectors:
CSS selectors are used to "find" (or select) HTML elements based on their element name, id,
class, attribute, and more.

The element Selector:

The element selector selects elements based on the element name.

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.
24
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;
}

The class Selector:

The class selector selects elements with a specific class attribute.

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; }

6.3 Java Script:


What is JavaScript ?

JavaScript is a dynamic computer programming language. It is lightweight and most


commonly used as a part of web pages, whose implementations allow client-side script
to interact with the user and make dynamic pages. It is an interpreted programming
language with object-oriented capabilities.
JavaScriptwasfirstknownas LiveScript, butNetscapechangeditsnametoJavaScript,
possiblybecauseoftheexcitementbeinggeneratedbyJava.JavaScriptmadeitsfirst appearance in
Netscape 2.0 in 1995 with the name LiveScript. The general-purpose core of the language
has been embedded in Netscape, Internet Explorer, and other web browsers.

The ECMA-262 Specification defined a standard version of the core JavaScript language.

25
• JavaScript is a lightweight, interpreted programming language.
• Designed for creating network-centric applications.
• Complementary to and integrated with Java.
• Complementary to and integrated with HTML.
• Open and cross-platform.

Client-Side JavaScript:
Client-sideJavaScriptisthemostcommonformofthelanguage.Thescriptshouldbe
includedinorreferencedbyanHTMLdocumentforthecodetobeinterpretedbythe browser.

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.

TheJavaScriptclient-sidemechanismprovidesmanyadvantagesovertraditionalCGI 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
userinitiated 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.

JavaScript is used to create interactive websites. It is mainly used for:

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.
26
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
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.

• JavaScriptcannotbeusedfornetworkingapplicationsbecausethereisnosuch support
available.

• JavaScriptdoesn'thaveanymulti-threadingormultiprocessorcapabilities.Biggest
disadvantages to a JavaScript, code visible to everyone.

Code Always Visible: The biggestdisadvantagesis 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.

JavaScript Development Tools:


OneofmajorstrengthsofJavaScriptisthatitdoesnotrequireexpensivedevelopment
tools.YoucanstartwithasimpletexteditorsuchasNotepad.Sinceitisaninterpreted language inside
the context of a web browser, you don't even need to buy a compiler.

Tomakeourlifesimpler,variousvendorshave comeupwithveryniceJavaScripteditng tools. Some of


them are listed here –

27
MicrosofFrontPage −MicrosofhasdevelopedapopularHTMLeditorcalledFrontPage. FrontPage
also provides web developers with a number of JavaScript tools to assist in the creaton of
interactve websites.

MacromediaDreamweaverMX −MacromediaDreamweaverMXisaverypopularHTML and


JavaScript editor in the professional web development crowd. It provides several handy
prebuiltJavaScriptcomponents,integrateswellwithdatabases,andconformstonew standards
such as XHTML and XML.

MacromediaHomeSite5 − HomeSite5 isa well-likedHTMLandJavaScripteditorfrom Macromedia


that can be used to manage personal websites efectvely.

Where is JavaScript Today?

The ECMAScript Edition 5 standard will be the first update to be released in over four
years. JavaScript2.0conformstoEdition5oftheECMAScriptstandard,andthedifference
between the two is extremely minor.

The specification for JavaScript 2.0 can be found on the following site:
http://www.ecmascript.org/

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. Ituses

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 Componentsand Bootstrap

Plugins.

History:
Bootstrap was developed by Mark Otto and Jacob Thornton at Twitter. It wasreleased

as an open source product in August 2011 on GitHub.

28
Why Use Bootstrap?

• Mobilefirstapproach −Bootstrap3,frameworkconsistsofMobilefirststyles throughout


the entire library instead them of in separate files.

• Browser Support − It is supported by all popular browsers.

• 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.

• Responsivedesign −Bootstrap'sresponsiveCSSadjuststoDesktops,Tabletsand
Mobiles.

• 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.
• It also provides web based customization.

• And best of all it is an open source.

29
What Bootstrap Package Includes?

• Scaffolding − BootstrapprovidesabasicstructurewithGridSystem,linkstyles, 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.

• Components − Bootstrap contains over a dozen reusable components built to provide


iconography,dropdowns,navigation,alerts,pop-overs,andmuchmore.Thisis covered in
detail in the section Layout Components.

• JavaScript Plugins − Bootstrap contains over a dozen custom jQuery plugins. You
caneasilyincludethemall,oronebyone.Thisiscoveredindetailsinthe section Bootstrap
Plugins.

• Customize − You can customize Bootstrap's components, LESS variables, and


jQuery pluging to get your very own version.

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.

Bootstrap was originally created by a designer and a developer at Twitter in mid-2010.


Before being an open-sourced framework, Bootstrap was known as Twitter Blueprint.

You can save a lot of time and effort with Bootstrap. So bookmark this website and continue
on.

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.

30
• 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.

6.5 PHP (Hyper TextPreprocessor):

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.

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

• PHPisaserversidescriptinglanguagethatisembeddedinHTML.Itisusedto manage
dynamic content, databases, session tracking, even build entire e-commerce sites.

• It is integrated with a number of popular databases, including MySQL, PostgreSQL,


Oracle, Sybase, Informix, and Microsoft SQL Server.

• PHPispleasinglyzippyinitsexecution,especiallywhencompiledasanApache
moduleontheUnixside.TheMySQLserver,oncestarted,executesevenvery complex
queries with huge result sets in record-setting time.

• 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 is forgiving: PHP language tries to be as forgiving as possible.

• PHP Syntax is C-Like.

Common uses of PHP:


• PHP performs system functions, i.e. from files on a system it can create, open, read,
write, and close them.

• 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.

31
• You add, delete, modify elements within your database through PHP.

• Access cookies variables and set cookies.

• Using PHP, you can restrict users to access some pages of your website.

• It can encrypt data.

32
Characteristics of PHP:
Five important characteristics make PHP's practical nature possible −

• Simplicity
• Efficiency  Security
• Flexibility
• Familiarity

"Hello World" Script in PHP:

TogetafeelforPHP,firststartwithsimplePHPscripts.Since"Hello,World!"isan essential example, first we


will create a friendly little "Hello, World!" script.

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>

<?php echo "Hello, World!";?>

</body>

</html>

It will produce following result –

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.

AllPHPcodemustbeincludedinsideoneofthethreespecialmarkuptagsATEare recognised by the


PHP Parser.

33
What is a PHP File?
• PHP files can contain text, HTML, CSS, JavaScript, and PHP code
• PHP code are executed on the server, and the result is returned to the browser as plain
HTML
• PHP files have extension ".php"

What Can PHP Do?


• PHP can generate dynamic page content
• PHP can create, open, read, write, delete, and close files on the server
• PHP can collect form data
• PHP can send and receive cookies
• PHP can add, delete, modify data in your database
• PHP can be used to control user-access
• PHP can encrypt data
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:

• Update a web page without reloading the page


• Request data from a server - after the page has loaded  Receive data from a
server - after the page has loaded
• Send data to a server - in the background

AJAX = Asynchronous JavaScript And XML.

AJAX is not a programming language.

AJAX just uses a combination of:

• 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.

34
How AJAX Works:

• 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

XMLHttpRequest Object Properties:

Property Description

Defines a function to be called when the readyState


Onreadystatechange property changes

readyState Holds the status of the XMLHttpRequest.


0: request not initialized
1: server connection established
2: request received
3: processing request
4: request finished and response is ready

responseText Returns the response data as a string

35
responseXML Returns the response data as XML data

Status Returns the status-number of a request


200: "OK"
403: "Forbidden"
404: "Not Found"
For a complete list go to the Http Messages Reference

Example:
<script> function loadDoc() {var xhttp

= new

XMLHttpRequest();xhttp.onreadystate

change = function()

if (this.readyState == 4 && this.status == 200)

{document.getElementById("demo").innerHTML = this.responseText;

};

xhttp.open("GET", "ajax_info.txt", true);xhttp.send();

</script>

6.7 XAMPP Server:

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
36
components as XAMPP, it makes transitioning from a local test server to a live server is
extremely easy as well.

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.

2. MySQL: Every web application, howsoever simple or complicated, requires a


database for storing collected data. MySQL, which is open source, is the world’s most
popular database management system. It powers everything from hobbyist websites to
professional platforms like WordPress.

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.

4. Perl: Perl is a high-level, dynamic programming language used extensively in


network programming, system admin, etc. Although less popular for web development
purposes, Perl has a lot of niche applications.

Different versions of XAMPP may have additional components such as phpMyAdmin,


OpenSSL, etc. to create full-fledged web servers.

Working with XAMPP:


XAMPP is an AMP stack which lets you install Apache, MySQL and PHP in your computer
together with some other useful software. It has been designed to provide you an easy
installation experience. It’s free and available for Windows, Mac OS and Linux.

Downloading and Installing XAMPP:


Go to XAMPP web site and download the installer based on your operating system.
Installation should be similar to a normal software installation you do in your operating
system.

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.

Starting Apache and MySQL:


Instructions provided in this article are based on Windows operating system but the
approaches should be similar for other operating systems.

37
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.

Apache Is Not Starting Error:


Sometimes you would experience that even after clicking Start button several times, Apache
is not starting. This is usually because some other service is running at the port required by
Apache which is 80 by default. An easy reproducible way for this error is starting Skype
before starting Apache.

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
(xamppportcheck.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.

Making Requests to the Server:


Once you started Apache in control panel, type http://localhost in your web browser. This
would bring you a web page that lists XAMPP related details.
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.
38
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.

Root URL and Home Page Content:


In above example, root URL of your web site is http://localhost/learnphp/ and it’s generally
expected to see home page of the web site once root URL is typed in the web browser.

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/.

Locations of Configuration Files:


Based on your requirements, sometimes you would need to change default settings of your
web and database servers. Usually this is done by altering their configuration files. In
XAMPP, Apache, PHP and MySQL configurations files are located in following locations
(This assumes XAMPP installation directory as C:\Program Files\xampp).

Apache Conf File (httpd.conf): C:\Program Files\xampp\apache\conf\httpd.conf

PHP Conf File (php.ini): C:\Program Files\xampp\apache\bin\php.ini

MySQL Conf File (my.cnf): C:\Program Files\xampp\mysql\bin\my.cnf

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.

39
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.

40
Chapter7DataBase 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
elementsanddatastructures.Thedatadictionaryforthecurrentsystemhasbeengivenas under

7.1 Tables for Project:

7.1.1 login table:This table maintains details of loginuser.

41
7.1.2 Hall details Table:This table maintains details of Halls.

42
7.1.3 Booking dates table: This table show the booking details.

43
7.1.4 Booking Table:

44
Chapter8Coding

The coding step of the development phase translates the software design into a programming
language that can be executed by a computer.

8.1Approaches Used:

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
compositionalsub-systems.Inatop-downapproachanoverviewofthesystemisfirst formulated,
specifying but not detailing any first-level subsystems. Eachsubsystem 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,
thusmakingtheoriginalsystemssub-systemsoftheemergentsystem.Inabottom-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.

Onhallticketbookingsystemwebapplicationhasusedtop-downapproach.Inthis
system,firstlyunderstandtheproblem.Themajorstepinthedevelopmentprocessisto
realizeexactlywhattheproblemtobesolvedisreallyabout.Thesefirstthoughtsgiveus
valuableinformationaboutthepurposeoftheapplication.Anothervaluablesourceof information is the

45
end users that are going to use the application. It is always a good idea to
involvetheendusersatanearlystageofthedevelopmentprocesstomakesurethatyour 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 keyand 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 ofManagement System follows
top-down approach.

Byidentifyinghowtheapplicationisgoingtobeusedandwhichroutinestheuserswill 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 onlyway
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...

I. the problem the system is going to solve


II. the functionality of the system, that is, how will the application solve the problem
III.who is going to use the system

Other results of this step are first ideas of...

 which tables are necessary (and relations between them)


 which forms and reports the users need
 the structure of the menus that gives access to the entire application

Whenyouhavecompletedthisstep,testyourresultswiththeusers/customers.Createa requirements
specification together with your customer. The requirements specification can be made as a
description of criteria which must be fulfilled.

Create tables to hold our data

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

Definingrelationsbetweenourtablesareveryimportant.Youshouldmakesurethatour 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).

46
Create forms for interacting with the customer’s

Totheusersofourapplicationtheformsaretheapplication,asitmakesupmostofthe 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.

Foreachform,determinewhatdatayouwantonit,andthencreateadatasourcethat 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.

CreatereportstoextractinformationandpresentsurveysReportsareusedtogetprinted
overviewofinformationextractedfromourapplication’sData.Typicallyyouproduce 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
hallticketbookingsystemisveryflexiblecomparedtoothersystems.Thisapplication 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.

8.2Modules & Explanation:


Modules:

Overall Description of Application:

 Login
 Registration
 User’s profile
 Hall details
 Check booking details
 Booking date management

47
8.2.1Module description:

1.Home Page:

48
2. Login Form:

49
3.Registration form:

50
4. Admin profile:

51
5. Hall Booking details:

52
6. Hall details:

53
7. Manage user details:

54
8. View Booking details:

8.1 Based on user id:

55
8.2 Based on dates:

8.3 Based on hall id:

56
9. Open booking for next week:

57
Chapter9Testing

Testingplaysacriticalroleinqualityassuranceforsoftware.Duetothelimitationofthe 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
isexecutedandbehaviorofthesystemisobserved.Duetothistestingthefailureofthe 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,boundaryanalysis,andcauseeffectgraphingareexamplesofmethodsfor
selectingtestcasesforfunctionaltesting.Instructuraltesting,thetestcasesaredecided 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
focusisondetectingcodingerrorsinmodules.Duringintegrationtestingmodulesare 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.
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.
Systemtestingisacriticalphaseinsystemsimplementation.Testingofasysteminvolves
hardwaredevicetestinganddebuggingofcomputerprogramsandtestinginformation
processingprocedures.Testingcanbedonewithtestdata,whichattemptstosimulateall possible

58
conditions that may arise during processing. The plane for testing are prepared and then
implemented.

9.1 Test criteria:

 Stability (ST) – Focusing on the application being stable on the device.


 Application Launch (AL) – Once an application is loaded it must start (launch) and
stop correctly in relation to the device and other applications on the device.
 UserInterface(UI)-Theintentistonotspecifyexactlyhowtodesignauser
interfacebutrathertogivegeneralguidelines.Itisexpectedthatpublishersand
networkoperatorswillfurtherdefinethelookandfeelofanapplication'suser interface to
make it more in conformance with their overall look and feel.
 Localization (LO) - Applications that are to be deployed to localities other than their
pointoforiginmustaccountforchangesinlanguage,alphabets,dateandmoney formats, etc.
 Functionality(FN)-Documentedfeaturesareimplementedintheapplicationand work as
expected. Sources for the information are user manuals, formatted application
specification documents and online documentation.
 Connectivity(CO)-Ifanapplicationhascommunicationcapabilitiesthenitmust
demonstrate its ability to communicate over a network correctly. It must be capable of
dealing with both network problems and server-side problems.
 Personal Information Management (PI) - The application accessing user
information needs to be able to do it in an appropriate manner and not to destroy the
information.
 Security (SE) - Listing different security related issues like username and password
of the user tested from the applications.
 Retesting (RE) - Tests specific to retesting only.

Unit testing

 Unit testing focuses verification effort on the smallest unit of software i.e. the module.
Usingthedetaileddesignandtheprocessspecifications,testingisdonetouncover errors
within the boundary of the module. All modules must be successful in the unit test
before the start of the integration testing begins.
59
 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,themoduleworkswithoutanyerror.Theinputsarevalidatedwhen 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
emphasis on testing module interactions.

 Inthisprojectthemainsystemisformedbyintegratingallthemodules.When integrating all


the modules I have checked whether the integration effects working of
anyoftheservicesbygivingdifferentcombinationsofinputswithwhichthetwo 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.Itistheprocessoffindingerrorsandmissingoperationsandalsoa
completeverificationtodeterminewhethertheobjectivesaremetandtheuser requirements
are satisfied.

60
9.3Test Information Flow:

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
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 testedasa whole. To test computer software, we spiralout along
stream lines that broaden the scope of testing with each turn.

Consideringtheprocessfromaproceduralpointofview,testingwithinthecontextof 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.

61
System Testng

Validaton Testng

Integraton Testng

Validaton testng

Code

9.4Test Cases:

62
(Fig. Test Case for Login Form)

(Fig. Test Case for Check-In Form)

9.5 Application Security:

There are basically two types of security associated with this system:-

63
1. Physical security:-

Damageduetonaturalcauseslikeearthtremor,flooding,waterlogging,firehazards, atmospheric or
environmental conditions etc. For overcoming these difficulties the replica of the data are
automaticallystored at various networksand for environmental conditions Air conditioning
environment is created.

2. Data security:-

There are basically two problems associated with 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:-

Unique Ids for the different users have been provided.

ii) Authentication:-

System checks the password under the particular user identification. The computer permits
the various resources to the authorized person.

iii) Authorization:-

The access control mechanism to prevent unauthorized logging to the system

64
65
Chapter10Implementation

Systemimplementationisthestagewhentheuserhasthoroughlytestedthesystemand
approvesallthefeaturesprovidedbythesystem.Thevarioustestsareperformedandthe 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
choosetotesttheoperationinonlyoneareaofthefirmwithonlyoneortwopersons. 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,completewithdatagraphicsandchartstoaidindataanalysis.Asaserviceto 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 giveyou access to a
monthly server log ofyour account. Basic versions of traffic analysis
programslikeWebTrendscostaboutthreehundreddollars,andyoucanrunthemona
personalcomputerifyoucangainaccesstotherawWebserverlogfromyourISPor corporate
webmaster.

Top-down implementation:

66
Topdownimplementationbeginswiththeuserinvokedmoduleandworkstowardthe 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

the final test harness.

Stubs:

Stub programming is the implementation analogue of top-down and stepwise refinement. It

supports incremental program development by allowing for error and improvement. A stub

program is a stripped-down, skeleton version of a final program. It doesn't implement details

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.

67
Chapter11Maintenance

Themaintenancestartsafterthefinalsoftwareproductisdeliveredtotheclient.The

maintenancephaseidentifiesandimplementsthechangeassociatedwiththecorrectionof errors that

may arise after the customer has started using the developed software. This also

maintainsthechangeassociatedwithchangesinthesoftwareenvironmentandcustomer 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

bedeputedattheclient’ssite,soastoavoidanyproblemandifanyproblemoccurs immediate solution

may be provided.

Eventhoughthedefinitionofequivalencepartitioningstatesthattestingonevaluefroma

classisequivalenttotestinganyothervaluefromthatclass,weneedtolookatthe

boundariesofequivalentclassesmoreclosely.Thisissosinceboundariesaremoreerror prone.

Todesigntwovalidcasesatboththeendstest casesusingboundaryvalueanalysis,fora range of values,

• Two valid cases at both the ends

• Two invalid cases just beyond the range limits


11.1 Cause Effect Analysis:

• The main drawback of the previous two techniques is that they do not explore the
combination of input conditions.

68
• Causeeffectanalysisisanapproachforstudyingthespecificationscarefullyand
identifyingthecombinationsofinputconditions(causes)andtheireffectinthe form of a
table and designing test cases

• It is suitable for applications in which combinations of input conditions are few and
readily visible.

11.2 Cause Effect Graphing:

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.

SoftwaremaintenanceiswidelyacceptedpartofSDLCnowadays.Itstandsforallthe 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:

• MarketConditions -Policies,whichchangesoverthetime,suchastaxationand newly


introducedconstraints 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.

• HostModifications -Ifanyofthehardwareand/orplatform(suchasoperating system) of


the target host changes, software changes are needed to keep adaptability.

• 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.

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:

• Corrective Maintenance - This includes modifications and updations done in order


to correct or fix problems, which are either discovered by user or concluded by user
error reports.

69
• Adaptive Maintenance - This includes modifications and updations applied to keep
the software product up-to date and tuned to the ever changing world of technology
and business environment.

• Perfective Maintenance - This includes modifications and updates done in order to


keep the software usable over long period of time. It includes new features, new user
requirements for refining the software and improve its reliability and performance.

• PreventiveMaintenance -Thisincludesmodificationsandupdationstoprevent future


problems of the software. It aims to attend problems, which are not significant at this
moment but may cause serious issues in future.

Cost of Maintenance:
Reportssuggestthatthecostofmaintenanceishigh.Astudyonestimatingsoftware
maintenancefoundthatthecostofmaintenanceisashighas67%ofthecostofentire software process
cycle.

70
Onanaverage,thecostofsoftwaremaintenanceismorethan50%ofallSDLCphases. There are various
factors, which trigger maintenance cost go high, such as:

Real-world factors affecting Maintenance Cost

• The standard age of any software is considered up to 10 to 15 years.


• Older softwares, which were meant to work on slow machines with less memory and
storage capacity cannot keep themselves challenging against newly coming enhanced
softwares on modern hardware.
• As technology advances, it becomes costly to maintain old software.
• Most maintenance engineers are newbie and use trial and error method to rectify
problem.
• Often, changes made can easily hurt the original structure of the software, making it
hard for any subsequent changes.
• Changes are often left undocumented which may cause more conflicts in future.
Software-end factors affecting Maintenance Cost

• Structure of Software Program


• Programming Language
• Dependence on external environment
• Staff reliability and availability

Maintenance Activities
IEEE provides a framework for sequential maintenance process activities. It can be used in
iterativemannerandcanbeextendedsothatcustomizeditemsandprocessescanbe included.

71
These activities go hand-in-hand with each of the following phase:

• Identification & Tracing - It involves activities pertaining to identification of


requirement of modification or maintenance. It is generated by user or system may
itself report via logs or error messages.Here, the maintenance type is classified also.

• 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.Thecostofmodification/maintenanceisanalyzedandestimationis
concluded.

• Design - New modules, which need to be replaced or modified, are designed against
requirementspecificationssetinthepreviousstage.Testcasesarecreatedfor validation and
verification.

• Implementation -Thenewmodulesarecodedwiththehelpofstructureddesign created in


the design step.Every programmer is expected to do unit testing in parallel.

• System Testing - Integration testing is done among newly created modules.


Integration testing is also carried out between new modules and the system. Finally
the system is tested as a whole, following regressive testing procedures.

• 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.

72
• Delivery -Afteracceptancetest,thesystemisdeployedallovertheorganization 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.

• Maintenance management - Configuration management is an essential part of


system maintenance. It is aided with version control tools to control versions,
semiversion or patch management.

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
intoexistence,Unixwasre-engineeredinC,becauseworkinginassemblylanguagewas difficult.

Otherthanthis,sometimesprogrammersnoticethatfewpartsofsoftwareneedmore maintenance
than others and they also need re-engineering.

Re-Engineering Process

73
• Decide what to re-engineer. Is it whole software or a part of it?
• Perform Reverse Engineering, in order to obtain specifications of existing software.
• Restructure Program if required. For example, changing function-oriented programs
into object-oriented programs.
• Re-structure data as required.
• Apply Forward engineering concepts in order to get re-engineered software.
There are few important terms used in Software re-engineering.

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.

Anexistingsystemispreviouslyimplementeddesign,aboutwhichweknownothing. Designers
then do reverse engineering by looking at the code and try to get the design. With design in
hand, they try to conclude the specifications. Thus, going in reverse from code to system
specification.

Program Restructuring

Itisaprocesstore-structureandre-constructtheexistingsoftware.Itisallaboutrearranging the source


code, either in same programming language or from one programming
languagetoadifferentone.Restructuringcanhaveeithersourcecode-restructuringand 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.

Thedependabilityofsoftwareonobsoletehardwareplatformcanberemovedviarestructuring.

Forward Engineering

74
Forwardengineeringisaprocessofobtainingdesiredsoftwarefromthespecificationsin hand which
were brought down by means of reverse engineering. It assumes that there was some software
engineering already done in the past.

Forward engineering is same as software engineering process with only one difference – it is
carried out always after reverse engineering.

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.

Inmodularprogramming,themodulesarecodedtoperformspecifictaskswhichcanbe used across number


of other software programs.

Thereisawholenewvertical,whichisbasedonre-useofsoftwarecomponent,andis known as Component


Based Software Engineering (CBSE).

Re-use can be done at various levels

• Applicationlevel -Whereanentireapplicationisusedassub-systemofnew software.

• Component level - Where sub-system of an application is used.


75
• Modules level - Where functional modules are re-used.

Software components provide interfaces, which can be used to establish


communication among different components.

Reuse Process:

Two kinds of method can be adopted: either bykeeping requirements same and adjusting
components or by keeping components same and modifying requirements.

• RequirementSpecification -Thefunctionalandnon-functionalrequirementsare
specified,whichasoftwareproductmustcomplyto,withthehelpofexisting system, user
input or both.

• 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
itssubsystems are created.

• Specify Components - By studying the software design, the designers segregate the
entiresystemintosmallercomponentsorsub-systems.Onecompletesoftware design turns
into a collection of a huge set of components working together.

• SearchSuitableComponents -Thesoftwarecomponentrepositoryisreferredby
designerstosearchforthematchingcomponent,onthebasisoffunctionalityand intended
software requirements..

76
• IncorporateComponents -Allmatchedcomponentsarepackedtogethertoshape them as
complete software.

77
Chapter12Scope 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
withsomeadvancementinitsfunctionalityandcanbeusedbyanyhotelorganizationto maintain their
customer’s record and online bookingprocess.

The basic functionalities of the system are:


• Check Availability
• Login
• Password Recovery
• View profile
• Hotel view
• Package Booking
• Cancel Booking

78
Chapter13Limitations

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.

Databasemaybetheprobleminfuturedayswhentheapplicantswillbeincreases.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
thatitismoreexpensivethanthetraditionalmethodofdealing.Theystillprefergoingto hotel to perform
booking and other.

79
Chapter14Conclusion

This project was successfully completed within the time span allotted. The project hall ticket
bookingsystemhasbeendevelopedinapachexamppserver.Allthemodulesaretested separatelyand
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.

Thesystemhadbeendevelopedinanattractivedialogsfashion.Souserwithminimum 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.

80
Chapter15Bibliography

REFERENCES :

 Lee Purcell, Mary Jane Mara, “The ABCs of JavaScript”, Third Edition, 1996.
RogerPressman,“SoftwareEngineering”,FourthEdition,publishedbyTataMc 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

81

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy