Académique Documents
Professionnel Documents
Culture Documents
Abstract
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.
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.
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 movie ticket booking system has been developed to override the problems prevailing
in the practicing manual system. This system is supported to eliminate and in some cases
reduce the hardships faced by this existing system. Moreover this system is designed for
the particular need of the company to carry out operations in a smooth and effective
manner. The application is reduced as much as possible to avoid errors while making the
data it provides error message while entering invalid data. No formal knowledge is needed
for the user to use this system. Thus, by this all it proves it is user friendly. Online movie
ticket booking system as described above can lead to error free, secure, reliable and first
management system. It can assist the user to concentrate on their other activities rather
than to concentrate on a Record Keeping. Thus, it will help Organisation in better
utilisation of resources.
System Requirements
Functional Requirements
Functional Requirement defines a function of software system and how the system must behave
when presented with specific inputs or conditions. These may include calculations, data
manipulation and processing and other specific functionality. The functional requirements of the
project are one of the most important aspects in terms of entire mechanism of modules.
The functional requirements here are:
Reliability
The framework ought to be dependable and solid in giving the functionalities. When a
client has rolled out a few improvements, the progressions must be made unmistakable by
the framework. The progressions made by the Programmer ought to be unmistakable both
to the Project pioneer and in addition the Test designer.
Security
Aside from bug following the framework must give important security and must secure
the entire procedure from smashing. As innovation started to develop in quick rate the
security turned into the significant concern of an association. A great many dollars are
put resources into giving security. Bug following conveys the greatest security accessible
at the most noteworthy execution rate conceivable, guaranteeing that unapproved clients
can't get to imperative issue data without consent. Bug following framework issues
diverse validated clients their mystery passwords so there are limited functionalities for
all the clients.
Maintainability
The framework observing and upkeep ought to be basic and target in its approach. There
should not be an excess of occupations running on diverse machines such that it gets hard
to screen whether the employments are running without lapses.
Performance
The framework will be utilized by numerous representatives all the while. Since the
framework will be facilitated on a solitary web server with a solitary database server out
of sight, execution turns into a noteworthy concern. The framework ought not succumb
when numerous clients would be utilizing it all the while. It ought to permit quick
availability to every last bit of its clients. For instance, if two test specialists are all the
while attempting to report the vicinity of a bug, then there ought not to be any irregularity
at the same time.
Portability
The framework should to be effectively versatile to another framework. This is obliged
when the web server, which s facilitating the framework gets adhered because of a few
issues, which requires the framework to be taken to another framework.
Scalability
The framework should be sufficiently adaptable to include new functionalities at a later
stage. There ought to be a typical channel, which can oblige the new functionalities.
Flexibility
Flexibility is the capacity of a framework to adjust to changing situations and
circumstances, and to adapt to changes to business approaches and rules. An adaptable
framework is one that is anything but difficult to reconfigure or adjust because of diverse
client and framework prerequisites. The deliberate division of concerns between the
trough and motor parts helps adaptability as just a little bit of the framework is influenced
when strategies or principles change.
Hardware Requirements
Memory : 4GB.
Mouse : Logitech.
Software Requirements
Operating System : Windows 7 / 8.
Database : MySQL
System Design
An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities” such
as people, objects, or concepts relate to each other within a system. An Entity Relationship
diagram describes inter-related things of interest in a specific domain of knowledge. An ER
model is composed of entity types and specific relationships that can exist between instances of
those entity types.
Normalization
NORMALIZATION
Schema diagram
The schema diagram formulates all the constraints that are to be applied on the data, A database
schema defines its entities and the relationship among them. It contains a descriptive detail of the
database, which can be depicted by means of schema diagram.
Primary Key: There can be more than one candidate key in a relation out of which one can be
chosen as primary key
Foreign Key: If an attribute can only take the values which are present as values of some other
attribute, it will be foreign key to the attribute to which it refers. The relation which is being
referenced is called referenced relation and corresponding attribute is called referenced attribute
and the relation which refers to referenced relation is called referencing relation and
corresponding attribute is called referencing attribute. Referenced attribute of referencing
attribute should be primary key.
System Implementation
Tools
NetBeans IDE
NetBeans IDE is the official IDE for Java 8. With its editors, code analyzers, and
converters, you can quickly and smoothly upgrade your applications to use new Java 8 language
constructs, such as lambdas, functional operations, and method references. Batch analyzers and
converters are provided to search through multiple applications at the same time, matching
patterns for conversion to new Java 8 language constructs. With its constantly improving Java
Editor, many rich features and an extensive range of tools, templates and samples, NetBeans IDE
sets the standard for developing with cutting edge technologies out of the box. An IDE is much
more than a text editor. The NetBeans Editor indent lines, matches words and brackets, and
highlight source code syntactically and semantically. It also provides code templates, coding tips,
and refactoring tools. The editor supports many languages from Java, C/C++, XML and HTML,
to PHP, Groovy, Javadoc, JavaScript and JSP. Because the editor is extensible, you can plug in
support for many other languages. Keeping a clear overview of large applications, with
thousands of folders and files, and millions of lines of code, is a daunting task. NetBeans IDE
provides different views of your data, from multiple project windows to helpful tools for setting
up your applications and managing them efficiently, letting you drill down into your data quickly
and easily, while giving you versioning tools via Subversion, Mercurial, and Get integration out
of the box. When new developers join your project, they can understand the structure of your
application because your code is well-organized.
Design GUIs for Java SE, HTML5, Java EE, PHP, C/C++, and Java ME applications
quickly and smoothly by using editors and drag-and-drop tools in the IDE. For Java SE
applications, the NetBeans GUI Builder automatically takes care of correct spacing and
alignment, while supporting in-place editing, as well. The GUI builder is so easy to use and
intuitive that it has been used to prototype GUIs live at customer presentations. The cost of
buggy code increases the longer it remains unfixed. NetBeans provide static analysis tools,
especially integration with the widely used FindBugs tool, for identifying and fixing common
problems in Java code. In addition, the NetBeans Debugger lets you place breakpoints in your
source code, add field watches, step through your code, run into methods. The NetBeans Profiler
provides expert assistance for optimizing your application's speed and memory usage, and makes
it easier to build reliable and scalable Java SE, JavaFX and Java EE applications. NetBeans IDE
includes a visual debugger for Java SE applications, letting you debug user interfaces without
looking into source code. Take GUI snapshots of your applications and click on user interface
elements to jump back into the related source code.
Navicat
Navicat Premium is a multi-connections database administration tool allowing you to
connect to MySQL, MariaDB, SQL Server, and SQLite, Oracle and PostgreSQL databases
simultaneously within a single application, making database administration to multiple kinds of
database so easy.
Navicat Premium combines the functions of other Navicat members and supports most of
the features in MySQL, MariaDB, SQL Server, SQLite, Oracle and PostgreSQL including Stored
Procedure, Event, Trigger, Function, View, etc.
Navicat Premium enables you to easily and quickly transfer data across various database
systems, or to a plain text file with the designated SQL format and encoding. Also, batch job for
different kind of databases can also be scheduled and run at a specific time. Other features
include Import/ Export Wizard, Query Builder, Report Builder, Data Synchronization, Backup,
Job Scheduler and more. Features in Navicat are sophisticated enough to provide professional
developers for all their specific needs, yet easy to learn for users who are new to database server.
Establish a secure SSH session through SSH Tunnelling in Navicat. You can enjoy a
strong authentication and secure encrypted communications between two hosts. The
authentication method can use a password or public / private key pair. And, Navicat comes with
HTTP Tunnelling while your ISPs do not allow direct connections to their database servers but
allow establishing HTTP connections. HTTP Tunnelling is a method for connecting to a server
that uses the same protocol (http://) and the same port (port 80) as a webserver does.
Languages:
Overview of Java/JSP
Java was conceived by James Gosling, Patrick Naughton, Chris wrath, Ed Frank, and
Mike Sheridan at Sun Micro system. It is a platform independent programming language that
extends its features wide over the network. Java2 version introduces a new components than are
possible with AWT
• It’s a light weight package, as they are not implemented by platform-specific code.
• Related classes are contained in javax.swing and its sub packages, such as
javax.swing.tree
• Components explained in the swing have more capabilities than those of AWT.
The Java programming language is a high-level language that can be characterized by all of
the following buzzwords
• Simple
• Architecture neutral
• Object oriented
• Portable
• Distributed
• High performance
• Interpreted
• Multithreaded
• Robust
• Dynamic
• Secure
With most programming languages, it either compile or interpret a program so that it can
run it on our computer. The Java programming language is unusual in that a program is both
compiled and interpreted. With the compiler, first it translate a program into an intermediate
language called Java byte codes.
Java byte codes are the platform-independent codes interpreted by the interpreter on the
Java platform. The interpreter parses and runs each Java byte code instruction on the computer.
Compilation happens just once; interpretation occurs each time the program is executed. The
following figure illustrates how this works.
Architecturally, JSP may be viewed as a high-level abstraction of Java servlets. JSPs are
translated into servlets at runtime each JSP, servlet is cached and re-used until the original JSP is
modified.
JSP allows Java code and certain pre-defined actions to be interleaved with static web
markup content, with the resulting page being compiled and executed on the server to deliver a
document. The compiled pages, as well as any dependent Java libraries, use Java bytecode rather
than a native software format. Like any other Java program, they must be executed within a Java
virtual machine (JVM) that integrates with the server's host operating system to provide an
abstract platform-neutral environment.
JSPs are usually used to deliver HTML and XML documents, but through the use of
OutputStream, they can deliver other types of data as well.
The Web container creates JSP implicit objects like pageContext, ServletContext,
session, request & response.
Fig.: jsp model
A JavaServer Pages compiler is a program that parses JSPs, and transforms them into
executable Java Servlets. A program of this type is usually embedded into the application
server and run automatically the first time a JSP is accessed, but pages may also be recompiled
for better performance, or compiled as a part of the build process to test for errors. Some JSP
containers support configuring how often the container checks JSP file timestamps to see
whether the page has changed. Typically, this timestamp would be set to a short interval (perhaps
seconds) during software development, and a longer interval (perhaps minutes, or even never)
for a deployed Web application.
Java Servlet
The servlet is a Java programming language class used to extend the capabilities of
a server. Although servlets can respond to any types of requests, they are commonly used to
extend the applications hosted by web servers, so they can be thought of as Java applets that run
on servers instead of in web browsers. These kinds of servlets are the Java counterpart to other
dynamic Web content technologies such as PHP and ASP.NET.
Fig.: Life of a jsp file
Three methods are central to the life cycle of a servlet. These are init(), service(),
and destroy(). They are implemented by every servlet and are invoked at specific times by the
server.
During the initialization stage of the servlet life cycle, the web container initializes the
servlet instance by calling the init() method, passing an object implementing the
javax.servlet.ServletConfig interface. This configuration object allows the servlet to
access name-value initialization parameters from the web application.
After initialization, the servlet instance, can service client requests. Each request is serviced
in its own separate thread. The web container calls the service () method of the servlet for
every request. The service () method determines the kind of request being made and
dispatches it to an appropriate method to handle the request. The developer of the servlet
must provide an implementation for these methods. If a request is made for a method that is
not implemented by the servlet, the method of the parent class is called, typically resulting in
an error being returned to the requester.
Finally, the web container calls the destroy () method that takes the servlet out of service.
The destroy () method, like init(), is called only once in the lifecycle of a servlet.
SQL was one of the first commercial languages for Edgar F. Codd's relational model, as
described in his influential 1970 paper, "A Relational Model of Data for Large Shared Data
Banks." Despite not entirely adhering to the relational model as described by Codd, it became the
most widely used database language.
SQL became a standard of the American National Standards Institute(ANSI) in 1986, and
of the International Organization for Standardization(ISO) in 1987. Since then, the standard has
been enhanced several times with added features. Despite these standards, code is not completely
portable among different database systems, which can lead to vendor lock-in. The difference
makers do not perfectly adhere to the standard, for instance by adding extensions, and the
standard itself is sometimes ambiguous.
We propose a system which is more reliable, entertaining and easy than the present system. Our
solution targets those users who do not have spare time to stand in queue for booking tickets. We
propose an easy way of ordering and paying for the tickets without any delays and
inconvenience. Book tickets to people who, without his physical presence is assured of a ticket
before going to the theater. Customers who book tickets on their mobile phones, an instant
messaging (m-ticket) will receive. By splashing the M- ticket at the counter of the multiplex, the
client can receive physical tickets. No longer issue tickets to staff at the multiplex complex
manual ticket availability and tracking system is needed. Ticket information can be accessed at
any time for verification, which is safely stored in a database.