Sie sind auf Seite 1von 7

1

Cinema Booking system


System Introduction: (Class names in bold)
The system covers all cinemas in a country, but depending upon needs, it can integrate
cinemas of other countries as well. Cinemas have one or more rooms, and each room
contains a set of seats. A room can be built and integrated in the system through a room
Designer interface.
People should use the system to find particular movie-sessions by various search criteria
lie country, area, city, time, cinema, and movie title, movie category and so on. !hen
entering the web-page the system automatically sets the search conditions to the local
area. !hen the user has entered search criteria he or she will be presented with a list of
session-lins that fulfill the criteria or an empty list and a message if no session fulfills
the criteria. Clicing a session gives a graphical presentation of the room of the session,
at which seats can be selected"deselected, a total pri#e displayed and a booing-commit
button. A booking number is displayed at the screen. The user can then bring along this
booing number and have the ticets printed later and somewhere else. Also, this booing
number is essential if the user should have his"her money bac due to session-
cancellation, disease or other problems. $f a user does not pay until some time, specified
by the local cinema, before the session begins, the reservation will automatically be
cancelled and the corresponding set of seats can become available for other users. !hen
one hour of the movie has passed booing or buying a ticet for that particular session is
no longer possible, but the session information is ept for some time to handle any
costumer-re%uests or -complaints. &pon payment, printing the corresponding ticets is
possible at any computer connected to the internet and a printer, or at any cinema
covered by the system. $t is the user's responsibility to tae care of the ticets because a
given ticet, representing a seat, can only be printed once.
The system provides functionality for a cinema manager to schedule future movies at
his"her own cinema, i.e., entering sessions into the database, as well as changing the
scheduling and correcting errors in scheduling. Also there is an administrator interface
that taes care of maintaining the system, i.e., updates the list of cinemas that are covered
by the system as well as system monitoring.
Thus, the system is basically divided into three ma(or parts,
1- &sers) *+earching, ,ooing, Paying-
.- +ystem administrator *person who monitors the target system-
/- Cinema manager *person who uses the system for their cinema-
$f some cinema wants to be part of the system, someone responsible for running the
cinema must contact the administrator. The system administrator will grant permission to
the cinema administrator so scheduling of movies at the particular cinema can be
performed.
.
System defnition
People can use this system to search movies and cinemas in any area specified by the
user. Cinemas consists of rooms and seats. &sers of the system can search for cinemas
or movies. They should be able to narrow down the search to any area and time interval.
Booking, payment and printing ticets is possible from any computer on-line. The central
class is the session class that have information about time, movie, cinema, room, time,
seats and bookings. Cinema managers can schedule, reschedule and correct movie
session scheduling. +ession information is collected in timetable-ob(ects for maing
searching more efficient.
Factor Analysis:
Functionality 0 searching, booing, buying, scheduling
Appl. domain - serving cinema customers, clers.
Conditions - Cooperation with cinema clers, other similar booing systems,
*$lliterate users. 1ultilingual system, users speaing different languages. 2on silled
users. .3h"day uptime.-
Technology - client-server, replicated server farms, incrementally built upon need, 1.333-
1.333.333 concurrent users.
Objects 0 Cinema, 4oom, +eat, +ession, 1ovie, ,ooing.
Responsibility - reliable booing, buying, searching movies and cinemas
Problem Domain overview
The target system should provide facilities for clients and cinema clers to search for
vacant seats at particular movie-sessions using various criteria lie city, cinema, movie
title, movie category etc.. !hen users have identified a particular session, the session
screen is displayed, at which, depending on the color of the seat-symbols, it is possible to
choose a number of seats to boo or reserve. A reservation can either be followed directly
by payment or a reservation number can be brought to another computer and used as
login or to the cinema and in both cases payment can be made and ticets printed. $f a
cinema burns down or for any other reason a session is cancelled, it is announced on the
web page. $t is crucial that users eep his"her reservation number if, for any reason,
money for bought ticets should be refunded. Thus, sessions are ept in some session
storage for some time to mae it possible to trac any relevant information in any cases
of complaint.
Applikation domain overview
The system should sustain all tass necessary for any costumer to mae the cinema
e5perience nice and easy. !hether a cinema wants to have clers employed at the
cinema, is a matter of choice of the cinema owner. This system is supposed to wor in a
way that all necessary tass can be done solely by the user. The whole spectrum from
searching a movie and location to having bought and printed a set of ticets is managed
by the system and controlled by the user. Cancellation and handling of erratic scenarios
or use-cases is covered by eeping past session information stored for some limited time.
/
The system contains all movies that any cinema manager has bothered to enter into the
system. +o, if an old or new movie has not been entered and a cinema manager wants to
schedule the movie at his"her cinema in the near future, he or she has to enter it 0 with all
re%uired fields. This is done throug
!e problem domain
Structure
Clusters
6igure 1 shows the class diagram and the only cluster we have in our system is indicated)
Cinemas have rooms which have seats. Cinemas aggregate rooms which aggregates seats.
A description of classes and events follows.
Classes:
Time table
!eeplan of sessions at a cinema. &sed to mae searching more efficient.
Attributes) Time Table $D, Cinema, wee
Session
&ni%uely identifies time, room, cinema and movie. ,ooings also contain information
lining concrete seats to reservation numbers, i.e., a plan of booings for the session.
+ession is the data model for the
Attributes) time, session $D
Booking
$nformation on a set of seats at a session 0 a user can be identified through a reservation
number.
Attributes) booing $D.
Movie
1ovie contains information about the movies in general.
Attributes) title, category, abstract, author, year, blabla*spea to a movie e5pert-.
Cinema
$dentity and contact information.
Attributes) name, address, municipal, telephone, fa5, manager.
Room
A room has a number and contains a seat plan.
Attributes) room $D, seatplan.
Seat
+eat class is a template for all seats and every seat ob(ect nows whether it is free.
Attributes) seat $D, reserved, paid.
Booking
The booing class has information about the session and a set of seats.
Attributes) ,ooing $D, seat7ist.
8
6igure 1) Class Diagram.
"vents:
seatSelected/seatDeselected
A customer selects and deselects seats while choosing the right seats at the session
screen.
seatPaid
A seat has been paid for.
Book
A seat was selected at the time of committing the booing.
bookCancelled
A costumer may enter the booing $D and cancel the reservations.
bookTimeOut
,efore session-start, before some time-interval set by the cinema manager, all non-paid
reservations are set free automatically for other costumers to boo.
ticketPrinted
Ticets, representing single seats can be printed only once.
sessionScheduled/sessionCancelled
!hen the cinema manager enters session data to the database a number of sessions get
scheduled, lie pressing a 9commit session schedule: button. +essions can be cancelled.
sessionTimeOut
A number of minutesinto a movie session, the number is decided by the cinema manager,
the seats of a session become unavailable for buying. The session is then stored for later
use in case of any in%uiries or complaints.
searchTermsEntered
The costumer has pressed the 9search button:, search-criteria being valid or not.
roomUdated!created/deleted"
;
4ooms can be designed, relating to number and arrangement of seats, in the system using
the room-designer interface available for cinema managers. Also rooms can be renovated
and changed.
cinemaUdated!entered/e#ited"
Cinemas may enter or e5it the system. This information is fed to the system by the
cinema managers.
movieUdated!entered"
!hen a new movie has been produced it should be entered into the system, with all
relevant descriptive fields, so that cinema managers can pic the title from a 7ist,o5 and
schedule it at his"her cinema.
Figure ! system event table.
Behavior!
Problem domain dynamics is mainly associated with session, booing and seat classes.
,ehavioral patterns of these classes are taen into consideration.
6igure) ,ehavioral pattern for the class ,ooing.
<
6igure) behavioral pattern for the class +ession.
6igure) behavioral pattern for the class +eat.
6igure =) &se case diagram
Use Cases:
Searc!#ovie
A potential costumer will search for a movie, cinema or other criteria) Continent,
Country, region, city, city area, cinema, movie, time period. !hen a user enters the site,
the first thing happening is the appearance of a form with listbo5es. To limit the content
of low-hierarchi listbo5es, these are not shown before the search has been narrowed down
to a limited area such as a city or area in low-populated areas. 7istbo5es with all possible
choices of cinemas and movies in the chosen area and time period will appear.
$ookin%
The potential costumer clics a session from the list that results from the search. A screen
representation of a room with seats appears. +eats already booed and payed for will be
red, booed but not paied seats are yellow, whereas vacants are green. The costumer can
now select and deselect green seats and press the boo button to commit a booing. The
costumer can also appear half an hour before the beginning of a session and hope that
some of the yellow seats have not been payed for. !hen committing a booing, a
message about possible rescheduling are announced at the site and that money can be
refunded using proper identification.
Payment
!hen a booing has been committed, the user is presented with a choice of paying
immediately or later. $f immediately is chosen the user is presented with a standard
procedure from PayPal or other third-party Payment-service.
>
icketPrint
!hen Payment for a set of seats has been performed either outside or at the cinema, the
individual ticets can be printed. This is done by the user identifying him"her self with
either a stripe-code printed at home or elsewhere 0 which can be interpreted by a machine
at cinema, or identification through the card used for payment. $f payment is performed at
the cinema, identification is not necessary.
Session"ditin%
Cinema managers schedule movie sessions through an interface. +essions can be entered
into and deleted from the system. +essions can also be edited. All this is done through the
cinema manager interface. $f, for some reason a movie-session must be cancelled or
rescheduled, this is straight forward while there are no booings for the session 0 it
becomes a more comple5 tas if booings have already been made for the session. Then
announcements must be made on the site. ,ecause users are anonymous, they cannot be
notified directly. ?owever, users of the system are made aware of this ris when maing
a booing.
Cinema"ditin%
Cinema managers can be allowed to register their cinema with the system, at which point
the rooms should be built and become available to the system. The use case is best
described as a 9how to: use the cinema manager's room designer. 2ew rooms can be
built, new seats added and so on. These tass are performed through the cinema manager
interface.
"#$ CA#$ F"%CT&O% "'(AT$ R$A( #&)%A* CO+'"T$
+earch +earch
@
,ooing Commit
@
Aiew+eats
@
+elect+eat
@
CalculateTotalAmount
@
Payment Pay6or,ooing
@
TicetPrint BetPrint
@
+essionCditing Cdit"Delete"Create+ession
@
CinemaCditing Cdit"Delete"CreateCinema
@
,ooing4eduction 4emove+eat
@

Das könnte Ihnen auch gefallen