Good Day!!i have final project on CIB 3103 - Object Oriented Analysis and Designi have chosse cinema booking systemplease see the attached files (Project template and Sample project)

CIB 3103 - Final Project Cinema Price Comparison App 30.01.2018 ─ Abdullah Jallaf H00330767 Abdullah Obaid H00329285 Ahmed Osama H00277820 Faisal Abdullah H00293910 Teacher Name: Thaeer Kobaey 1 1.⠀Analysis of the system requirements for a business problem: 2 1.1. Introduction of the Problem Definition 2 1.1.1. Description of the system background 2 1.1.2. Description of the problem statement 2 1.1.3. Description of proposed solution 2 1.2. Descrip tion of System Development Life Cycles used in project 3 1.3. Description of Fact -Finding Techniques used in requirement gatheri ng process 3 1.4. List of User Requirements 4 1.4.1. List of functional requirements 4 1.4.2. List of non -functional requirements 4 1.4.3. List of Usability requirements 4 2. Functional and Behavioral Model of the business system: 5 2.1. Create use case diagram of the system 6 2.2. Write use case description for use cases 7 2.3. Create activity diagram of the system 10 2.3. Create activity diagram of the system 12 3. Design of the business system: 12 3.1. Design user interface screens for all components of the system 13 3.2. Design relational database model for all components of the project 15 4. Structural Model of the business system: 17 4.1. Crea te Class diagram of the system for all components of the system 18 4.2. Create Object diagram of the system covering all component s of the system 19 5. Reference Page 20 6. Appendix Page(s). 20 6.1. Appendix 1: Fact -finding too ls 20 6.2. Other relevant appendices (if applicable). 21 2 1.⠀Analysis of the system requirements for a business problem: This section will provide an introduction to the problem definition, as in ‘what is the problem’. It will also include f ive types of descriptions: System background, problem statement, proposed solution, SDLC and fact -finding techniques. These things will aggregate to make up the analysis of the system requirements. 1.1. Introduction of the Problem Definition 1.1.1. Descrip tion of the system background The Cinema Price Comparison (CPC) is an app that displays the timings of movies in the cinemas of the United Arab Emirates (UAE). It also shows whether the movie is available in 3D, 4D or IMAX. Most importantly, it displays th e prices of each ticket in every cinema. It will be a web app, supported on iOS and Android. 1.1.2. Description of the problem statement The problem is that each cinema is independent in terms of their own movie screening, which makes it difficult for one person to compare prices and timings between each cinema. So, it is our job to make things easier by providing support to the users in terms of integrating all the cinemas databases together. 1.1.3. Description of proposed solution It will be a web app and It will be a native mobile app, supported on the Android OS and iOS. It will be distributed on Google’s Play Store and Apple’s App Store. It will provide an interface where the user will be able to browse through a list of Cinemas in the UAE, browse throu gh the movies that are available, check the timings and seat availability of each movie and compare the prices between different cinemas. 3 1.2. Description of System Development Life Cycles used in project The selected System Development Life Cycle (SDLC) for this project is the waterfall method because it is the method that we were taught with, and are familiar with. It consists of five phases: Planning, analysis, design, implementation and maintenance. Onc e the team moves to the next phase, it cannot back to the previous one. In planning, the project team must create a plan for the project, and specify the requirements of it (in high -level). In analysis, the deliverables of the plan phase are analyzed and t ranslated from high -level to low -level. In design, the team must create a low -level design of the project, exact specifications needed for the implementation. In implementation, which is the most straightforward one, the project team implement whatever was designed during the design phase. Finally, in maintenance, the project team (or other teams) ensure that the system function for years to come. 1.3. Description of Fact -Finding Techniques used in requirement gathering process In order to build and design a system that will deliver its full potential, we chose to adapt two fact finding techniques, which are Observation and Questionnaires. By using the observation technique, we will be able to observe other applications and websites that perform similar fun ctions. By using the questionnaire technique, we will be able to collect a large amount of data from users that will allow us to further enhance our system and meet most of the user requirements. 4 Using the observation technique, we chose to observe website s such as VOX Cinemas and mobile applications such as Reel Cinemas App to observe their methods of presenting the movies available in their theaters, how they present the movie timings in different branches and how the process of reserving tickets work on different platforms. In regards to the questionnaire technique, we will utilize surveymonkey.com to create our survey, and the method to distribute the survey will be through social media websites and applications such as Whatsapp and Facebook. Link to the survey can be found in the appendix. 1.4. List of User Requirements 1.4.1. List of functional requirements The system must allow the user to do these things: 1. Booking tickets. 2. Seat reservation. 3. See the timing of movies. 4. Compare prices and timings between each movie screening in different cinemas. 5. Compute the revenue earned from the app monetization features such as advertisements, purchases and ticket commissions. 1.4.2. List of non -functional requirements The system mus t have these characteristics: 1. Store data using the CIA model. 2. Handle a load of 10,000 concurrent users. 3. Load webpages in 3 seconds or less. 4. Support compatibility with Oracle DBMS. 1.4.3. List of Usability requirements The system will meet the following re quirements: 1. Understandability ● The interface elements will be easy to understand through the addition of a simple UI. 2. Learnability ● The system will be easy to learn. 5 ● The system will guide the user through their first use by using a non - intrusive on screen guide. 3. Operability ● The interface actions and elements will be consistent. ● The system will be customizable based on the user’s accessibility needs. 4. Attractiveness ● The screen layout will consist of a simple UI, stylized after the current material designs available on iOS and Android Devices. 2. Functional and Behavioral Model of the business system: In this section, the business system will be described in two types of models: Functional and Behavioral. The diagrams included in this section are: 1. 1 Use Case Diagram and its subsystem. 2. 3 Use Case Descriptions. 3. 2 Activity Diagrams. 4. 2 Sequence diagrams. 6 2.1. Create use case diagram of the system 7 2.2. Write use case description for use cases 2.2.1. Use Case Description - Register Account Use case name: Register Account Primary actor: Customer Stakeholders and interests: Customer - wants to create an account. Brief description: This use case desc ribes how a customer registers for an account. Trigger: A customer wants to create an account. Type: External. Relationships: Association: Customer. Includes: None. Extend: Recover Account. Generalization: None. Normal flow of events: 1- The customer opens the app. 2- The customer taps on the ‘Register Account’ button. 3- The customer fills in details such as name, DoB, email, username and password. 4- The customer chooses whether to subscribe to mailing list or not. a. If customer subscribes, then add to mailing list. 5- The customer taps on the ‘Confirm Registration’ button. 6- The app checks the customer’s input. 7- The account is successfully created. Subflows: N/A Alternate/exceptional flows: 5a. Display ‘Username is already taken’ error message. 5b. Make the app focus on the username field. 5c. Display ‘Password is too short’ error message. 5d. Make the app focus on the password field. 8 2.2.2. Use Case Description - Buy Ticket Use case name: Buy Ticket Primary actor: Customer Stakeholders and interests: Customer - wants to buy a ticket. Cinema - wants to sell tickets. Bank - wants to earn revenue from the transaction. Brief description: This use case describes how a customer buys a ticket. Trigger: A customer wants to buy a ticket. Type: External. Relationships: Association: Customer, Cinema, and Bank. Includes: Reserve Seat and Credit/Debit card. Extend: None. Generalization: None. Normal flow of events: 1- The customer opens the app. 2- The customer taps on the ‘View Movies’ button. 3- The customer picks a movie, time, cinema and seat. 4- The customer enters his credit/debit card information. a. If the customer has his card info saved, then ignore this step. 5- The app reserves the chosen seat. 6- The credit/debit card is charged in AED. 7- A confirmation message is displayed to the customer. Subflows: N/A Alternate/exceptional flows: 5a. Displa y ‘The chosen seat has already been reserved’ error message. 6a. Display ‘Not enough money in your card’ error message. 9 2.2.3. Use Case Description - View Timing Use case name: View Timing Primary actor: Customer Stakeholders and interests: Customer - wants to view movie timings. Brief description: This use case describes how a customer views movie timings. Trigger: A customer wants to view movie timings. Type: External. Relationships: Association: Customer. Includes: None. Extend: None. Generalization: None. Normal flow of events: 1- The customer opens the app. 2- The customer taps on the ‘View Movies’ button. 3- The customer picks a movie. 4- The app retrieves movie timings from cinemas databases (every 30 seconds). 5- The app displays the movie timings to the customer. Subflows: N/A Alternate/exceptional flows: 4a. Display ‘One of the cinema databases is offline, their timings are removed from the list’ error message. 10 2.3. Create activity diagram of the system 2.3.1. Activity Diagram - Buy Ticket 11 2.3.2. Activity Diagram - Register Account 12 2.3. Create activity diagram of the system 2.4.1. Sequence Diagram - Register Account 2.4.2. Sequence Diagram - View Timing 3. Design of the business system: The third section is the “Design of the business system”. The detailed requirements for the section 3 are listed in the attached template. The section 3 will contain the following items: 13 3.1. Design user interface screens for all components of the system 14 Screen Control Use case ID UI screen No Reason to use specific screen control Icon 1 1 To enter the Application Button 2 2 To View Timing and Book Image 3 3 To see the movie poster/Image Droplist 4 4 Date/Time and Theater Type Button 5 5 Checkout Pay for reserved seats 15 3.2. Design relational database model for all components of the project The explanation for the generated logical model is as follows: ● A customer buys 1 or more tickets. A ticket belongs to a customer. ● A cashier may sell 0 or many tickets. Tickets are sold by a cashier. ● A movie has many tickets. A ticket belongs to a movie. ● A ticket reserves a seat. A seat may be reserved by a ticket. ● A Cinema has many theaters. A theater belongs to 0 or more cinemas. ● A theater has cinema seats. A cinema seat belongs to a theater. ● A movie type has many movies. A movie belongs to 1 movie type. ● A transaction has one or more ticket. A ticket belongs to 1 transaction. 16 17 4. Structural Model of the business system: This section will show the structural models of the business system in two formats: Class diagram and Object diagram. Class diagram includes the objects of the system, its attributes and behaviour. While the object diagram provides an example of class diagram i n use. 18 4.1. Create Class diagram of the system for all components of the system 19 4.2. Create Object diagram of the system covering all components of the system 20 5. Reference Page Fergusson, K. (2018, March 15). Create UML sequence diagrams in draw.io . Retrieved from https://about.draw.io/create -uml -sequence -diagrams -in-draw -io/ 6. Appendix Page(s). 6.1. Appendix 1: Fact -finding tools The following is the link to our survey:

https://ww w.surveym onkey.com /r/PRNPVXJ 21 6.2. Other relevant appendices (if applicable). The following are the results of the survey with a total of 44 responses: 22 23 24 25 26 27