You are on page 1of 108

Online Ticket Booking for Cinema Halls

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 1

INTRODUCTION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 2

1. INTRODUCTION
This project is aimed to provide the customers facility to book tickets for cinema halls
online, through which they can book tickets anytime, anywhere. E-ticket system is
basically made for providing the customer an anytime and anywhere service for
booking the seat in the cinema hall and to gather information about the movies online.
The user can easily be able to know about the movies released and then make the
choice. In this project, we will illustrate our system by providing DFD(Data FLOW
Diagrams) on some functions. And we will also provide some process description and
data dictionary.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 3

AIMS & OBJECTIVE

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 4

2.

AIMS & OBJECTIVE

The main purpose of our online ticket booking system is to provide another way for
the customer to buy cinema ticket. It is an automatic system.
After inserting the data to database, staff need not todue with the order receive
through the system. In fact, there is similar system on the internet, but there is no
refund method found in the existing system.
This system is basically aimed to provide the customer the complete information of
the movie, according to which the customer can book the tickets and the refund
facility provides more flexibility to the system.
The goals of our system are:

To provide a anytime anyplace service for the customer

To minimize the number of staff at the ticket box

To promote the film on the internet

To increase the profit

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 5

SURVEY OF TECHNOLOGY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 6

3.SURVEY OF TECHNOLOGY
HTML (Hypertext Markup Language) :HTML is creating documents that could be displayed consistently on computers of between
and operating System.HTML is used to construct formatted pages for the web know as
Webpages.

Today HTML pages are the standard interface to the internet. They can include

animated graphics, sound and video complete interactive programs, and good old fashioned
text. Millions of Web pages are retrieve each day from thousand of Web server computers
around the world.
Structure of html documents
The skeleton of HTML document is:
<HTML>
<HEAD>
.
</HEAD>
<BODY>
.
</BODY>
</HTML>
This project is completed with JSP as front end and MY SQL is used for backend site.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 7

JSP
It is used for providing a server side application for internet so that the dynamic work
can be done. It is used to authenticate the users and security and to show the records
as per users.

Why use JSP?


JSP is easy to learn and allows developers to quickly produce web sites and applications in an
open and standard way. JSP is based on Java, an object-oriented language. JSP offers a robust
platform for web development.

MYSQL
MYSQL Server 2005 is a family of products that meet the data storage
requirements of the largest data processing systems and commercial Web sites, yet at the
same time can provide easy-to-use data storage services to an individual or small business.
MySQL, the most popular Open Source SQL database management system, is developed,
distributed, and supported by MySQL AB. MySQL AB is a commercial company, founded by
the MySQL developers. It is a second generation Open Source Company that unites Open
Source values and methodology with a successful business model.
MYSQL Server 2005 features include:
1. Internet Integration.
2. Scalability and Availability.
3. Enterprise-Level Database Features.

MYSQL is a Client Server database used for server related database.

It is used as a Client Server configuration related to database.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 8

Middleware : Java Database Connectivity (JDBC)

JDBC is a Java-based data access technology (Java Standard Edition platform) from Oracle
Corporation. This technology is an API for the Java programming language that defines how
a client may access a database. It provides methods for querying and updating data in a
database. JDBC is oriented towards relational databases. A JDBC-to-ODBC bridge enables
connections to any ODBC-accessible data source in the JVM host environment.
Java database connectivity (JDBC) is the JavaSoft specification of a standard application
programming interface (API) that allows Java programs to access database management
systems. The JDBC API consists of a set of interfaces and classes written in the Java
programming language.
Using these standard interfaces and classes, programmers can write applications that connect to
databases, send queries written in structured query language (SQL), and process the results.
The JDBC API is consistent with the style of the core Java interfaces and classes, such
as java.lang and java.awt. The following table describes the interfaces, classes, and
exceptions (classes thrown as exceptions) that make up the JDBC API. In the table, interfaces
belonging to the javax.sql package are extensions to the standard JDBC interfaces and are
contained in the Java 2 SDK, Enterprise Edition.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 9

REQUIREMENT AND ANALYSIS

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 10

4. REQUIREMENT AND ANALYSIS


4.aProblem Definition
Almost every activity in the world today is controlled by computer driven software programs.
His trend was first accommodated by engineering applications in the past. However, as the
life style became more and more complex, every area of human interactions was invaded by
various software systems, such as real time, business, simulation, embedded, web based,
personal and more recently, artificial intelligence software etc.
The proposed application is aONLINE TICKET BOOKING FOR CINEMA HALL
system which is being designed to replace the existing manual music system. There is no
existing computerized system. The manual system is not secure enough.The proposed system
has the following key features.

FEATURES

ONLINE TICKET BOOKING FOR CINEMA HALLhelps user to check and


book tickets quickly and easily.

It intelligently generates appropriate data based on tables.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 11

REQUIREMENT SPECIFICATION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 12

4.bREQUIREMENT

SPECIFICATION

The requirement for the proposed system is that, it would be less vulnerable to the mistakes
being made due to entry at two or three levels and calculations. Moreover, thecontrol of the
administrator would be centralized. This will provide the support for ONLINE TICKET
BOOKING FOR CINEMA HALLworking process.

General Description
Project function Overview
We believe that movie tickets should be something that is easily accessible for everyone. To
this end, we have created the ONLINE TICKET BOOKING FOR CINEMA HALLin order to
provide movie tickets

to anyone who is the part of intranet. This software is an intranet-

based application, where the server application will list the number of movies.only selected
users can access that list, the user should log on to the server with the user name password.
On the click button, user should be able to fill details on when we want to watch the item.

User Characteristics
The user can become a member of this by registering himself. After that user can access the
facilities provided byportal. A user can book tickets by registering in it.
General Constraints
The back-end has to be either SQL Server 2000 or 2005 and the system should run on the
Windows Operating System.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 13

Specific Requirements
Input and Output
User Registration, User id & password, Requisition Entry, Item to be searched can serve as
input & Requested item, searched item are the output of this software. Also watching
audio/video serve as an output.

Functional Requirement

There should be no manual entry in the database table by directly accessing the tables
i.e. there should be security at database server.

Only valid user can Input, or request file and only administrator can perform any
operation on master database and add/update module.

External Interface Requirement


The software must be a user friendly platform to reduce the complexity of operation. This
systemshould be capable enough to support multi-user environment. The software is based on
client-server architecture so that one or more user can do entries in the software system as
well as view reports at a time.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 14

IDENTIFICATION OF NEED

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 15

4.b.iIDENTIFICATION OF NEED
The main purpose of conducting system analysis is to study the various processes and to find
out its requirements. These may include ways of capturing or processing data, producing
information, controlling an activity or supporting management. The determination of
requirements entails studying the existing details about it to find out what these requirements
are.

System analysis has been conducted with the following objectives in mind.
1). Identify the user needs.
2). Evaluate the system concept for feasibility.
3). Perform economic and technical analysis.
4). Allocate functions to hardware, software, people, data base, and other
System elements.
5). Establish cost and schedule constraints and create system definition that forms the
foundation for all subsequent engineering work.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 16

PRELIMINARY INVESTIGATION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 17

4.b.ii.PRELIMINARY INVESTIGATION

The preliminary investigation is the process of studying the systems request and preparing a
recommendation. The purpose of the preliminary investigation is to determine if the systems
request is worth pursuing into the analysis phase and to perform some initial project
management planning tasks.
The preliminary investigation should also detail the scope of the project. The scope details the
boundaries of the project. If the system request was to redesign the user registration system,
the review team would need to decide if that included the user database, the user interface,
the administrator's interface, the computer infrastructure, the software and/or the underlying
business process. Although the scope will probably be adjusted in the analysis phase when
the detailed fact finding is completed, it is important that the systems analyst and the users
are in agreement on an initial scope.
One of the biggest issues with systems projects is scope creep. This is when the project
requirements are slowly increased over time. A fundamental concept of any project is that
scope, cost and schedule are interrelated. When any one of these items is changed, it affects at
least one of the other items. For example, if the scope is increased, the cost must be increased
and/or the schedule must be adjusted. Unfortunately in many cases, managers allow for the
increase in scope but do not adjust the cost or the schedule. This usually results in significant
issues down the line.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 18

FEASIBILITY STUDY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 19

4.b.iiiFEASIBILITY STUDY
A feasibility study is an evaluation and analysis of the potential of the proposed project
which is based on extensive investigation and research to give full comfort to the decisions
makers. Feasibility studies aim to objectively and rationally uncover the strengths and
weaknesses of an existing business or proposed venture, opportunities and threats as
presented by the environment, the resources required to carry through, and ultimately the
prospects for success. In its simplest terms, the two criteria to judge feasibility
are cost required and value to be attained. A feasibility study evaluates the project's potential
for success; therefore, the perceived objectivity is an important factor in the credibility to be
placed on the study by potential investors and lending institutions. It must therefore be
conducted with an objective, unbiased approach to provide information upon which decisions
can be based.
The three areas of feasibility

Technical Feasibility

Economic Feasibility

Operational feasibility

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 20

TECHNICAL FEASIBILITY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 21

4. B.iii.aTECHNICAL FEASIBILITY
The technical feasibility assessment is focused on gaining an understanding of the present
technical resources of the organization and their applicability to the expected needs of the
proposed system. It is an evaluation of the hardware and software and how it meets the need
of the proposed system.
The aim of the Technical Feasibility Grant is to support the cost of a company to undertake a
technical study into;

The development of new products, technologies, processes or internationally traded


services.

The improvement/redesign or development of existing products, services or


processes.

The viability of extending or expanding company facilities to meet increased


operational capacity needs.

Investigating the potential or application of new technologies or licensing in new


technologies.
The purpose of the study is to provide the necessary information to enable the company (and
Enterprise Ireland) to come to firm conclusions regarding the project's viability.
Typical elements involved in carrying out a feasibility study include:

Prototyping and design

Manufacturing process assessment

Plant evaluation and selection

Raw material sourcing

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 22

Cost analysis

ECONOMICAL FEASIBILITY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 23

4.b.iii.bECONOMICAL FEASIBILITY
The purpose of the economic feasibility assessment is to determine the positive economic
benefits to the organization that the proposed system will provide. It includes quantification
and identification of all the benefits expected. This assessment typically involves a cost/
benefits analysis.

This feasibility study present tangible and intangible benefits from the project by comparing
the development and operational cost. The technique of cost benefit analysis is often used as
a basis for assessing economic feasibility. This system needs some more initial investment
than the existing system, but it can be justifiable that it will improve quality of service.Thus
feasibility study should center along the following points:
Improvement resulting over the existing method in terms of accuracy, timeliness.

Cost comparison
Estimate on the life expectancy of the hardware.

Overall objective
Our project is economically feasible. It does not require much cost to be involved in the
overall process. The overall objective is in easing out the monitoring process.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 24

OPERATIONAL FEASIBILITY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 25

4.b.iii.cOPERATIONAL FEASIBILITY

Operational feasibility is a measure of how well a proposed system solves the problems, and
takes advantage of the opportunities identified during scope definition and how it satisfies the
requirements identified in the requirements analysis phase of system development.The
operational feasibility assessment focuses on the degree to which the proposed development
projects fits in with the existing business environment and objectives with regard to
development schedule, delivery date, corporate culture, and existing business processes.

This analysis involves how it will work when it is installed and the assessment of
political and managerial environment in which it is implemented. People are inherently
resistant to change and computers have been known to facilitate change. The new proposed
system is very much useful to the users and therefore it will accept broad audience from
around the world.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 26

SOFTWARE ENGINEERING
PARADIGM APPLIED

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 27

4.c.SOFTWARE

ENGINEERING PARADIGM APPLIED

The development strategy that encompasses the process, methods, and tools and the generic
phases is called Software Engineering Paradigm. The s/w paradigm for software is chosen
based on the nature of the project and application, the method and tools to be used, and the
controls and deliverables that are required. All software development can be characterized as
a problem-solving loops in which four distinct stages are encountered: status quo, problem
definition, technical development, and solution integration.

Spiral Model
The spiral

model is

a software

development

process combining

elements

of

both design and prototyping-in-stages, in an effort to combine advantages of top-down and


bottom-up concepts. Also known as the spiral lifecycle model (or spiral development), it is a
systems development method (SDM) used in information technology (IT). This model of
development combines the features of the prototyping and the waterfall model. The spiral
model is intended for large, expensive and complicated projects.
The spiral model is similar to the incremental model, with more emphasis placed on risk
analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and
Evaluation. A software project repeatedly passes through these phases in iterations (called
Spirals in this model). The baseline spirals, starting in the planning phase, requirements are
gathered

and

risk is

assessed. Each

subsequent

spiral

builds

on

the

baseline

spiral. Requirements are gathered during the planning phase. In the risk analysis phase, a
process is undertaken to identify risk and alternate solutions. A prototype is produced at the
end of the risk analysis phase.
Software is produced in the engineering phase, along with testing at the end of the phase.
The evaluation phase allows the customer to evaluate the output of the project to date before
the project continues to the next spiral.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 28

PLANNING & SCHEDULING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 29

4.dPLANNING & SCHEDULING


Project life cycle has three stages: 1. Project Initiation-Development team prepares the project plans and finalizes the
outcome of each phase. In this stage team also prepares the comprehensive list of
tasks involved in each phase, and the project assigns responsibilities to the team
members, depending on their skills.

2. Project Execution-In this stage, the team develops the product. In case of online
national polling team, will develop the Online National Polling.

This Stage consists of following phase: 1. Requirement Analysis


2. High Level Design
3. Low Level Design
4. Construction
5. Testing
6. Acceptance
3. Project Completion- In this stage, the team has to update the site regularly. Each
new enquiry has to add by the Field Officer as according to their area. This stage is
very important for the freshness of the site.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 30

Project Planning using WBS

A project plan needs to be created to ensure the timely completion of the


project. As part of project analysis, we break the project down to a number of
stages and use a Gantt chart and PERT chart to describe specific tasks and
status.
The Work Breakdown Structure of our proposed system Web Portal for Eye
Donation is shown below:
ID

Task Name

Duration

Start

Finish

1.

Project Initiation

2 days

Mon 17/02/14

Tue 18/02/14

2.

Analysis Phase

7 days

Wed 19/02/14

Tue 25/02/14

3.

System Design

2 days

Wed 26/02/14

Thu 27/02/14

4.

Coding Phase

15 days

Fri 28/02/14

Fri 11/03/14

5.

Testing Phase

9 days

Sat 12/03/14

Thu 20/03/14

6.

Implementation

5 days

Fri 21/03/14

Tue 25/03/14

7.

Post-Implementation

2 days

Wed 26/03/14

Thu 27/03/14

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 31

SOFTWARE & HARDWARE


REQUIREMENT

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 32

4.eSOFTWARE & HARDWARE REQUIREMENT


The Following are the Minimum Hardware and Software requirement to run the
proposed system.

Hardware Requirement:
1. Processor

Pentium IV

2. RAM

256 MB

Mouse

Serial Port/Parallel Port

4. Monitor

15-inch VGA colored or higher

3. Keyboard/

resolution monitors
5. LAN Connection

Yes

Software Requirement:
SERVER SYSTEM
1. Operating System:

Windows 7

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 33

2. Software for system:

a) Dreamweaver
b) Ecclipse
c) MySql Workbench

CLIENT SYSTEM
1. Operating System:

Windows XP,7

2. Software for system:

Internet Explorer, Mozilla


Firefox,Chrome,Apache tomcat

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 34

PRELIMINARY PRODUCT
DESCRIPTION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 35

4.fPRELIMINARY PRODUCT DESCRIPTION

The working manually in that system is very difficult because the client have not
time.
Functionality of new project
Some of the prime benefits that would arise from the proposed system are listed
below: The main purpose of our online ticket booking system is to provide another way for
the customer to book cinema ticket. It is an automatic system.
After inserting the data to database, staff need not todue with the order receive
through the system. In fact, there is similar system on the internet, but there is no
refund method found in the existing system.
This system is basically aimed to provide the customer the complete information of
the movie, according to which the customer can book the tickets and the refund
facility provides more flexibility to the system.
The goals of our system are:

To provide a anytime anyplace service for the customer

To minimize the number of staff at the ticket box

To promote the film on the internet

To increase the profit

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 36

CONCEPTUAL MODEL

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 37

4.gCONCEPTUAL MODEL
Data model
A data model is an abstract model that describes how data is represents and

accessed.

The term data model has two generally accepted meanings:

A data model theory, i.e. a formal description of how data may be structured and
accessed. See also List of database models.

A data model instance, i.e. applying a data model theory to create a practical data
model instance for some particular application. See data modelling.

Data Model Theory


A data model theory has three main components:

The structural part: a collection of data structures which are used to create databases
representing the entities or objects modelled by the database.

The integrity part: a collection of rules governing the constraints placed on these data
structures to ensure structural integrity.

The manipulation part: a collection of operators which can be applied to the data
structures, to update and query the data contained in the database.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 38

Data Model Instance


A Data Model Instance is created by applying a Data Model Theory. This is typically done to
solve some business enterprise requirement.
Business requirements are normally captured by a semantic logical data model. This is
transformed into a physical Data Model Instance from which is generated a physical
database.
For example, a Data modeller may use a data modelling tool to create an Entity-relationship
model of the corporate data repository of some business enterprise. This model is transformed
into a relational model, which in turn generates a relational database.

Entity-relationship model
The entity-relationship model or entity-relationship diagram (ERD) is a data model or
diagram for high-level descriptions of conceptual data model, and it provides a graphical
notation for representing such data models in the form of entity-relationship diagrams. Such
models are typically used in the first stage of information-system design; they are used, for
example, to describe information needs and/or the type of information that is to be stored in
the database during the requirement analysis. The data modeling technique, however, can be
used to describe any ontology (i.e. an overview and classifications of used terms and their
relationships) for a certain universe of discourse (i.e. area of interest). In the case of the
design of an information system that is based on a database, the conceptual data model is, at a
later stage (usually called logical design), mapped to a logical data model, such as the
relational model; this in turn is mapped to a physical model during physical design. Note that
sometimes, both of these phases are referred to as "physical design".

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 39

4.g.i DATA FLOW

DIAGRAMS (DFD)

The first step is to draw a data flow diagram (DFD). The DFD was first developed by Larry
Constantine as a way of expressing system requirements in a graphical form this led to a
modular design. A DFD, also known as a bubble chart, has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system
design. So it is the starting point of the design phase that functionally decomposes the
requirements specifications down to the lowest level of detail. A DFD consists of a series of
bubbles joined by lines. The bubbles represent data transformations and the lines represent
data flows in the system.

DFD Symbols
In the DFD there are four symbols, as shown in following:

A square defines a source or destination of system data.

An arrow identifies data flow-data in motion. It is a pipeline through which

Information flows.

A circle or a bubble(some people use an oval bubble) represents a

Process that transforms incoming data flow(s) into outgoing data flow(s).

An open rectangle is a data store-data at rest, or a temporary repository of

Data.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 40

Data Flow Diagram (a) Basic Symbols and (b) General Format

Meaning

(b)

Source or destination

Data flow

Process that transforms


Data

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 41

Data store

0' Level DFD

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 42

First Level DFD

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 43

E-R DIAGRAM

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 44

4.g.ii. E-R DIAGRAM-

A graphical representation of entities and their relationships to each other, typically used in
computing in regard to the organization of data within databases or information systems.An
ER model is an abstract way of describing a database. In the case of a relational database,
which stores data in tables, some of the data in these tables point to data in other tables. An
entity is a piece of data-an object or concept about which data is stored. A relationship is how
the data is shared between entities. There are three types of relationships between entities:

one-to-one: one instance of an entity (A) is associated with one other instance of
another entity (B). For example, in a database of employees, each employee name (A) is
associated with only one social security number (B).

one-to-many: one instance of an entity (A) is associated with zero, one or many
instances of another entity (B), but for one instance of entity B there is only one instance of
entity A. For example, for a company with all employees working in one building, the
building name (A) is associated with many different employees (B), but those employees all
share the same singular association with entity A.

many-to-many: one instance of an entity (A) is associated with one, zero or many
instances of another entity (B), and one instance of entity B is associated with one, zero or
many instances of entity A. For example, for a company in which all of its employees work
on multiple projects, each instance of an employee (A) is associated with many instances of a
project (B), and at the same time, each instance of a project (B) has multiple employees (A)
associated with it.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 45

E-R DIAGRAM

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 46

SYSTEM DESIGN

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 47

5. SYSTEM DESIGN
The design of the system is the most critical factor affecting the quality of the
software; it has major impact on the later phases, particularly testing and maintenance.
The output of this phase is the design document. This document is similar to blueprint
or plan for the solution.
The design activity is often divided into two phases:

System Design

Detailed Design

System design aims to identify the modules that should be in the system, the
specifications of these modules and how they interact with each other to produce the
desired results. At the end of system design all the major data structures, file formats
and the major modules in the system and their specifications are decided.
During Detailed Design, the internal logic of each of the modules specified in system
design is decided. During this phase further details of the data structures and
algorithmic design of each of the modules is specified. The logic of a module is
usually specified in a high-level design description language, which is independent of
the target language, in which the software will eventually be implemented.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 48

BASIC MODULE

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 49

5.a

BASIC MODULE

Following is a list of functionalities of the system. The Online Antique Information


System has following main modules. The main modules can broken in sub module:
1. Login Module
2. Customer Module
3. Hall Module
4. Booking Module
5. Payment Module

PROJECT CONSIST OF FOLLOWING MODULES

Login Module
Customer Module
Hall Module

Booking Module

Payment Module
Online Ticket Booking for Cinema Halls
BY: - ADITI PANDEY
11065106004
Page 50

Login Module:
This module is for both type of users(customers and admin).In this module
according to the type of user(customer or admin) the further links and
operations will be provided.

Customer Module:
As soon as a visitor registers himself as a customer, the customer can now book
the movie tickets and pay for them online.

Hall Module:
This module deals with the information about the hall. There are several
multiplexes and each of them has 4 halls and according to the vacancy of seats
in the hall the booking takes place.

Booking Module:

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 51

In this module movie ticket is booked for a customer. This module contains all
the information related to booking. As soon as the customer request is complete,
all the booking details are displayed to him.

Payment Module:
This is the most important module because it deals with the payment of the
tickets booked in the booking module. The customer can pay for the tickets
before the show by cash payment and if he wants to pay online, he can pay for
the tickets by credit card.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 52

DATABASE DESIGN

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 53

5.b DATABASE

DESIGN

A database to store the details about the items in the antique store should be designed. A
unique code should be given for each item in the inventory. This will be the key of the
database.
A database to store the sales details should be there. The key for this database is the
unique sale_id generated when producing the bill. Some example fields in this database are:
the list of items bought under the sale id (a maximum of up to 30 item codes can be there),
the date and time of the transaction, the total amount of the transaction, whether the customer
paid by cash or card, whether any item was returned later etc.
A database to store the user details should be there. The key for this database is the userid.
This database will have the user details like his encrypted password, his leave/shift details
etc.
Some example fields and the range of valid values for those fields for the inventory database
are given below. These need not be taken as such. They can be modified by the team

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 54

Table Structure
Credit information:
Attributes

Data type

Num of credit card

Number

Type

Varchar

Name

Varchar

User Id

Varchar

ExpDate

Varchar

Ticket

Number

Movie

Varchar

User Information:
Attributes

Data type

First Name

Varchar

Last Name

Varchar

User Id

Varchar

Password

Varchar

Contact

Numeric

E_mail Id

Varchar

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 55

Booking:
Attributes

Data type

Movie Id

Varchar

Name of movie

Varchar

Show Time

Varchar

Screen Id

Varchar

Location:
Attributes

Data type

ZipCode

Number

State

Varchar

City

Varchar

Street Address

Varchar

Country

Varchar

Theatre Id

Number

Movie:
Attributes

Data type

Movie Id

Varchar

Name of movie

Varchar

Detail

Varchar

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 56

Screen:
Attributes

Data type

Movie Id

Varchar

Screen Id

Varchar

Theatre Id

Varchar

Theatre:
Attributes

Data type

Theatre Id

Varchar

Number of screen

Number

Name of theatre

Varchar

Show time:
Attributes

Data type

Movie Id

Varchar

Screen Id

Varchar

Theatre Id

Varchar

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 57

INPUT/OUTPUT FORM LAYOUT


(INTERFACE)

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 58

5.c

INPUT/OUTPUT FORM LAYOUT (INTERFACE)

USER LOGIN

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 59

HOME PAGE

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 60

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 61

ADMIN LOGIN

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 62

USER REGISTRATION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 63

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 64

MOVIE BOOKING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 65

SCHEDULE

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 66

MOVIES DETAILS

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 67

MOVIES

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 68

SECURITY ISSUE

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 69

5.d SECURITY ISSUE


Computer security is a branch of technology known as information security as applied to
computers. Full security measures have been taken for the Online Antique Store.

All users had there access level. They can work on this software according to there
access level.

Any user who logs in this software and makes any changes in the database, all the
entries [loginid, date, time] are maintained in log files managed by the sql transaction log
files and can be tracked any time by the DBA of the MYSQL.

There are log files maintained for Transaction of information which may be used in
any case of data loss.

MAINTENANCE
After training while the client moves into the new system, the software organization has to
maintain high degree of support to the client that decreases with time. A project briefing
session is vital to evaluate the success and failure of the project so as to provide a basis for
future efforts.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 70

TEST CASES DESIGN

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 71

5.e TEST CASES DESIGN


A test case is a detailed procedure that fully tests a feature or an aspect of a feature. Whereas
the test plan describes what to test, a test case describes how to perform a particular test. You
need to develop a test case for each test listed in the test plan. illustrates the point at which
test case design occurs in testing process.

A test case includes:

The purpose of the test.

Special hardware requirements, such as a modem.

Special software requirements, such as a tool.

Specific setup or configuration requirements.

A description of how to perform the test.

The expected results or success criteria for the test.

Test cases should be written by a team member who understands the function or technology
being tested, and each test case should be submitted for peer review.
Organizations take a variety of approaches to documenting test cases; these range from
developing detailed, recipe-like steps to writing general descriptions. In detailed test cases,
the steps describe exactly how to perform the test. In descriptive test cases, the tester decides
at the time of the test how to perform the test and what data to use.
Most organizations prefer detailed test cases because determining pass or fail criteria is
usually easier with this type of case. In addition, detailed test cases are reproducible andare
easier to automate than descriptive test cases. This is particularly important if you plan to
Online Ticket Booking for Cinema Halls
BY: - ADITI PANDEY
11065106004
Page 72

compare the results of tests over time, such as when you are optimizing configurations.
Detailed test cases are more time-consuming to develop and maintain. On the other hand, test
cases that are open to interpretation are not repeatable and can require debugging, consuming
time that would be better spent on testing.

GUIDELINES FOR WRITING TEST CASES

1.Test Cases need to be simple and transparent:

Create test cases which are as simple as possible. They must be clear and concise as author of
test case may not execute them.
Use assertive language like go to home page, enter data, click on this and so on. This makes
the understanding the test steps easy and test execution faster.

2.Create Test Case with End User in mind

Ultimate goal of any software project is to create test cases that meets customer requirements
and is easy to use and operate. A tester must create test cases keeping in mind the end user
perspective

3. Avoid test case repetition.


Online Ticket Booking for Cinema Halls
BY: - ADITI PANDEY
11065106004
Page 73

Do not repeat test cases. If a test case is needed for executing some other test case , call the
test case by its test case id in the pre-condition column

4. Do not Assume

Do not assume functionality and features of your software application while preparing test
case. Stick to the Specification Documents.

5. Ensure 100% Coverage

Make sure you write test cases to check all software requirements mentioned in the
specification document. Use Traceability Matrix to ensure no functions/conditions is left
untested.

6. Test Cases must be identifiable.

Name the test case ids such that they are identified easily while tracking defects or
identifying a software requirement at a later stage.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 74

7. Implement Testing Techniques

Testing techniques must be used for effective testing.


Suppose you encounter a scenario to test a good deal of values. In such a case apply both
Boundary Value Analysis and Equivalence Partitioning techniques. This will aid in covering a
good range of value and avoid unnoticed defects.
In case Application has many pages/integrations then create test cases for each State Change
by implementing the State Transition Technique.

8. Peer Review.
After creating test cases, get them reviewed by your colleagues. Your peers can uncover
defects in your test case design, that you may easily miss.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 75

IMPLEMENTATION & TESTING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 76

6.a IMPLEMENTATION APPROACH

Having extensively discussed each module in our face detection, normalization and
recognition system, we shall now describe an implementation of the complete system. We
shall also briefly discuss the software design and the constraints on performance and
efficiency.
The system's user-friendly interface is then described. It facilitates the control of the
algorithm and displays the localization and recognition results visually. To test the feature
detection capabilities of the system, the localization results are verified for a few arbitrary
input images. A large, standard database of faces is then used to test the recognition rates of
the system. We follow the recognition and localization tests with a sensitivity analysis that
provides us with some insight on the inter-dependence of these two components (recognition
and localization) in the overall algorithm.
The first part considers how the activities of a project start. Although planning and action run
side by side, it is often difficult to initiate action to progress the first tasks. Once things start
to happen, the project enters a new stage. Management of the project changes, from
stimulating the initial action to monitoring and reviewing it in order to control the project's
progress. Control systems are essential in managing a project of any size, to ensure that the
project achieves its intended outcomes. It is very rare for a project to run smoothly, however,
and anyone managing a project can expect to have to keep up the momentum and to solve
problems that arise. Good communications contribute a great deal to the process, and help all
the stakeholders in developing a shared understanding of how the project is progressing.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 77

CODING DETAILS

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 78

LOGIN DETAILS
<%@include file="connect.jsp"%>
<%
String uname=request.getParameter("uname");
String passw =request.getParameter("passw");
String suid =(String)session.getAttribute("uid");
Boolean isLogin=false;
String last="";
rs=st.executeQuery("select uname ,passw,id,Format(lastvisit,'dd mmmm,yyyy hh:nn AM/PM'),crid from
Customer where uname='"+uname +"'");
if(rs.next()){
if(rs.getString(1).equals(uname) && rs.getString(2).equals(passw)){
String uid=rs.getString(3);
if(uid.equals(suid)){%>
<div style='color:cyan'>You Are Already Logged In</div>
<%
}else{
session.setAttribute("uid",uid);
last=rs.getString(4);
session.setAttribute("crid",rs.getString(5));
st.executeUpdate("update Customer set noofvisits=noofvisits+1 where id=" +uid);
java.util.Date dt=new java.util.Date();
st.executeUpdate("update Customer set lastvisit='"+ dt.toLocaleString() + "' where
id=" +uid);
rs=st.executeQuery("select fname,mname,lname from Customer where id="+uid);
if(rs.next()){
String name=rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3);
System.out.println(name);
name="Welcome "+name;
String messageright="<div>Last Visit : " + last +"&nbsp;| &nbsp;<a
href='javascript:editProfile()'>Edit Profile</a>&nbsp; |&nbsp; " ;
messageright+="<a href='javascript:logout()'>Logout</a>";
session.setAttribute("messagecenter",name);
session.setAttribute("messageright",messageright);
}%>
<div style="color:cyan">You Have succesfully Logged in.<br>You last visited on <
%=last%></div>
<%
}
}else{%>
<div style="color:red;">Username Or Password is Incorrect</div>
<%
}
}else{%>
<div style="color:red;">Username Or Password is Incorrect</div>
<%}
conn.close();
%>

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 79

REGISTRATION
<%@include file="connect.jsp"%>
<%
String fname=request.getParameter("fname");
String mname=request.getParameter("mname");
String lname=request.getParameter("lname");
String uname=request.getParameter("uname");
String passw=request.getParameter("passw");
String email=request.getParameter("email");
String phno=request.getParameter("phno");
String address=request.getParameter("address");
String city=request.getParameter("City");
String crno=request.getParameter("crno");
boolean valid=true;
st.executeUpdate("insert into credit(crno) values('"+crno+"')");
rs=st.executeQuery("select id from credit where crno='"+ crno +"'");
rs.next();
int crid=rs.getInt(1);
String sql="insert into
Customer(fname,mname,lname,uname,passw,email,phno,address,cityid,crid)
values(";
sql+="'"+fname+"','"+
mname+"','"+lname+"','"+uname+"','"+passw+"','"+email+"',"
+phno+",'"+address+"',"+city+","+crid+")";
//out.println(sql);
try{
st.executeUpdate(sql);%>
<h1>You Have registered successfully.Now you may login.</h1>
<%}
catch(Exception e){
System.out.println(e);
}
conn.close();
%>

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 80

ADMIN
<%@include file="connect.jsp"%>
<%
String req=request.getParameter("do");
String uid= (String)session.getAttribute("uid");
if(uid!=null&&req!=null&&uid.equals("1")){%>
<form name="frmAdmin">
<table>
<tr><td height="20px"></td>
</tr>
<tr><td id='datainfo' align="center" class="pageName"></td></tr>
<tr><td><table id='admintable'>
<%
if(req.equals("viewcustomers")){
rs=st.executeQuery("select * from viewcustomer");%>
<tr><th>ID</th><th>User Name</th><th>EmailID</th><th>Address</th><th>Phone</th><th>City</th><th>Credit card No.</th><th>Balance</th><th>Last
Visited</th><th>No of Visits</th><th>Tickets Bought</th><th></th></tr>
<tr id='insert'></tr>
<%
while(rs.next()){
String id=rs.getString(1);
out.println("<tr id=c"+id+" class='adminRow'>");
out.println("<td>"+id+"</td>");
for(int i=2;i<=11;i++){
String data=rs.getString(i);
if(data==null) data="";
out.println("<td>"+data+"</td>");
}
out.println("<td><a href=\"javascript:editCustomer('c"+id+"')\">edit</a> <a
href=\"javascript:deleteCustomer('c"+id+"')\">delete</a></td>");
out.println("</tr>");
}%>
<%
}else if(req.equals("viewcinema")){
rs=st.executeQuery("select *from viewcinema");%>
<tr><th>ID</th><th>Name</th><th>Address</th><th>City</th><th>No of
Screens</th><th>Capacity</th><th>Established</th><th></th></tr>
<tr id='insert'></tr>
<%
while(rs.next()){
String id=rs.getString(1);
out.println("<tr id=c"+id+" class='adminRow'>");
out.println("<td>"+id+"</td>");
for(int i=2;i<=7;i++){
String data=rs.getString(i);
if(data==null) data="";
out.println("<td>"+data+"</td>");
}
out.println("<td><a href=\"javascript:editCinema('c"+id+"')\">edit</a> <a
href=\"javascript:deleteCinema('c"+id+"')\">delete</a></td>");
out.println("</tr>");
}
}else if(req.equals("viewmovie")){
rs=st.executeQuery("select * from viewmovie");%>
<tr><th>ID</th><th>Name</th><th>Story line</th><th>Image File</th><th>Trailer
File</th><th>Casting</th><th>Category</th><th></th></tr>
<tr id='insert'></tr>
<%
while(rs.next()){
String id=rs.getString(1);

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 81

out.println("<tr id=m"+id+" class='adminRow'>");


out.println("<td>"+id+"</td>");
for(int i=2;i<=7;i++){
String data=rs.getString(i);
if(data==null) data="";
out.println("<td>"+data+"</td>");
}
out.println("<td><a href=\"javascript:editMovie('m"+id+"')\">edit</a> <a
href=\"javascript:deleteMovie('m"+id+"')\">delete</a></td>");
out.println("</tr>");
}
}else if(req.equals("viewschedule")){
rs=st.executeQuery("SELECT * from viewschedule");%>
<tr><th>ID</th><th>Cinema</th><th>Screen No</th><th>Show
date</th><th>Movie</th><th></th></tr>
<tr id='insert'></tr>
<%
while(rs.next()){
String id=rs.getString(1);
out.println("<tr id=s"+id+" class='adminRow'>");
out.println("<td>"+id+"</td>");
for(int i=2;i<=5;i++){
String data=rs.getString(i);
if(data==null) data="";
out.println("<td>"+data+"</td>");
}
out.println("<td><a href=\"javascript:editSchedule('s"+id+"')\">edit</a>");
out.println("</tr>");
}
}else if(req.equals("viewtimeslot")){
rs=st.executeQuery("SELECT ID,slotno from tTime where id=(select max(id) from tTime)");
rs.next();
int maxid=rs.getInt(1),count=1;
while(rs.next()) count++;
if(count==4) maxid++;
rs=st.executeQuery("SELECT ID,SlotNo,Format(Slot,'hh:nn AM/PM') from tTime order by
id,slotno");%>
<tr><th>ID</th><th>Slot No</th><th>Time</th><th></th></tr>
<tr id='insert'><td><%=maxid%></td></tr>
<%
while(rs.next()){
String id=rs.getString(1);
String sno=rs.getString(2);
out.println("<tr id='t"+id+"s"+sno+"' class='adminRow'>");
out.println("<td>"+id+"</td>");
out.println("<td>"+sno+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("<td><a href=\"javascript:editTimeslot('t"+id+"s"+sno+"')\">edit</a>");
out.println("</tr>");
}
}else if(req.equals("viewticket")){
rs=st.executeQuery("SELECT * from viewticket");%>
<tr><th>ID</th><th>Customer</th><th>Cinema</th><th>Screen No</th><th>Show
Date</th><th>Show Time</th><th>Movie</th><th>Seats</th><th>Quantity</th><th>Amount</th><th>Sold
Date</th></tr>
<%
while(rs.next()){
out.println("<tr class='adminRow'>");
for(int i=1;i<=11;i++){

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 82

String data=rs.getString(i);
if(data==null) data="";
out.println("<td>"+data+"</td>");
}
out.println("</tr>");
}
}
%>
</table></td></tr></table>
</form>
<%}else{%>
<div style="color:red;"><h2>You should be logged in as Administrator</h2></div>
<%}
conn.close();
%>

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 83

BOOK TICKET
<%@include file="connect.jsp"%>
<%
String scheduleid=request.getParameter("Date");
String time=request.getParameter("Time");
String crno=request.getParameter("crno");
String uid=(String)session.getAttribute("uid");
String crid=(String)session.getAttribute("crid");
String seats=request.getParameter("seats");
String film=request.getParameter("Film");
String cinema=request.getParameter("Cinema");
String address="",screenid="",showdate="",solddate=(new java.util.Date()).toLocaleString();
long balance=0,cost=0,ticket=0;
String name="",seatstr="";
String sql;
if(uid==null){%>
<div style='color:red'><h2>You must be logged in to buy tickets</h2></div>
<%}else{
rs=st.executeQuery("select crno,balance from Credit where id="+crid);
if(rs.next()){
if(rs.getString(1).equals(crno)){
balance=rs.getLong(2);
rs=st.executeQuery("select fname,mname,lname from Customer where id="+uid);
if(rs.next())
name=rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3);
String[] seatlist=seats.split(";");
String alpha="ABCDE";
int seat[]=new int[seatlist.length];
for(int i=0;i<seatlist.length;i++) seat[i]=Integer.parseInt(seatlist[i]);
for(int i=0;i<seat.length;i++){
if(seat[i] < 41) cost+=75;
else if(seat[i] < 81) cost+=100;
else cost+=125;
}
if(balance>cost){
balance-=cost;
for(int i=0;i<seatlist.length;i++) seatstr+=
Character.toString(alpha.charAt(seat[i]/20))+ seat[i]%20 + ",";
rs=st.executeQuery("select Name from Film where id="+ film);
if(rs.next()) film=rs.getString(1);
rs=st.executeQuery("select Address from Cinema where id="+ cinema);
if(rs.next()){ address=rs.getString(1); }
rs=st.executeQuery("select Format(Showdate,'dd mmmm,yyyy'), screenid
from Schedule where id="+scheduleid );
if(rs.next()){showdate=rs.getString(1);screenid=rs.getString(2);}
rs=st.executeQuery("Select Format(Slot,'hh:nn AM/PM') from ttime,screen
where ttime.id=screen.timeid and screen.id="+screenid +" and slotno='"+time+"'");
if(rs.next()){showdate+=" "+ rs.getString(1);}
rs=st.executeQuery("select max(id) from Ticket");
if(rs.next()) ticket=rs.getInt(1)+1;
String insert="INSERT INTO Ticket( ID, customerid, ScheduleID, Seats,
Quantity, amount, SoldDate, Timeslot) values("+ticket+","+uid+",";

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 84

insert+=scheduleid+",'"+seats+"',"+seatlist.length+","+cost+",'"+solddate+"','"+time+"')";
System.out.println (insert);
st.executeUpdate(insert);
st.executeUpdate("update credit set balance="+balance+" where id="+crid);
st.executeUpdate("update Customer set totaltkt=totaltkt+"+seat.length+"
where id="+uid);%>
<table><tr><td>
<div id="ticket"><table border="1">
<tr align="center"><td><h1>Dream World Cinemas</h1></td></tr>
<tr><td><table>
<tr><td>Ticket No. <%=ticket%></td><td>Customer No. <%=uid
%></td></tr>
<tr><td>Customer Name</td><td><%=name%></td></tr>
<tr><td>Booked seats</td><td><%=seatstr%></td></tr>
<tr><td>Show Time</td><td><%=showdate%></td></tr>
<tr><td>Movie</td><td><%=film%></td></tr>
<tr><td>Venue</td><td><%=address%></td></tr>
<tr><td>Sold On</td><td><%=solddate%></td></tr>
<tr><td>Total Cost</td><td><%=cost%></td></tr>
<tr><td>Balance Remaining</td><td><%=balance%>
INR</td></tr>
</table></td></tr>
</table></div></td></tr>
<tr><td align="center"><a href="javascript:printTicket()"
class="navigation">Print</a></td></tr>
</table>
<%
}else{%>
<div style='color:red'><h2>You don't have sufficient balance to buy
tickets.<br>
Please recharge your Account<br>Your current balance is <
%=balance%></h2></div>
<%
}
}else{%>
<form name='regform'><table><tr><td colspan='2' align="center"><h2>Confirm
Ticket Book</h2></td></tr>
<tr><td>Creditcard No</td><td><input type='text' id='crno' value='<%=crno%>'
onkeyup='javascript:checkcrno()'/>
<label id='m_crno' style="color:red;">Your Credit Card No do not
match</label></td></tr>
<tr><td><a href='javascript:confirmBookTicket()'
class='navigation'>Confirm</a></td>
<td><a href='#schedule' class='navigation'>Cancel</a></td></tr></table></form>
<%
}
}
}
conn.close();
%>

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 85

SCHEDULE
<%@include file="connect.jsp" %>
<%
String showby =request.getParameter("showby");
String showvalue=request.getParameter("showvalue");
String sql="select id, Name from "+showby+" ";
String show ="";
if(showby.equals("Country")){
show="State";
}else if(showvalue!=null){
if(showby.equals("State")){
sql+=" where countryid="+showvalue;
show="City";
}else if(showby.equals("City")){
sql+=" where stateid="+showvalue;
show="Cinema";
}else if(showby.equals("Cinema")){
sql+=" where cityid="+showvalue;
show="Film";
}else if(showby.equals("Film")){
String subquery="(Select FilmID FROM schedule where ShowDate>=Date() and ScreenID
=(select ID from screen where CinemaID ="+showvalue+"))";
sql+="where ID="+2+"";
session.setAttribute("cinema",showvalue);
show="Date";
}else if(showby.equals("Date")){
sql="select ID ,ShowDate from schedule";
show="Time";
}else if(showby.equals("Time")){
sql="select SlotNo ,Format(Slot,'hh nn AM/PM') from ttime where id =(select timeid from
screen where id=(select screenid from schedule where id="+showvalue+")) order by slot";
}
}
try{
System.out.println (sql);
rs=st.executeQuery(sql);
String eventhandler="";
if(showby.equals("Time"))
eventhandler="onchange=\"loadseat()\"";
else
eventhandler="onchange=\"loadschedule('"+ show +"',this.value)\"";
System.out.println (eventhandler);
%>
<select name=<%=showby%> <%=eventhandler%> >
<option value=0>Select A <%=showby%></option>
<%while(rs.next()){%>
<option value="<%=rs.getString(1)%>"><%=rs.getString(2)%></option>
<%}
}
catch(Exception e){
System.out.println(e);

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 86

}
conn.close();
%></select>

VALIDATE
var nameAvail=false;
function register()
{
isAvailName();
if(document.regform.passw.value!=document.regform.passw2.value)
alert("Your passwords do not match");
else if(document.regform.fname.value.length<1){
alert("You must enter your First Name");
document.regform.fname.focus();
}else if(document.regform.lname.value.length<1){
alert("You must enter your Last Name");
document.regform.lname.focus();
}else if(checkpassw()&& checkemail()&& checkphno()){
if(nameAvail){
if(agree){
showmessage("register.jsp"+getSubmitQuery(document.regform),"databar");
}else{
alert("You must agree to our Terms and Policy")
}
}
}
}
function checkname(){
if(document.regform.uname.value.length<6){
document.getElementById("m_uname").innerHTML="Name must be atleast 6
characters long";
document.getElementById("m_uname").style.color="red" ;
document.regform.uname.focus();
return false;
}else{
document.getElementById("m_uname").innerHTML="Name OK";
document.getElementById("m_uname").style.color="green" ;
return true;
}
}
function checkpassw(){
var len=document.regform.passw.value.length
if(len<5){
document.getElementById("m_passw").innerHTML="Too Short (Min 5 chars)";
document.getElementById("m_passw").style.color="red" ;
document.regform.passw.focus();
return false;
}else if(len <8){

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 87

document.getElementById("m_passw").innerHTML="Weak";
document.getElementById("m_passw").style.color="Yellow";
return true ;
}else{
document.getElementById("m_passw").innerHTML="Strong" ;
document.getElementById("m_passw").style.color="cyan";
return true ;
}
}
function checkemail(){
var str=document.regform.email.value
var len=str.length
var iat=str.indexOf("@")
var idot=str.indexOf(".")
var idot2=str.indexOf(".",iat)
if(iat<1||(iat>idot2)|| idot2>=len-1){
document.getElementById("m_email").innerHTML="Enter valid email";
document.getElementById("m_email").style.color="red" ;
document.regform.email.focus();
return false;
}else{
document.getElementById("m_email").innerHTML="Email ok";
document.getElementById("m_email").style.color="green";
return true;
}
}
function checkLuhn(crno){
var sum = 0
var nDigits = crno.length
var parity = nDigits % 2
for(i=0;i<nDigits;i++){
var digit=crno.charAt(i)
if (i%2==parity)
digit = digit * 2
if (digit > 9)
digit=digit%10+parseInt(digit/10)
sum = sum + digit
}
if(sum%10==0)
return true;
else
return false;
}
function checkcrno(){
var crno=document.regform.crno.value
var valid=false
var cardtype
var len=crno.length
if(len>12&&len<17){
switch(crno.charAt(0)){
case "5": //Master Card

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 88

var c2=crno.charAt(1)
if(len==16 && c2<=5 && c2>=1 && checkLuhn(crno)){
valid=true
cardtype="Master Card"
}
break;
case "4": //VISA
if((len==16 || len==14)&& checkLuhn(crno)){
valid=true
cardtype="VISA"
}
}
}
if(valid){
document.getElementById("m_crno").innerHTML=cardtype;
document.getElementById("m_crno").style.color="green" ;
}else{
document.getElementById("m_crno").innerHTML="Enter valid Credit Card No.";
document.getElementById("m_crno").style.color="red" ;
document.regform.crno.focus();
}
return valid
}
function checkphno(){
var len=document.regform.phno.value.length
if(len==0){
document.getElementById("m_phno").innerHTML="";
return true;
}
else if(isNumber(document.regform.phno.value)){
if(len>9&&len<13){
document.getElementById("m_phno").innerHTML="Phone No
OK";
document.getElementById("m_phno").style.color="green" ;
return true;
}else{
document.getElementById("m_phno").innerHTML="Phone No
should only contain 10 to 12 digits or leave empty";
document.getElementById("m_phno").style.color="red" ;
}
}else{
document.getElementById("m_phno").innerHTML="Phone No should
contain only digits";
document.getElementById("m_phno").style.color="red" ;
}
return false;
}
function isNumber(char){

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 89

var numcheck = /\D/;


for(i=0;i<char.length;i++){
if(numcheck.test(char.charAt(i)))
return false;
}
return true;
}
function isAvailName(){
if(checkname()){
xmlHttp.open("POST","checkname.jsp?
name="+document.regform.uname.value,false);
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState==4){
if(xmlHttp.responseText.indexOf("false")!=-1){
document.getElementById("m_uname").innerHTML="This
User Name is already in use.";
document.getElementById("m_uname").style.color="red" ;
nameAvail=false
}else{
document.getElementById("m_uname").innerHTML="Hurray! User name is available.";
document.getElementById("m_uname").style.color="Green"
;
nameAvail=true;
}
}
}
xmlHttp.send(null);
}
}

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 90

TESTING APPROACH

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 91

6.c TESTING APPROACH


Top-down and bottom-up
Bottom Up Testing
is an approach to integrated testing where the lowest level components (modules, procedures,
and functions) are tested first, then integrated and used to facilitate the testing of higher level
components. After the integration testing of lower level integrated modules, the next level of
modules will be formed and can be used for integration testing. The process is repeated until
the components at the top of the hierarchy are tested. This approach is helpful only when all
or most of the modules of the same development level are ready.[ This method also helps to
determine the levels of software developed and makes it easier to report testing progress in
the form of a percentage.

Top Down TestingTop Down Testing is an approach to integrated testing where the top integrated modules are
tested and the branch of the module is tested step by step until the end of the related module.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 92

UNIT TESTING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 93

6.c.i.UNIT TESTING
Unit testing, also known as component testing, refers to tests that verify the functionality of a
specific section of code, usually at the function level. In an object-oriented environment, this
is usually at the class level, and the minimal unit tests include the constructors and
destructors.

These types of tests are usually written by developers as they work on code (white-box style),
to ensure that the specific function is working as expected. One function might have multiple
tests, to catch corner cases or other branches in the code. Unit testing alone cannot verify the
functionality of a piece of software, but rather is used to assure that the building blocks the
software uses work independently of each other.
Unit testing is a software development process that involves synchronized application of a
broad spectrum of defect prevention and detection strategies in order to reduce software
development risks, time, and costs. It is performed by the software developer or engineer
during the construction phase of the software development lifecycle. Rather than replace
traditional QA focuses, it augments it. Unit testing aims to eliminate construction errors
before code is promoted to QA; this strategy is intended to increase the quality of the
resulting software as well as the efficiency of the overall development and QA process.
Depending on the organization's expectations for software development, unit testing might
include static code analysis, data flow analysis metrics analysis, peer code reviews, code
coverage analysis and other software verification practices.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 94

INTEGRATION TESTING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 95

6.c.ii.INTEGRATION TESTING
Integration testing is any type of software testing that seeks to verify the interfaces between
components against a software design. Software components may be integrated in an iterative
way or all together ("big bang"). Normally the former is considered a better practice since it
allows interface issues to be localised more quickly and fixed.
Integration testing works to expose defects in the interfaces and interaction between
integrated components (modules). Progressively larger groups of tested software components
corresponding to elements of the architectural design are integrated and tested until the
software works as a system.
Integration testing exposes defects in the interfaces and interaction between integrated
components (modules). Progressively larger groups of tested software components
corresponding to elements of the architectural design are integrated and tested until the
software works as a system.
Integration testing' (sometimes called Integration and Testing, abbreviated I&T) is the
phase of software testing in which individual software modules are combined and
tested as a group. It follows unit testing and precedes system testing.
Integration testing takes as its input modules that have been unit tested, groups them in larger
aggregates, applies tests defined in an integration test plan to those aggregates, and delivers
as its output the integrated system ready for system testing

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 96

SYSTEM LEVEL TESTING

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 97

6.c.iii.SYSTEM LEVEL TESTING


System testing tests a completely integrated system to verify that it meets its requirements.
In addition, the software testing should ensure that the program, as well as working as
expected, does not also destroy or partially corrupt its operating environment or cause other
processes within that environment to become inoperative (this includes not corrupting shared
memory, not consuming or locking up excessive resources and leaving any parallel processes
unharmed by its presence).

System-level Test and Validation of Hardware/Software Systems provides a state-of-the-art


overview of the current validation and test techniques by covering all aspects of the subject
including:
modeling of bugs and defects;
stimulus generation for validation and test purposes (including timing errors;
design for testability.

For researchers working on system-level validation and testing, for tool vendors involved in
developing hardware-software co-design tools and for graduate students working in
embedded systems and SOC design and implementation, System-level Test and Validation of
Hardware/Software Systems will be an invaluable source of reference.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 98

RESULTS AND DISCUSSION

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 99

7.RESULTS AND DISCUSSION


7. A Test Reports

Testing Authorities of the Authorized user & the Administrator

Open Microsoft Visual Studio 2008 and click the run button.

Enter the login & password, click on the OK button. If either the login or
password is only entered without entering the other one & ok button is
clicked, message will be displayed prompting to enter the other one.
Refresh button empties the textboxes for next entries to be made.

Click on the Administrator on the menu bar. Create new user display is
highlight it means that login & password entered belongs to either the
administrator or the authorized user.

Login entered is counter checked in the Microsoft SQL Server 2005


database & it is found that login name belonged to the authorized user.

Most of the options of administrator menu are enabled it is so because the


authorized user has been granted the permission of a DBA user.

If you want to create the user then enter the data required and click on
CREATE button. If you have not entered the required data then you will be
prompted to do so.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 100

If main form is opened and the options like create user, change password,
drop user, and add/remove privileges are disabled then it means that you
have logged in by the user that is not DBA.

You can insert data using the insert& update records option.

Enter the data & click on the update button. Message your data has been
saved is displayed. The data on being checked in the database was found
saved there.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 101

Conclusions

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 102

8.a.Conclusions
The project will be great help to small consultancies and firm who cannot effort to buy large
project which cost huge money can implement this small software in their work. This website
provides facility to conduct information online blood bank worldwide. It saves time and
automatically generated by the server. Administrator has a privilege to create, modify and
delete the records and its particular data. User can register, login and give their information
with his specific id, and can see the results as well.
In this project submitted by us. I have tried to show that the package developed by us would
able to solve all problems regarding maintaining the record of each student.

Keep the record of each student.

Drawing various report by the administrator.

Keep the record of each faculty member.

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 103

FUTURE SCOPE OF THE PROJECT

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 104

8.b.FUTURE SCOPE OF THE PROJECT

The project E-ticket System for Cinema Hall is flexible enough to meet the
requirements of the Customers. This project also has the scope of enhancements
like:
1- Home delivery of tickets may be provided.
2-Online Booking of Purchases of eatables(coldrinks, popcorn etc) can be
provided.
3-Corporate booking: Multimedia support for corporate presentation can
beprovided. Conference facility can be provided for corporate meetings in the
hall. This will increase the profit of cinema halls as well as the company
organizing event.
4- Group booking :Any institute/company can book the tickets for
students/clients and special discount will be provided to them

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 105

BIBLIOGRAPHY

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 106

9.BIBLIOGRAPHY

REFERENCES:-

REFERENCE BOOKS:-

Herbert Schildt, JAVA2 COPLETE REFERENCE, 5

TH

edition, Pregti

publication, April 2004

Pankaj Sharma, INTRODUCTION TO WEB TECHNOLOGY, 2

nd

edition S.K. Kataria & Sons publication, April 2007

Roger S. Pressman, SOFTWARE ENGINEERING, 3

rd

edition by

McGraw Hill International, April 2002.

AN

INTEGRATED APPROACH TO S/W ENGINEERING, by Pankaj

Jalote.

DATABASE SYSTEM CONCEPTS, by Korth

REFERENCE WEBSITES

www.stardeveloper.cn
www.javaskyline.com
Online Ticket Booking for Cinema Halls
BY: - ADITI PANDEY
11065106004
Page 107

www.novocode.com
www.songsmp3.com
www.apl.jhu.edu

Online Ticket Booking for Cinema Halls


BY: - ADITI PANDEY
11065106004
Page 108

You might also like