Professional Documents
Culture Documents
System definition
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 tic ets 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 ma ing searching more efficient.
Factor Analysis:
Functionality 0 searching, boo ing, buying, scheduling Appl. domain - serving cinema customers, cler s. Conditions - Cooperation with cinema cler s, other similar boo ing systems, *$lliterate users. 1ultilingual system, users spea ing different languages. 2on s illed users. .3h"day uptime.Technology - client-server, replicated server farms, incrementally built upon need, 1.3331.333.333 concurrent users. Objects 0 Cinema, 4oom, +eat, +ession, 1ovie, ,oo ing. Responsibility - reliable boo ing, buying, searching movies and cinemas
/ 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 !ee plan of sessions at a cinema. &sed to ma e searching more efficient. Attributes) Time Table $D, Cinema, wee Session &ni%uely identifies time, room, cinema and movie. ,oo ings also contain information lin ing concrete seats to reservation numbers, i.e., a plan of boo ings 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) boo ing $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 boo ing class has information about the session and a set of seats. Attributes) ,oo ing $D, seat7ist.
"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 boo ing. bookCancelled A costumer may enter the boo ing $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 Tic ets, 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, li e 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. roomU dated!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. cinemaU dated!entered/e#ited" Cinemas may enter or e5it the system. This information is fed to the system by the cinema managers. movieU dated!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.
Events seatSelected seatDeselected seatPayed Book bookCancelled bookTimeOut roomCreated roomDeleted cinemaEntered cinemaExited sessionScheduled sessionTimeOut sessionCancelled ticketPrinted movieEntered Classes Cinema Seat + + + + + + + + Room Session Movie Timetable Booking
+ + + + + + + + +
+ + + +
+ + + +
+ + + +
+ + + + +
Behavior!
Problem domain dynamics is mainly associated with session, boo ing and seat classes. ,ehavioral patterns of these classes are ta en into consideration.
<
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 clic s a session from the list that results from the search. A screen representation of a room with seats appears. +eats already boo ed and payed for will be red, boo ed 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 boo ing. 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 boo ing, a message about possible rescheduling are announced at the site and that money can be refunded using proper identification.
Payment
!hen a boo ing 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 tic ets 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 boo ings for the session 0 it becomes a more comple5 tas if boo ings 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 ma ing a boo ing.
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 tas s are performed through the cinema manager interface.
"#$ CA#$ +earch ,oo ing F"%CT&O% +earch Commit Aiew+eats "'(AT$ R$A( #&)%A* CO+'"T$
@ @ @ @ @ @ @ @ @ @