Course: Modelling and Design (fall 2007) Course responsible: Thomas Hildebrandt Submitted by: Toomas Kutt(toomas@itu.dk), Fraz Tabassam(tabassam@itu.dk) Jens kaae Christensen(jenshr@itu.dk) ! Contents System "ntrodution:............................................................................................................# System de$inition.................................................................................................................% Fator &na'ysis:...................................................................................................................% (rob'em )omain o*er*ie+..................................................................................................% &,,'iation domain o*er*ie+..............................................................................................- The ,rob'em domain............................................................................................................- Structure............................................................................................................................- C'asses:............................................................................................................................- .*ents:............................................................................................................................./ 0eha*ior:..........................................................................................................................1 The &,,'iation )omain:....................................................................................................2 3sa4e...............................................................................................................................2 &tors:............................................................................................................................11 3se Cases:..........................................................................................................................11 Searh.............................................................................................................................11 0ookin4..........................................................................................................................11 (ayment.........................................................................................................................1! Tiket(rint.....................................................................................................................1! Session.ditin4...............................................................................................................1! Cinema.ditin4...............................................................................................................1! Funtions:..........................................................................................................................1% )esi4n )oument..............................................................................................................!1 (ur,ose:.........................................................................................................................!1 Corretion to the ana'ysis:.............................................................................................!1 5ua'ity 6oa's:................................................................................................................!1 Tehnia' ('at$orm:............................................................................................................!! .7ui,ment:.....................................................................................................................!! System So$t+are:...........................................................................................................!! )esi4n 8an4ua4e:..........................................................................................................!! &rhiteture:......................................................................................................................!! Com,onent &rhiteture:...............................................................................................!! (roess &rhiteture:.....................................................................................................!# 9ode' Com,onent:........................................................................................................!% Funtion Com,onent:....................................................................................................!: Con'usion:........................................................................................................................!/ ;e$erenes:........................................................................................................................!/ # Cinema Booking System System Introduction: The system o*ers a'' inemas in a ountry, but de,endin4 u,on needs, it an inte4rate inemas o$ other ountries as +e''. &ny inema has one or more rooms, and eah room ontains a set o$ seats. & room an be bui't and inte4rated in the system throu4h a room )esi4ner inter$ae, mana4ed throu4h a +eb based inema mana4er inter$ae. "n $uture re'eases, this system +i'' ,ro*ide an inter$ae a''o+in4 e<istin4 inema mana4ement systems to easi'y ada,t to ommuniate +ith our system. (eo,'e shou'd use our system to $ind ,artiu'ar mo*ie=sessions by *arious searh riteria 'ike ountry, area, ity, time, cinema or movie tit'e. >hen enterin4 the +eb=,a4e the system automatia''y sets the searh onditions to the 'oa' area, and a time inter*a' s,annin4 the rest o$ the urrent day. >hen the user has entered searh riteria he or she +i'' be ,resented +ith a 'ist o$ session='inks that $u'$i'' the riteria or an em,ty 'ist. C'ikin4 a session 'ink returns a 4ra,hia' ,resentation o$ the room o$ the session, at +hih seats an be se'eted?dese'eted, a tota' ,rize dis,'ayed and a bookin4=ommit button. & booking number +i'' be dis,'ayed at the sreen. The user an brin4 a'on4 this bookin4 number and ha*e the tikets ,rinted 'ater. &'so, this bookin4 number is essentia' i$ the user shou'd ha*e his?her money bak due to session=ane''ation, disease or other ,rob'ems. "$ a user does not ,ay be$ore some time 'imit, s,ei$ied by the 'oa' inema, be$ore the session be4ins, the reser*ation +i'' automatia''y be ane''ed and the orres,ondin4 set o$ seats beomes a*ai'ab'e $or other users. >hen the mo*ie has been on $or some time=s,an, +hih is a'so set by the inema mana4er, bookin4 or buyin4 a tiket $or that ,artiu'ar session is no 'on4er ,ossib'e. @o+e*er, the session in$ormation is ke,t $or some time to hand'e any ustomer=re7uests or =om,'aints. 3,on ,ayment, ,rintin4 the orres,ondin4 tikets is ,ossib'e at any om,uter onneted to the internet and a ,rinter, or at any cinema o*ered by the system. "t is the userAs res,onsibi'ity to take are o$ the tikets beause a 4i*en tiket, re,resentin4 a seat, an on'y be ,rinted one. The system ,ro*ides $untiona'ity $or a cinema mana4er to shedu'e $uture mo*ies at his?her o+n cinema, i.e., enterin4 sessions into the database, as +e'' as han4in4 the shedu'in4 and orretin4 errors in shedu'in4 ("$ any bookin4s ha*e been made this beomes a bit more trikyB). Thus, the system has t+o kinds o$ 'ients, 1= 3ser: (Searhin4, 0ookin4, (ayin4) % != Cinema manager (,ersons +ho use the system $or their inema) "$ some inema +ants to be ,art o$ the system, someone res,onsib'e $or mana4in4 the inema must ontat the system administration. The system administration +i'' 4rant ,ermission to the inema so shedu'in4 o$ mo*ies at the ,artiu'ar inema an be ,er$ormed. System defnition (eo,'e an use this system to searh mo*ies and inemas in any area s,ei$ied by the user. Cinemas onsists o$ rooms and seats. 3sers o$ the system an searh $or cinemas or movies They shou'd be ab'e to narro+ do+n the searh to any area and time inter*a'. Booking, ,ayment and ,rintin4 tikets is ,ossib'e $rom any om,uter on='ine. The entra' 'ass is the session 'ass that ha*e in$ormation about movie, cinema, room, time, seats and bookings. Cinema mana4ers an shedu'e, reshedu'e and orret mo*ie session shedu'in4. Session in$ormation is o''eted in timetable=objets $or makin4 searhin4 more e$$iient. Factor Analysis: !unctionality C searhin4, bookin4, buyin4, shedu'in4 "##l domain = ser*in4 inema ustomers, 'erks. Conditions = Coo,eration +ith inema 'erks, other simi'ar bookin4 systems, (9u'ti'in4ua' system. Don ski''ed users. 22.22E u,time, a'most un'imited ressoures.) $ec%nology = 'ient=ser*er, re,'iated ser*er $arms, inrementa''y bui't u,on need, 1.FFF= 1.FFF.FFF onurrent users. &b'ects C Cinema, ;oom, Seat, Session, 9o*ie, 0ookin4, TimeTab'e. (es#onsibility = re'iab'y searhin4 mo*ies and inemas and bookin4 and buyin4. Problem Domain overview The tar4et system shou'd ,ro*ide $ai'ities $or 'ients and inema 'erks to searh $or *aant seats at ,artiu'ar mo*ie=sessions usin4 *arious riteria 'ike ity, inema, mo*ie tit'e, mo*ie ate4ory et.. >hen users ha*e identi$ied a ,artiu'ar session) the session sreen is dis,'ayed, at +hih, de,endin4 on the o'or o$ the seat=symbo's, it is ,ossib'e to hoose a number o$ seats to book or reser*e. & reser*ation an either be $o''o+ed diret'y by ,ayment or a reser*ation number an be brou4ht to another om,uter and used as 'o4in or to the inema and in both ases ,ayment an be made and tikets ,rinted. "$ a inema burns do+n or $or any other reason a session is ane''ed, it is announed on the +eb ,a4e. "t is ruia' that users kee, his?her reser*ation number i$, $or any reason, money $or bou4ht tikets shou'd be re$unded. Thus, sessions are ke,t in some session stora4e $or some time to make it ,ossib'e to trak any re'e*ant in$ormation in any ases o$ om,'aint. - Application domain overview The system shou'd sustain a'' tasks neessary $or any ustomer to make the inema e<,eriene nie and easy. >hether a inema +ants to ha*e 'erks em,'oyed at the inema, is a matter o$ hoie o$ the inema o+ner. This system is su,,osed to +ork in a +ay that a'' neessary tasks an be done so'e'y by the user. The +ho'e s,etrum $rom searhin4 a mo*ie and 'oation to ha*in4 bou4ht and ,rinted a set o$ tikets is mana4ed by the system and ontro''ed by the user. Cane''ation and hand'in4 o$ errati senarios or use=ases is o*ered by kee,in4 ,ast session in$ormation stored $or some 'imited time. The system ontains a'' mo*ies that any inema mana4er has bothered to enter into the system. So, i$ an o'd or ne+ mo*ie has not been entered and a inema mana4er +ants to shedu'e the mo*ie at his?her inema in the near $uture, he or she has to enter it C +ith a'' re7uired $ie'ds. This is done throu4h the inema mana4er inter$ae. The problem domain Structure Clusters Fi4ure 1 sho+ the 'ass dia4ram and the on'y 'uster +e ha*e in our system is indiated: Cinemas ha*e rooms +hih ha*e seats. Cinemas a44re4ate rooms +hih a44re4ates seats. & desri,tion o$ 'asses and e*ents $o''o+s. Classes: Time table Time tab'e is ontainer 'ass in urrent system. "t ontains 'ist o$ a'' sessions, 'ist o$ a'' mo*ies and inemas. Time tab'e 'ass is se'eted $or searhin4 ,oint o$ *ie+. &s it ontains om,'ete in$ormation about inemaAs, mo*ies and session, user an searh a'' the sessions a*ai'ab'e $or mo*ie or an searh a'' the inemas re4istered +ith inema bookin4 system. "ttributes: timeTab'e"), inema8ist, mo*ie8ist, session8ist.
Session & session objet uni7ue'y ho'ds to4ether time, room, seat) booking and movie. Session is the entra' 'ass that oordinates this in$ormation, thus it ho'ds the data mode' read to ,resent a sreen o$ *aant and reser*ed seats. "t a'so kee,s trak o$ bookin4 and ,ayment in$ormation. "ttributes: time, session ") Booking "n$ormation on a set o$ seats at a session C a user an be identi$ied throu4h a reser*ation number. "ttributes: bookin4 "). Movie 9o*ie ontains in$ormation about the mo*ies in 4enera'. For e<am,'e it arries in$ormation about the ti'te' o$ mo*ie, ators, ate4ory (ation, omedy, et.). "ttributes: tit'e, ate4ory, abstrat, author, year. : Cinema Cinema 'ass arries 4enera' in$ormatin about a inema i.e. name o$ inema, 'oation, and ontat in$ormation. "ttributes: name, address, munii,a', te'e,hone, $a<, mana4er. Room & room has a number and ontains a seat ,'an (set o$ seats). ;oom is a44re4ation o$ inema. & inema an ha*e one or many rooms. "ttributes: room "), seat ,'an. Seat Seat 'ass is a tem,'ate $or a'' seats and e*ery seat objet kno+s +hether it is $ree. Seat 'ass is a44re4ation o$ room 'ass. & room an ha*e se*era' numbers o$ seats. "ttributes: seat "), reser*ed, and ,aid. Booking The bookin4 'ass has in$ormation about the session and a set o$ seats. "ttributes: 0ookin4 "), seat 8ist. !igure *: C'ass )ia4ram. / Events: seatSelected/seatDeselected & ustomer se'ets and dese'ets seats +hi'e hoosin4 the a,,ro,riate seats at the session sreen. seatPaid & seat has been ,aid $or. Book "$ a seat +as se'eted at the time o$ ommittin4 the bookin4 it beomes reser*ed. bookCancelled & ustomer may enter the bookin4 ") and ane' the reser*ations. bookTimeOut 0e$ore session=start, be$ore some time=inter*a' set by the inema mana4er, a'' non=,aid reser*ations are set $ree automatia''y $or other ustomers to book. ticketPrinted Tikets, re,resentin4 sin4'e seats >hen the inema mana4er enters an be ,rinted on'y one. sessionScheduled/sessionCancelled session data to the database a number o$ sessions 4et shedu'ed, 'ike ,ressin4 a Gommit session shedu'eH button. Sessions an be ane''ed. sessionTimeOut & number o$ minutes into a mo*ie session, the number is deided by the inema mana4er, the seats o$ a session beome una*ai'ab'e $or buyin4. The session is then stored $or 'ater use in ase o$ any in7uiries or om,'aints. searchTermsEntered The ustomer has ,ressed the Gsearh buttonH, searh=riteria bein4 *a'id or not. roomUdated!created/deleted" ;ooms an be desi4ned, re'atin4 to number and arran4ement o$ seats, in the system usin4 the room=desi4ner inter$ae a*ai'ab'e $or inema mana4ers. &'so rooms an be reno*ated and han4ed. cinemaUdated!entered/e#ited" Cinemas may enter or e<it the system. This in$ormation is $ed to the system by the inema mana4ers. 1 movieUdated!entered" >hen a ne+ mo*ie has been ,rodued it shou'd be entered into the system, +ith a'' re'e*ant desri,ti*e $ie'ds, so that inema mana4ers an ,ik the tit'e $rom a 8ist0o< and shedu'e it at his?her inema. Classes Events Cinema Seat Room Session Movie Timetable Booking seatSelected * seatDeselected * seatPayed + + + selectionBooked + + + bookCancelled + + + bookTimeOut + + + roomCreated + + + roomDeleted + + + cinemaEntered + + + cinemaEited + + + sessionSc!eduled + + + + + sessionTimeOut + + sessionCancelled + + + ticketPrinted + movieEntered + + $able *: .*ent tab'e. ehavior: (rob'em domain dynamis is main'y assoiated +ith session, bookin4 and seat 'asses. Booking: In ommittin4 a re7uest $or a bookin4 o$ a se'eted set o$ seats, a bookin4 objet is reated that ho'd the re'e*ant in$ormation. "t is destroyed +hen it is ane''ed, ,aid $or or timed out. !igure 2: 0eha*iora' ,attern, state hart, $or the 'ass 0ookin4. 2 Session: & session is reated by the inema man4er +hen he shedu'es it. "t then beomes a*ai'ab'e $or bookin4 and so on. >hen the session has be4un it is no 'on4er a*ai'ab'e $or any bookin4 or buyin4 and is thus destroyed. ("t is stored on dis $or aommodatin4 ,ossib'e om,'aints). !igure +: 0eha*iora' ,attern $or the 'ass Session. Seat: Seats are reated in onnetion to the reation o$ session objets. >hen a session is shedu'ed the seats are ati*e in the sense that they an be booked and ane''ed unti' 'ose to session be4innin4. !igure ,: 0eha*iora' ,attern $or the 'ass Seat. The Application Domain: !sa"e &vervie-: T+o ators ha*e been identi$ied, .nduser and Cinema 9ana4er and si< use ases assoiated +ith these ators. Fi4ure - sho+s both ators and use ases. 1F &tors 3se Cases .nduser Cinema 9ana4er Searh J 0ookin4 J (ayment J Tiket ,rint J Sesseion editin4 J Cinema editin4 J Fi4ure -: &tors and use ases !igure .: 3se ase dia4ram 11 Actors: Fi4ure / e<,'ains the detai's o$ t+o ators o$ the system. .nduser Cinema 9ana4er /ur#ose: & ,erson +ho uses urrent /ur#ose: & ,erson +ho an edit session and system to searh mo*ie, inema or inema in$ormation. make bookin4 o$ seat. C%aracteri0ation: The ,erson ,er$or= C%aracteri0ation: The ,erson ,er$orim this min4 this +ork does not need some +ork need some administriti*e e<,eriene. s,eia' e<,eriene. 12am#les: &ny ,erson +ho +ant to 12am#les: & ,erson +ho administrate the >ath mo*ie or +ant to 4et in$ormat= inema. "t ou'd be the inema o+ner. ion about inema. & inema 'erk a'so uses this system. Fi4ure /: )e$inition o$ the ators. !se Cases: Si< use ases o$ urrent system are desribed in detai' as $o''o+. Search >hen a *isitor o$ the +eb=site enters the main ,a4e the three 'istbo<es named Continent, Country and re4ion are ,re$i''ed aordin4 to the 'oation o$ the *isitor. &'so t+o sets o$ 'ist bo<es s,ei$yin4 date and time are ,re$i''ed to de$ine a time ,eriod orres,ondin4 to the rest o$ the ,resent day, +hih is most 'ike'y the re'e*ant inter*a' $or the user. &ny searh an not ,roeed be$ore the user has ae,ted these searh riteria. This is to 'imit the ontent o$ the 'istbo<es that $o''o+K ity, ity area, inema, mo*ie=tit'e. The user an ,ress the searh button a$ter enterin4 any ombination o$ riteria and an S58 7uery +i'' be 4enerated aordin4'y so as $or the system to return a resu't 'ist. &'ternati*e'y, a messa4e statin4 the searh resu't be the em,ty 'ist, or an error messa4e is 4enerated and dis,'ayed so the user is assured that the system GunderstoodH the riteria entered but deemed it meanin4'ess. oo#in" The ,otentia' ustomer 'iks a session $rom the 'ist that resu'ts $rom the searh. & sreen re,resentation o$ a room +ith seats a,,ears. Seats a'ready booked and ,aid $or +i'' be red, booked but not ,aid seats are ye''o+, +hereas *aant are 4reen. The ustomer an no+ se'et and dese'et 4reen seats and ,ress the book button to ommit a bookin4. The ustomer an a'so a,,ear ha'$ an hour be$ore the be4innin4 o$ a session and ho,e that some o$ the ye''o+ seats ha*e not been ,aid $or. >hen ommittin4 a bookin4, a messa4e about ,ossib'e reshedu'in4 are announed at the site and that money an be re$unded usin4 ,ro,er identi$iation. 1! Payment >hen a bookin4 has been ommitted, the user is ,resented +ith a hoie o$ ,ayin4 immediate'y or 'ater. "$ immediate'y is hosen the user is ,resented +ith a standard ,roedure $rom (ay(a' or other third=,arty (ayment=ser*ie. Tic#etPrint >hen (ayment $or a set o$ seats has been ,er$ormed either outside or at the inema, the indi*idua' tikets an be ,rinted. This is done by the user identi$yin4 him=?herse'$ +ith either a stri,e=ode ,rinted at home or e'se+here C +hih an be inter,reted by a mahine at inema, or identi$iation throu4h the ard used $or ,ayment. "$ ,ayment is ,er$ormed at the inema, identi$iation is not neessary. SessionEditin" Cinema mana4ers shedu'e mo*ie sessions throu4h an inter$ae. Sessions an be entered into and de'eted $rom the system. Sessions an a'so be edited. &'' this is done throu4h the inema mana4er inter$ae. "$, $or some reason a mo*ie=session must be ane''ed or reshedu'ed, this is strai4ht $or+ard +hi'e there are no bookin4s $or the session C it beomes a more om,'e< task i$ bookin4s ha*e a'ready been made $or the session. Then announements must be made on the site. 0eause users are anonymous, they annot be noti$ied diret'y. @o+e*er, users o$ the system are made a+are o$ this risk +hen makin4 a bookin4. CinemaEditin" Cinema mana4ers an be a''o+ed to re4ister their inema +ith the system, at +hih ,oint the rooms shou'd be bui't and beome a*ai'ab'e to the system. The use ase is best desribed as a Gho+ toH use the inema mana4erAs room desi4ner. De+ rooms an be bui't, ne+ seats added and so on. These tasks are ,er$ormed throu4h the inema mana4er inter$ae. 1# !igure 3: The state=hart dia4ram de$ines di$$erent +ays the system an han4e state. The bookin4 use=ase is the entra' use=ase o$ our system. 1% Functions: Tab'e ! sho+s 'ist o$ $untion, assoiated +ith the system. Tab'e a'so sho+s ty,e o$ eah $untion and om,'e<ity 'e*e'. Funtion 3,date ;ead Si4na' Com,ute Com,'e<ity Searh 6etContinent8ist L L 6etCountry8ist L L 6et;e4ion8ist L L 6etSession8ist L LL 6etCinema8ist L LL 6et9o*ieTit'e8ist L LL SetTime"nter*a' L L 0ookin4 )is,'aySessionSeats L LLL Se'etSeat L LL )ese'etSeat L LL 0ookSe'etedSeats L LL (ayment Ca'u'ate(rie L L Create;eei,t L L (rint;eei,t L L CreateTikets L L (rintTikets L LL Cinema mana4er 6etSessions L L @as&ny0ookin4s L LL .ditSession L L StoreSession"n$o L L 6etCinema L L 6et;oom('an L L 6etSeat8ist L L Set(ayTimeIut L L Set0uyTimeIut L L .ditCinema L L .ditSeat8ist L L $able 2: Funtion 'ist. (robab'y the most om,'e< o$ a'' the $untions in this system is the )is,'aySessionSeats $untion. "t reads the Seat8ist ontained in the Session objet and dis,'ays it on the 'ient sreen +ith seat in$ormation enoded by o'or. 4ser 5nterface: 1- System has in tota' ten user inter$ae $orms. These $orms are di*ided in to three ,arts. 1= .nd user != Cinema 'erk #= Cinema mana4er .n4'ish is the 'an4ua4e $or a'' the user inter$ae $orms. !igure 6: Da*i4ation dia4ram $or user inter$ae $orms. 1: >e deided to make di$$erent user inter$ae $orms $or inema 'erk. Cinema 'erk is a'so enduser o$ the system, as 'erk is standin4 at 'oa' inema and he does not need a'' the $orms +ith searhin4 and other riterias. @e an diret'y *ie+ a'' the seats $or ,artiu'ar session and ab'e to book any o$ the a*aia'b'e seat. Cinema mana4er a'so has se,arete user inter$ae $orms. For inema mana4ers a s,eia' $orm +ith administrati*e 'o4in has been added. Fi4ure 1F: .nduser $orm1. 1/ Fi4ure 11: .nduser $orm!. Fi4ure 1!: .nduser $orm#. 11 Fi4ure 1#: .nduser $orm%. Fi4ure 1%: .nduser $orm -. 12 Fi4ure 1-: .nduser $orm :. Fi4ure 1:: Cinema 'erk $orm1. !F Fi4ure 1/: Cinema 'erk $orm!. Fi4ure 11: Cinema mana4er $orm1. !1 Fi4ure 12: Cinema mana4er $orm!. Desi"n Document Purpose: The tar4et system shou'd be ab'e to searh $or mo*ie or inema. "t shou'd a'so be ab'e to book or buy a tiket $or a mo*ie. 0y usin4 the tar4et system ustomer shou'd be ab'e to ane' the bookin4. The urrent system shou'd be inte4rated +ith another system that takes the res,onsibi'ity o$ seure ,ayment system. Correction to the analysis: Some orretions +ere made to ana'ysis doument. De+ attributes added to 'asses in order to a,ture the in$ormation o$ e*ents. $uality %oals: Fi4ure 12 sho+s ,riority o$ desi4n riteria. S,eia' em,hasis +as ,ut on the usabi'ity, seurity and re'iabi'ity. Customers o$ the urrent system are 4oin4 to use their redit ards that are +hy seurity and re'iabi'ity are o$ 4reater onern. >e made seure onnetion +ith another system +hih takes the res,onsibi'ity o$ seure ,ayment system. Corretion is a'so im,ortant beause it tar4et system is not interatin4 +ith other systems orret'y then there may be hanes o$ +ron4 ,ayments. !! Criterion 7ery 5m#ortant 5m#ortant 8ess 5m#ortant 5rrelevant 1asily fulfilled 4sable 9 Secure 9 1fficient 9 Correct 9 (eliable 9 Maintainable 9 9 $estable 9 !le2ible 9 Com#re%ensible 9 (eusable 9 /ortable 9 5ntero#erable 9 !igure 20: /riority of design criteria Technical Plat&orm: E'uipment: The system is $or a'' the +eb bro+sers runnin4 on re4u'ar (CAs. System So&tware: )esi4n o$ our system based on im,'ementin4 the system in CM (C Shar,) 'an4ua4e. Desi"n (an"ua"e: The desi4n doument is based on the 398 notation. Architecture: Component Architecture: The Current a,,'iation is basia''y a +eb a,,'iation and user an 4et a'' the re'a*ent in$ormation by usin4 any +eb bor+oser $rom any +here. Kee,in4 this senario +e se'eted the 'ient=ser*er ariteture $or urrent system. "t onsists o$ t+o 'ayers, a 'ient and a ser*er 'ayer. Ser*e interats +ith se*era' 'ients at the same time. Fi4ure !1 sho+s the systemsAs arhiteture. !# Fi4ure !1: )ia4ram sho+in4 the systemAs om,onent arhiteture.N1O Process Architecture: The system is e<euted on a entra' ser*er and a'' 'ients ommuniate +ith it. & 'ient hand'es user inter$ae +hi'e ser*er hand'es $untion and mode' om,onent. Centra' ser*er ,ro*ides ommon data to a'' 'ients. This entra' ser*er has the abi'ity to interat +ith se*era' 'ients at the same time, so runnin4 se*era' ,roesses onurrent'y. Ine reason $or kee,in4 a'' data on entra' ser*er is to make data onsistent amon4 a'' 'ients. Kee,in4 data onsisten amon4 a'' 'ients is one o$ the key issues in urrent system. "$ data is onsisten then there are hanes o$ dub'iate bookin4 $or the same seat +hih is o$ourse idiation o$ system $ai'ure. Fi4ure !! sho+s the ty,ia' struture o$ 'ient= ser*er arhiteture +ith entra' ser*er and assoiated 'ients. !% Fi4ure !!: )ia4ram sho+in4 the SystemAs ,roess arhiteture.N1O )odel Component: The mode' om,onent im,'ements mode' and ontains a'' the 'asses o$ the urrent system. !- Structure$ Fe+ han4es +ere made to 'ass dia4ram in re'ation to ana'ysis doument. De+ attributes added to 'asses. Fi4ure !# sho+s ne+ 'ass dia4ram. Do+ +e desribe 'asses +ith more detai'. Classes Cinema /ur#ose: ;e4ister the basi in$ormation about inemas "ttributes: name, address, t'$ no, muni,a'ity. &#erations: 6etCinemaDame, .ditCinema, 6et;oom8ist. Room /ur#ose: ;e4ister in$ormation o$ room +ithin s,ei$i inema. "ttributes: roomDame, roomShedu'ed)ate, room.ntered)ate, room.<ited)ate &#erations: 6etSeat8ist,6et;oomDame Seat /ur#ose: ;e4ister basi in$ormation o$ seat +ithin s,ei$i room. "ttributes: seatDumber, seatState, seat0ooked)ate, seat(aid)ate &#erations: CreateSeat, 6etSeatDumber, 6etSeatState, Se'etSeat, )ese'etSeat TimeTable /ur#ose: ;e4ister a'' the in$ormation about sessions, mo*ies and inemas. "ttributes: timetab'eShedu'ed)ate, timetab'e.ntered)ate, timetab'e.<ited)ate &#erations: 6etSession8ist, 6etCinema8ist, 6et9o*ie8ist Session /ur#ose: ;e4ister in$ormation o$ mo*ie and its assoiated room and seat "ttribute: sessionStarted)ate, session.ntered)ate, session"d, sessionStartedTime &#erations: )is,'aySessionSeats, 6etSeat8ist, 6et;oom8ist Movie /ur#ose: ;e4ister basi in$ormation about mo*ie "ttributes: tit'e, mo*ieCate4ory , mo*ieShedu'ed)ate &#erations: 6et9o*ieTit'e8ist, Booking /ur#ose: ;e4ister in$ormation o$ bookin4 $or mo*ie at s,ei$i time, s,ei$i seat in room and at s,ei$i inema. "t a'so kee,s the in$ormation about ,ayment. "ttributes: bookin4"d, bookin4State, bookin4(aymentState, bookin4(ayment)ate &#erations: 0ookSe'etedSeats, (aySe'etedSeats !: Fi4ure !#: C'ass dia4ram $or mode' om,onent.N1O Function Component: Three ne+ 'asses +ere reated and ,'aed in the $untion om,onent. The ,ur,ose o$ these 'asses is to arry out some o$ the $untions. The searh 'ass takes are o$ returnin4 4eo4ra,hia' in$ormation, to narro+ do+n the amount o$ data to searh. (rintTiket is in the $untion om,onent beause it does not be'on4 any+here e'se. 8ast, the ,ayment inter$ae is e<,osed in the $untion om,onent.
Fi4ure !%: C'ass in the $untion om,onent. !/ Conclusion: >e be'ie*e to ha*e reated an o*er*ie+ o$ a inema bookin4 system that may be de*e'o,ed o*er time. >e ,ro*e that understandin4 on'y the mode'in4 one,ts and not the under'yin4 tehno'o4ies makes a resu't that may not be ,ro,er. >e ha*e dra+n a $rame+ork that may ser*e as a tem,'ate $or ,ro4rammers to start out $rom. >hether a om,'ete'y di$$erent a,,roah shou'd ha*e been used +e are unab'e to jud4e. >e e<,eted to ha*e obtained suh kno+'ed4e either throu4h this ourse or the basi ,ro4rammin4 ourses o$ "T3. *e&erences: N1O 8ars 9athiassen et.a' !FFF. Ibjet oriented ana'ysis P desi4n. 9arko, &a'bor4. )k.
Python Machine Learning: Using Scikit Learn, TensorFlow, PyTorch, and Keras, an Introductory Journey into Machine Learning, Deep Learning, Data Analysis, Algorithms, and Data Science