Research and Development of an Online Movie Ticket Booking System and Food Service COMP-1181 Page | 1 Table of Contents Chapter 1 (Introduction) ............................................................................................................................ 1 Introduction……………………………………………………………………………………………….2 Background to project ............................................................................................................................... 2 Why the website is needed to develop ...................................................................................................... 3 Scope of the project...................................................................................................................4 Aims and Objectives..................................................................................................................5 Situation of E-commerce Business in Myanmar........................................................................6 Industrial Analysis…………………………………………………………………………….4 Feasibility Study.........................................................................................................................6 Technical Feasibility..........................................................................................................7 Operational Feasibility.......................................................................................................8 Economic Feasibility..........................................................................................................9 Summary……………………......................................................................................................10 Chapter 2 (Literature Review)................................................................................................................. 11 Introduction of literature review ............................................................................................................. 12 Review on Development Methodologies.................................................................................17 Structured Systems Analysis and Design Methodology (SSADM)..........................................18 Dynamic Systems Development Method(DSDM)....................................................................19 Justification for the use of DSDM............................................................................................20 Review on Techniques................................................................................................................21 UML (Unify Modelling Language) ...........................................................................................22 Use Case and Class Diagram.................................................................................................23 Usefulness of Chosen Diagram…………………………………………………………………….34 Review on Technology and Development Tools.........................................................................24 Justification for the use of Programming Language................................................................25 Review on Databases…………………………………………………………………………….23 Justification for the use of Database.......................................................................................26 Review on Web Severs…………………………………………………………………………………23 Justification for the use of Web Server....................................................................................27 Summary…………………………………………………………………………………………………34 COMP-1181 Page | 2 Chapter 3 (Critical Analysis of Existing Systems) .......................................................................28 Introduction.............................................................................................................................29 Guidelines for user interface design to be used..........................................................................15 Selected Rules from Shneiderman’s Eight Golden Rules…………………………………………….34 Selected Rules from Nielsen’s Usability Heuristics………………………………………………………34 User Interface Design Evaluation on Existing Websites…………………………………………………23 Evaluating Existing Website against Usability and UX Criteria……………………………………….34 Summary…………………………………………………………………………………………………23 Chapter 4 (Analysis)………………………………………………………………………………………65 Introduction...........................................................................................................................................35 Target Users Analysis............................................................................................................................34 Primary Users………………………………………………………………….………………….67 Secondary Users………………………………………………………………………………….45 Set up questions………………………………………………………………………………….45 E-commerce Business Model of the website………………………………………………………….34 Identifying High Level Requirement.....................................................................................................34 System Functional Requirement............................................................................................................38 System Non- Functional Requirement...................................................................................................38 Requirements Prioritization (MoSCow Rules) ....................................................................................45 Reason in Setting Priorities……………………………………………………………………….56 Use Case Diagram.................................................................................................................................35 Estimated Timebox and Incremental Delivery Plan for the Website....................................................33 Chapter 5 – Design Stage...........................................................................................................41 Detail Class Diagram…………………………………………………………………………………45 Chapter 6 – System Development 1...........................................................................................................23 Timebox 1..............................................................................................................................................34 Use Case Diagram for Timebox 1……………………………………………………………78 Detailed Class Diagram for Timebox 1………………………………………………………78 Database Design for Timebox 1…………………………………………………………………78 High-level Prototype for Timebox 1……………………………………………………………78 COMP-1181 Page | 3 Unit Testing for Timebox 1……………………………………………………….…………78 Iteration………………………………………………………………………….………………78 Chapter 7 –System Development 2..............................................................................................................34 Timebox 2……………………………………………………………………………………………34 Use Case Diagram for Timebox 1……………………………………………………………78 Detailed Class Diagram for Timebox 2………………………………………………………78 Database Design for Timebox 2…………………………………………………………………78 High-level Prototype for Timebox 2……………………………………………………………78 Unit Testing for Timebox 2……………………………………………………….…………78 Iteration………………………………………………………………………….………………78 Chapter 8 –System Development 3..............................................................................................................23 Timebox 3…………………………………………………………………………………………56 Use Case Diagram for Timebox 3……………………………………………………………78 Detailed Class Diagram for Timebox 3………………………………………………………78 Database Design for Timebox 3…………………………………………………………………78 High-level Prototype for Timebox 3……………………………………………………………78 Unit Testing for Timebox 3 ……………………………………………………….…………78 Iteration………………………………………………………………………….………………78 Timebox 4…………………………………………………………………………………………...56 Use Case Diagram for Timebox 4……………………………………………………………78 Detailed Class Diagram for Timebox 4………………………………………………………78 Database Design for Timebox 4…………………………………………………………………78 High-level Prototype for Timebox 4……………………………………………………………78 Unit Testing for Timebox 4 ………………………………………………………….…………78 Iteration………………………………………………………………………….………………78 Summary………………………………................................................................................................42 Chapter 6 –Conclusions.............................................................................................................................88 Evaluation of the website……………………………………………………………………………34 Evaluation against Aims and Objectives…………………………………………………………….45 What have been done…………………………………………………………………………….56 COMP-1181 Page | 4 Problem Encountered……………………………………………………………………………78 Lesson Learnt…………………………………………………………………………………….25 Evaluation against Justification Made…………………………………………………………………78 Language…………………………………………………………………………………………67 Selected Language………………………………………………………………………45 Problem Encountered……………………………………………………………………45 Lesson Learnt…………………………………………………………………………….45 Database………………………………………………………………………………………….34 Selected Database………………………………………………………………………76 Problem Encountered…………………………………………………………………….34 Lesson Learnt……………………………………………………………………………55 Methodology…………………………………………………………………………………….45 Selected Methodology…………………………………………………………………56 Problem Encountered…………………………………………………………………….78 Lesson Learnt…………………………………………………………………………….78 Evaluation against Project Plan………………………………………………………………………...76 What was complete on time………………………………………………………………………45 What was not complete on time and why………………………………………………………...56 Lesson Learnt……………………………………………………………………………………56 Future Amendments…………………………………………………………………………………56 Program………………………………………………………………………………………….45 Design……………………………………………………………………………………………23 Report……………………………………………………………………………………………56 References………………………………………………………………………………………….34 Appendix....................................................................................................................................................56 A. Project proposal..............................................................................................................................78 B. Requirement Catalogue....................................................................................................................45 C. Use Case Description.......................................................................................................................34 D. Detail Class Definition…………………………………………………………………………...56 E. Feedback from user’s survey form………………………………………………………………45 COMP-1181 Page | 5 Chapter 1- Introduction 1. Introduction 1.1 Background to the project Emerald Cineplex is one of the most popular cinema in Yangon. Emerald Cineplex was established in February 2003 by Emerald Organization Co. Ltd and the founder Daw May Myat Noe with the aim to provide the best cinematic experience for the customers. Emerald Cineplex show both latest international movies and local movies of different genres such as comedy, crime, drama, fantasy, horror, romance and so on. In 2003, in its first year in business, Emerald got the total revenues of $25.0 million. By 2004, the revenues increased $ 1.8 million as compared to the previous year. In the first business year of Emerald Cineplex, there is only one cinema, located at No. 72 Pyay Road, Kamayut Township. In 2004, Emerald Organization Co. Ltd started opened its movie theatre chains in Gamone Pwint supermarket. Due to the rapidly increasing revenues, the company expand five movie theater chains in Yangon shopping centers such as Junction Squares, Junction City, City Mall, Junction Maw Tin and Time City in 2015. There are also two movie theatre chains in Mandalay shopping malls such as Mingalar Mandalay and Diamond Plaza. Emerald cinema has a number of full time and part time staffs and the management team handles the company’s complex operational details. Emerald Cineplex is popular with its good facilities such as modernize Dolby 7.1 surround sound system, high quality screen resolution and good services provided by well-experienced staffs. Emerald Cineplex’s slogan is “Customer satisfactory is the first priority”. Because of the best customer service and cinematic experience, Emerald got customer trust and huge reputation in a short period. COMP-1181 Page | 6 1.2 Why the website is needed to develop Emerald Cinema is currently running its booking and payment process manually which requires more human effort to manage and record the ticket sales and booking details in a bookkeeping system. Keeping records in paper-based system take several minute for the staffs to account and customers have to wait for a long time when the staffs record the bookings and ticket sales. Because of the manual record keeping system for customer information, extra copies of the same customer data are recorded and the data duplication problem usually occurred. As Emerald currently process offline booking, customers can only book the ticket only by phone. Sometimes the staff didn’t receive the telephone calls from the customers. There is neither online website nor Facebook chat box for the customers to book and buy the tickets. Consequently, it leads to poor communication between customers and staffs and the company is likely to lose strong customer relationship. On the other side, there are many competitive rivalries which offers online movie ticket booking system and better food services for customers. An increase number of competitive rivalries in online movie ticket booking system can not only harm the targeted revenue of the company but also take away the potential customers. Besides, the head office employees face with difficulties in keep track of booking records and sales record into specific format. For example, the operation staff is difficult in monitoring and calculating a large number of necessary data regarding financial information and the daily booking and sales reports cannot be generated timely as Emerald Cineplex currently offers telephone booking system for the customers. The lack of computerize system in storing daily sales reports make the company business processes slower and costly. Additionally, single payment system is currently used for booking tickets and online payment system is not available yet. The customers recently demanded the online booking system that they can easily buy and book movie tickets because most of them have no time to come to the cinema. They requested that making booking with phone is also not so convenient that there are a lot of misunderstanding between staffs and them and they want to make bookings and payment directly by using internet. Furthermore, the booking service and sales currently can’t provide 24 hours. The above are the reasons why Emerald need to develop a web-based ecommerce website and it will provide ease and comfort not only to its regular customers but also to the new customers. COMP-1181 Page | 7 1.3 Scope of the project The project focuses on two major areas of Emerald Cineplex such as online movie ticket booking system and food order service. The main aim of the project is to develop an effective movie ticket booking website which provides useful features for the customers to shop around the website conveniently. By using this website, customer can easily book movie ticket and buy food items online anytime, anywhere. For recording the customer information, booking details, movie information, movie schedule details, food item information will be automatically saved into the system database. Both customer and admin can easily and quickly access the system by registering and logging in with username and password. Customers can choose a date, pick a time, select seats in seating chart and make booking online. They can also view movie show timing, watch the trailer and read reviews for the same. Furthermore, customers must be able to browse the food items and add the desired food items to the shopping cart to make checkout process. Many payment methods such as credit cards, debit cards and cash payment are going to be provided. As the project is aimed to provide smooth performance of the website, the system will allow the admin to record, retrieve, check and update the information of theatre, show time, movie, movie schedule, food items and sales reports easily and accurately in the system. 1.4 Objectives The main objective of this project is to analyze the idea of cinema booking system and consider the usability and accessibility issues before developing the system. Understanding of web database system and online ticket booking system will be done. For the analysis, a high-fidelity prototype is going to be designed and built to demonstrate some of the functionality. COMP-1181 Page | 8 1.5 Industrial Analysis 1.5.1 Opportunities for Emerald Cinema Nowadays, social media plays an important role in our daily life and it becomes a powerful tool for the companies. It is one of the opportunity for Emerald Cinema because it can help Emerald to keep in touch with the customers and know their preference. Heavy use of social media can help Emerald to engage with a lot of customers and gain profits. Research show that sharing a movie trailer across the social media can reach huge number of audience to gain traction. Television and social media expand the reach to the customers. Population growth is an opportunity for Emerald Company because it provides to get more customers and generate revenue. As blockbuster movies are highly popular today and most of the teenagers are interested in trending blockbuster movies, it can help Emerald to achieve more financial success. Modern technology also provides Emerald to reduce the human error and training costs. Emerald can get opportunity in online space which will provide online ticket sales and booking for the customers. Moreover, commercial advertisements provide an opportunity for Emerald Company to generate incomes. 1.5.2 Threat for Emerald Cinema Increase number of cinemas in Myanmar are the biggest threat for Emerald to get target revenue. As local competitors are offering online application for booking and purchasing tickets, Emerald can face difficult challenge with the competitors. The income level of Myanmar citizen can also be threat for Emerald Cinema. Due to the rising rate of electricity charges and commodity prices, some Myanmar citizens are reluctant to spend money on entertainment and shopping. The income level of Myanmar citizen can harm the Emerald’s financial success. Government tax in Myanmar also has a negative impact on Emerald business. High tax rate can discourage both local and foreign investors. As government impose the high taxes on some goods and services, Emerald has to collect not only ticket prices but also cost for government tax so thus it can cause the slow rate of financial success. COMP-1181 Page | 9 1.6 Feasibility Study The study involves an analysis of all relevant factor of the project to determine the practicability of a proposal or idea. The function of feasibility study is to help project developers to determine if the project will continue or not and help. It also helps project developers to make decisions of using software and hardware for the proposed system. In this study, the possibility of the project achievement and solutions of the problems are demonstrated before the actual project begin. 1.6.1 Technical Feasibility The proposed project “Online Movie Ticket Booking System” can run on any computers supporting windows and internet services. Window operation system win XP, win 7/8, MySQL and PHP will be used in the implementation of website. To create and manipulate system databases quickly and securely without an internet connection, XAMPP is going to be used in this proposed project. Both MySQL and PHP are open source software and freely available for the development and implementation of the proposed system. As PHP has a lot of features, it is easy to access the internet and handle the MySQL databases. Thus, using this software in the proposed project will help the developer to perform the required tasks. 1.6.2 Operational Feasibility As there is no special training required for the staff members, the proposed project is operationally feasible. However, an easy and quick instruction of this new system is essentially required for them. The related problems in developing new system are going to be discovered in evaluating similar existing systems. Nowadays, most of the users are familiar with IT environment and it is certain that they can easily use Emerald’s new system because this system is going to be designed in a simple way. It is not essential that the users must be the computer expert however, the system operator must have a little bit of technical knowledge in order to access the system database and other related functions. Therefore, it is certain that Emerald’s new booking system will meet the needs and expectations of end users. COMP-1181 Page | 10 1.6.3 Economic Feasibility In changing the paper-based system to computerized system, there will be some personnel costs, computer usage costs and equipment costs. Before developing a proposed system, a desktop is required to purchase for website developer and database administrator. To carry out all the tasks in this project, HP ProDesk 400 G4 Tower for $619.99 and Dell Optiplex 3020 for $258.99 are going to be purchased. Moreover, office computer network is going to be set up and the estimated cost for required equipment are as followed: Asus ROG Rapture GT-AC5300 Router: $319.99 Dell PowerEdge T30 Server : $391.99 NETGEAR GS1088-Port Gigabit Ethernet Unmanaged Switch: $31.99 AmazonBasics RJ45 Ethernet Patch Cable (Cat 6): $11 In order to prevent data loss, WD My Passport 4TB external drive will be purchased for backing up data and it will cost $97.99. For report writing and project planning, Microsoft Office 2016 Home and Business 1PC is going to be purchased for $120. In order to edit the source code easily and quickly, Sublime Text is required to purchase for the proposed system. As XAMPP Control Panel is freely available, there will be no additional cost for it. By implementing this project, Emerald can easily communicate with the customer online and customer requests can be processed immediately. The investment in purchasing the required hardware and software will be very much beneficial over a long period of time in the future. The proposed project is said to be economic feasible because the investment will be recovered from company income. (Martindale, 2019) (NetGear, 2014) (Athow, 2019) (Athow, 2019) COMP-1181 Page | 11 1.7 Situation of E-commerce Business in Myanmar Researches show that some users from Myanmar still don’t match well with what online ticket booking system provide. Before switching over from traditional method of booking system to online booking system, Emerald need to consider how new technologies challenge the outdated assumption and users’ online buying behaviors. Some users from Myanmar are still purchasing product with cash instead of using credit card. Because of the multi-step checkout process and complicated functions, most online users hesitate to buy products or services online. Moreover, online banking process is limited in Myanmar. However, international financial service companies such as Visa, MasterCard, etc. has expanded their business in Myanmar and so today customers can easily purchase the products or services with credit cards. Recently it is found that potential customers who want to make booking are more likely to search online. They like to find specific information on any product before making final decision on a booking. However, some customers in Myanmar are reluctant to make booking online because of the payment security issues. They do not trust to give their credit cards because they afraid that their personal datas would be stolen or misused by an individual unauthorized person or data thefts. The customers may lose interest in making purchase once they know that their personal datas are abused. Other difficulties such as insufficient product details, complicated functions and slow rate of cash flow can also decrease customers’ engagement. Therefore, the features of E-commerce website should be simple and secure for the customers to make online booking easily and comfortably. Summary In this first chapter, the project along with the background history of Emerald Cineplex is initially explained in detail and why the company need to change the manual bookkeeping system to computerized system are discussed and so thus the current business processes can be clearly, learnt and analyzed. Secondly, the possible opportunities and threats are also analyzed to understand the situation of marketplace and plan for the future business operations. As aims and objectives are clearly defined, the proposed project will be successfully delivered. In order to determine the proposed system is possibly implemented or not, the feasibility study is also carried out in this chapter. Finally, the situation of e-commerce business in Myanmar are discussed to prevent the possible risks and issues in the online marketing. COMP-1181 Page | 12 Chapter 2- Literature Review Introduction As the proposed project is planning to be developed within four months, the appropriate development methodology is needed to choose in order to focus more on the business need and deliver the services to the customers on time. Furthermore, tools and techniques will be reviewed and selected for the development of an online movie ticket booking system. Review on Development Methodologies Before developing project, the project team need to know the management process, techniques and rules. With project management methodology, the proposed project will be done in a short period of time and possible risks can be easily identified. Although there are many methodologies for project management, two methodologies are going to be considered for the purpose of choosing the suitable methodology. The two methodologies which are going to be reviewed for the websites are1. SSADM (Structured Systems Analysis and Design Method) 2. DSDM (Dynamic System Development Method) SSADM (Structured System Analysis and design Method) Structured System Analysis and design method (SSADM) is extensively used methodology based on the waterfall model. It is mainly used in commercial businesses, government projects, educational projects and IT development projects. For large project, SSADM is an appropriate approach to use because it breaks up a project into small modules. It also helps us to understand the project development tasks and procedures. There is a combination of three techniques that SSADM uses to determine the information system possibility and they are Logical Data Modelling, Data Flow, Entity Behavior Modelling. SSADM contains a series of seven steps such as feasibility analysis, current environment investigation, business system options, requirement analysis, technical system options, logical design and physical design. (Ed Downs, Peter Clare, Ian Coe, 1992) COMP-1181 Page | 13 Advantages of SSADM Through using SSADM, there will be less chance for misunderstanding at the first stage of the project. Also, the project staff does not need to have special skill to understand this methodology. Because of the use of familiar process, staffs can easily learn SSADM methodology and thus both money and time could be saved. With SSADM, all functionality and deliverables of the project will be done before deadline because SSADM allows to plan, manage and control a project well. (Cohen, 2017) (Daniel, 2011) Disadvantages of SSADM One of the disadvantages of SSADM is the lack of user involvement and it can lead to the certain issues that user will not not satisfied with the final product. As SSADM focus heavily on system analysis and its documentation, the project may take time and project deliverables will be late due to the over-analyzing of system. When SSADM methodology is used in project, the developer cannot go back to change the requirement and the development process have to start from the beginning. In using SSADM for large system, all the relevant data flows are needed to be involved in outline diagram and so the diagram can’t be clear. There are different kinds of description methods in SSADM and these can make the developer unable to perform the consistent check. (Cohen, 2017) DSDM (Dynamic System Development Method) Dynamic System Development Method (DSDM) is one of the software development methodology which is based on Rapid Application Development (RAD) methodology and it gives best practices for project quality, in-budget and on-time delivery of project. DSDM methodology also addresses the cause of the project failure such as missing deadlines, the lack of user involvement, etc. With DSDM methodology, the possible risks can be reduced and cost, quality and time will be fixed at the beginning. Furthermore, the use of prototypes provides the developer to explore the concept quickly and to communicate with the users easily. There are four techniques that DSDM uses such as Time boxing, MoSCoW prioritization, Prototyping and Facilitated Workshop. (D.J. Tudor, 2010) COMP-1181 Page | 14 Advantage of DSDM In DSDM, there is a facilitated workshop which makes users to involve and collaborate together to define the project requirements during the project development process. By using facilitated workshop technique, the decision making can be quick and accurate. With modeling and prototyping technique, users can easily understand the complete aspects of the system and it helps to ensure that the final product is more likely to meet the users’ needs. DSDM also has MoSCoW prioritization techniques which provides the developer to know which are the prioritized requirements and which key functions are needed to develop first. Furthermore, the use of time boxing technique in DSDM methodology provides the developer to manage the time taken for the project and it helps to deliver the project on time. Disadvantage of DSDM One of the disadvantages of DSDM is that it does not work for all project and it is only appropriate for small project with limited time. Also, there will be extra cost and time consuming for the project because DSDM allow users to change their requirement and users’ requirement may change every time during the development process. Furthermore, there will be difficulties to make an accurate and quick decision and long problem solving due to the self-empowering of the project team. Besides, some users don’t have the technical knowledge and it can take time for the developer to explain everything during the development process. COMP-1181 Page | 15 Comparison between DSDM and SSADM SSADM ï‚· Is based on the traditional structured DSDM ï‚· Is based on RAD programming techniques ï‚· Appropriate for small project ï‚· Appropriate for big project ï‚· Users are highly involved in the ï‚· Does not involve users ï‚· No Self-decision making ï‚· Self-decision making ï‚· Heavy process and documentation ï‚· Light process and documentation ï‚· Focus on completing modules at different ï‚· Focus on completing stories in short development of the project large milestones iteration ï‚· There is no iterative development ï‚· There is an iterative development ï‚· Provide detailed and elegant deliverables ï‚· Smaller deliverable produced much more to developer ï‚· No protyping frequently ï‚· Prototyping Justification of the use for DSDM According to the above comparison, DSDM is appropriate to use in this proposed system rather than SSADM because the project that is going to be developed is small and planned to be finished within 5 months. Also, DSDM is more realistic and helpful for the project team because it involves team work and continuous communication with the users and thus the users’ requirements can be easily identified. Unlike SSADM, the developer can go back and make changes to the system during the project development if users requirements are changed and as a result user will get a good booking system what they want. Review on Techniques There are many techniques that DSDM supports such as Time boxing, MoSCow prioritization, Prototyping and Facilitated Workshops. However, DSDM does not support any development technique which are essential to define the boundary of the system, the structure of system and the behavior of the system. For this proposed project, UML modelling technique which is the most popular development techniques for DSDM is going to be used. COMP-1181 Page | 16 UML (Unify Modelling Language) UML is a graphical type modelling language which is commonly used by the software developer and it is mainly applied in Object oriented programming development to use with other methodology to implement the system efficiently. UML is not a programming language or a sublanguage but it is a method to represent details of objects, states and process within a system. In UML, 14 types of diagrams are provided and they are categorized into two groups called structural and behavioral. Advantages of UML One of the advantages of UML is that it is flexible and helps the developers to easily understand the relationship in a program. With UML diagrams, collaboration can be easily made between the developers and system analysis and so they can make a right decision for the system and errors can be easily found before the implementation stage. Disadvantages of UML Although UML diagrams are easy to understand for the developers, it might be difficult for the business and users to understand and interpret the diagrams. Also, UML takes time for the developer to manage and maintain the diagrams. Moreover, it might be difficult for some developers to synchronized code with the UML diagrams. Use Case and Class Diagram Although there are 14 UML diagrams, use case diagram and class diagram are going to be used to investigate structure and behavioral model of Emerald movie ticket booking website. Use Case Diagram Use case diagrams helps the developers to know about key actors and their roles, key processes and relationship between them. In order to identify, clarify and organize the high level requirement of this proposed project, a use case diagram should be made. By using use case diagram, the developers can understand the way of interaction between the users and the system. COMP-1181 Page | 17 Class Diagram The main purpose of the class diagram is to evaluate the different objects in a system and the relationship among classes. Class diagram is the useful diagram in UML because it helps the developers to set up the database easily and understand the essential data attributes and functions. With the correct database, the developers do the coding process without difficulties. Usefulness of Chosen Diagrams Use Case diagram and class diagram are going to be applied as the development techniques because both of them are useful in identifying the system requirement, key actors and their processes, classes, attributes and functions. Without those diagrams, database cannot be easily created and there may be some difficulties in implementing process. Review on Technology and Development tools Choosing the right methodology and technique is necessary but it is not enough to develop a dynamic website. In order to develop a successful website, the right technology is essential to choose. In creating Emerald movie ticket booking website, the most popular programming languages such as ASP.Net and PHP are going to be reviewed and one programming language will be selected for this proposed system. ASP.NET ASP.Net is one of the server side framework which is used for developing dynamic websites and web applications. It is an open-source framework created by Microsoft. With ASP.net framework, the implementation stage can be done with a minimum of coding. The developers can choose many development tools such as Microsoft Visual Basic, Visual Studio.NET, Visual Web developer, etc. and many other technologies such as Java script, C#, etc. to implement a website because ASP.Net is compatible with those platforms. Moreover, object oriented programming is supported by ASP.NET framework. However, ASP.NET is not an easy framework for the beginners to learn. COMP-1181 Page | 18 Hypertext Preprocessor (PHP) PHP is another open source programming language for the developers used to develop web application and dynamic websites. It is a popular programming language and commonly used by a large number of web developers because of its several benefits. Popular database like MySQL database can be integrate well with PHP code. Moreover, PHP language work well on all operation system such as Mac OS, Linux and Windows. Unlike ASP.NET, PHP language is not difficult for the beginners and does not need a lot of time for studying. It offers many advanced features for the developers. Unlike any other programming language, PHP allows the developers to make changes, if there is any error in coding process. (Anon., n.d.) Comparison between ASP.NET and PHP PHP ï‚· It can be used for free ASP.NET ï‚· It is a Microsoft product which is not freely available ï‚· PHP will work well in any kind of ï‚· platform and server ï‚· It is an easy language for beginners to ASP.NET will work well only with Internet Information Server (IIS) ï‚· learn It is a difficult language for beginners to learn ï‚· PHP code run much quicker ï‚· ASP.Net code execution is slower ï‚· tools that can be worked with the program ï‚· tools are not available for free to use are mostly free with its program. ï‚· Allows to make changes and edit ï‚· Unable to make changes ï‚· Compatible to work on Windows, Mac ï‚· Can only use in Windows based OS and Linux COMP-1181 program Page | 19 Justification for the use of PHP As, the proposed project is need to be completed within specific time, PHP is chosen to use because it is much easier and faster than ASP.NET for the project team. No intensive studying or manual is needed for the developer to use it and the command functions are easy for them to understand. By using PHP language, the developer can reduce the time needed because PHP has a built-in module to connect the database easily. Also, the developer can use PHP language for free because it is an open source language. Compared with ASP.NET, the developer need no additional steps to make changes and so the final product can match the customer requirement. Furthermore, PHP is a cost effective choice for the developers because most of the platform and web hosting servers such as Linux and Apache support PHP and there is no need to pay for them. Review on Databases In order to use PHP language to develop a website, a database is also necessary to use. There are many databases such as MySQL, Microsoft SQL, Oracle and many more for the developers to pick up. A suitable database is going to be pick up to develop this proposed system. Before selecting the suitable database, MySQL and Microsoft SQL databases are going to reviewed and compared. Microsoft SQL Server Microsoft SQL server is one of the relational database server that is used to store and retrieve data for wide variety of business process, analytics process and transaction process. It is developed by Microsoft corporation. Microsoft SQL server is based on Structured Query Language (SQL), a standardized programming language which is used to manages and administer the server. Microsoft SQL server has numerous applications which can run either on the same computer or different computer across a network. Microsoft SQL server comes with several benefits for the developers. Software installation for the Microsoft SQL Server is easy and it is not complicated for the developers because it offers the automatic installation of updates. Also, there are many features to restore data and recover procedures. Like MySQL server, Microsoft SQL server also support security feature which only allow authorized person to access the database. (Anon., 2017) (Babar, 2018) COMP-1181 Page | 20 MySQL Among the various types of well-known databases, MySQL is one of the most popular database which is very rich in features. It provides the developer to manage and create numerous databases. It is an open source product and there is no need to be paid for it. It can run on almost any platforms such as Windows, Linux, etc. When compared to other databases, MySQL provide strong performance, reliability and ease of use. To ensure the data protection, MySQL uses an access privilege and encrypted password system allows only authorized user to enter the database. Moreover, the developer can use PHP with MySQL database. (Moore, 2018) Comparison between MySQL and MSSQL MySQL MSSQL ï‚· It is an open source and it is available for ï‚· It is not an open source and need free to purchase it to use ï‚· MySQL does not support XML ï‚· SQL Server supports XML ï‚· It offers excellent performance ï‚· It doesn’t offer excellent ï‚· It requires very less disk space ï‚· It is compatible to work on Linux and Unix ï‚· It requires more disk space ï‚· It is easily understandable and simple for ï‚· It does not work well with Linux performance and Unix the beginner to use ï‚· MySQL provides only table level security ï‚· It has bad recovery support ï‚· It is not simple for beginners to use ï‚· SQL Server provides column level security ï‚· COMP-1181 It has good recovery support Page | 21 Justification of the use of MySQL According to the above comparison, each database has its own advantages and disadvantages. As the proposed project needs to be done within the limited time, MySQL is chosen to use. It is easy and simple for the developers to build and interact with SQL statements. In developing a website, data protection is an important thing that shouldn’t be ignored. In MySQL server, it has a strong security feature so thus the developer doesn’t need to worry about security issues. Furthermore, MySQL is compatible with all major hosting providers. With MySQL, the developer can handle the large amount of data in terabytes. Review on Web Servers Choosing a suitable database for this proposed project is not enough to implement a successful website. In creating and manipulating databases, a web server is necessary to use. Before picking up the appropriate web server, two web servers such as XAMPP and WAMP are going to be compared and considered. Both servers allow the developers to create the local databases easily and the installation process is simple. Comparison between XAMPP and WAMP (Ganesan, 2018) XAMPP WAMPP ï‚· ï‚· It can run well in many operation systems such as Windows, Linux, Mac, etc. ï‚· It is a free and open source web server It can work only in Window operation system ï‚· It is an open source web server and does not need to pay for it ï‚· It provides support for MySQL, PHP and ï‚· It provides support for MySQL and PHP ï‚· Additional features cannot be added ï‚· Installation is easy ï‚· It takes less memory PERL ï‚· Additional features can be added ï‚· It is easy to configure and set up ï‚· It take more memory and time COMP-1181 Page | 22 Justification for the use of XAMPP Both web servers have their own advantages and they are the important tools for the developers. According to the above comparison, XAMMP is the most appropriate web server for the implementation process because it comes along with MySQL database and PHP and it can help the developers to add additional features. Moreover, the developer can implement the website conveniently as it is easy to setup and use and provides more memory and CPU. By using XAMPP server, the developer can easily test website performance before pushing to production. Summary In this section, the development methodologies, the tools and techniques, database and web servers are considered and compared with clear tables and explanation. From the comparison of methodologies, techniques, database and web servers, their advantages and disadvantages are clearly known and they help us to make the right decision to choose the appropriate methodology, technique, database and web server for several reasons. For the website development, DSDM methodology is chosen with UML diagrams of Use Case and Class diagram. For coding process, PHP programming language is chosen to use. To manage the data and to integrate with PHP code, MySQL database is going to be used. For creating a local web server, XAMPP packages is chosen to use. COMP-1181 Page | 23 Chapter 3- Critical Analysis of Existing systems Guideline for user interface to be used In order to have a valuable and realistic website, the website should be developed using suitable guidelines and standards. Good user interface design principles are essential for the developer to follow to aware of possible consequence of website development failure. An effective user interface design will help the developer to keep the customers engaged. Before developing a website, the interface design guidelines and standards should be learnt to understand the users’ needs and expectations. There are many guidelines and principles about visibility, consistency, security and so on. For this proposed system, Shneiderman’s Eight Golden rules and Nielsen’s Usability Heuristics are going to be used because Nielsen’s guidelines are more helpful in preventing usability issues and Shneiderman’s guidelines are more beneficial in discovering visibility issues. (Santos, 2018) (Pande, 2018) (Liyanage, 2016) COMP-1181 Page | 24 Selected Rules from Shneiderman’s Eight Golden Rules The following are the selected guidelines of Shneiderman based on the needs of online movie ticket booking system development. 1. Strives for consistency All the functionalities, web elements and interface should have consistency for all sequences of actions to provide a more familiar experience for the customers. A website with inconsistent interface design will not only make the users confused but also cause them to lose interest. (Lacey, n.d.) The website keeps the main menu bar and logo consistent when the user clicks from one page to another page. Figure- 3.1 (Anon., n.d.) Figure- 3.2 (Anon., n.d.) COMP-1181 Page | 25 2. Offer Informative Feedback For the users’ sequence of action, the appropriate feedback must be provided and if not the users cannot make the right decision what to do next. Inform the user that the customer booking is successfully proceeded. Figure- 3.3 (Babich, 2016) 3. Error Handling For the unavoidable errors (e.g. invalid email address, zip code, etc.), the simple and understandable error notification with the suggestion should be provided for the users to notice the error and to handle the issues easily and quickly as possible. The system displays the user name error message. Figure- 3.4 (Kumar, 2018) COMP-1181 Page | 26 4. Support Internal locus of control Most of the experienced users desire the sense that they are in control of the website. Therefore, the website’s interface design should allow the users to fully control the system as they expected. The system lets the users to continue shopping process or make checkout process. Figure- 3.5 (Anon., n.d.) COMP-1181 Page | 27 Selected Rules from Nielsen’s Usability Heuristics The following are the selected guidelines of Nielsen which will be used for the development of Emerald Cineplex online booking system. 1. Match between system and real world In order to develop a smoother user experience, the icons, language, phrases and concept used in user interface design should be familiar to the users and easily recognizable instead of using unfamiliar technical terms. The icon and language used seem more natural to the users. Figure- 3.6 (Anon., n.d.) 2. Recognition rather than recall The actions, options and elements in user interface design should be displayed along with visible descriptions which allow users to retrieve the purpose of the web elements quickly. The system supports a list of result in order to recall the users’ memory Figure- 3.7 (Lazarus, 2019) COMP-1181 Page | 28 3. Aesthetic and minimalist design In order to allow the users to access the main elements of the interface easily and to support the visual hierarchy, the irrelevant information should not be contained in the website’s interface design. The website use plenty of white space and doesn’t put irrelevant elements and data to reduce complexity Figure- 3.8 (Anon., n.d.) 4. Help and documentation For inexperienced users, a clear and understandable documentation should be offered to help them in using each functions and features of the system. The website provides user manual which is easy for the users to help themselves. Figure- 39 (Limited, 2003) COMP-1181 Page | 29 User Interface Design Evaluation on Existing Websites According to the selected guidelines from Shneiderman and Nielsen, the user interface design of two similar websites are going to be evaluated. By evaluating the similar websites, both good points and bad points will be discovered and then the bad points will be avoided and the good points will be inserted in the proposed website. Website 1- Cathay Cineplexes (Anon., n.d.) Figure- 3.1 (Anon., n.d.) COMP-1181 Page | 30 1. Strive for consistency (Shneiderman Guideline) Web elements such as logo, footer, navigation bar, drop-down menu, slider and functionality of Cathay Cineplexes website stay consistent and they keep in the same place to provide a consistent user experience. Consistent logo Consistent Navigation bar Consistent Drop-down menu Consistent Slider Figure- 3.2 (Anon., n.d.) 2. Offer informative feedback (Shneiderman’s Guideline) On checking the booking with an email, phone number and booking ID by the customer, the clear and relevant feedback is shown within a reasonable time so thus the customer can know the booking details are existing in the system or not. Informative feedback with every action Figure- 3.3 (Anon., n.d.) COMP-1181 Page | 31 3. Error Handling (Shneiderman’s Guideline) When customer make error in filling the email address, Cathay Cineplex website provide clear error notification with simple hints which is understandable for the users to know how to solve the issue. Provide error message with simple hint Figure- 3.4 (Anon., n.d.) 4. Support Internal locus of control (Shneiderman’s Guideline) The website give freedom to the users that he/she can choose to continue the booking process or exit from it. Provide functions like continue booking process and cancel order Figure- 3.5 (Anon., n.d.) COMP-1181 Page | 32 5. Match between system and real world (Nielsen’s Guideline) The icons, color and language used in this website are familiar to the users and easy to understand. Visibly labeled icons and terms Figure- 3.6 (Anon., n.d.) COMP-1181 Page | 33 6. Recognition rather than recall (Nielsen’s Guideline) Cathay Cineplex website provides a lists of options visible for the users to select movies, cinema and date and time with drop-down menu so that the user doesn’t need to type the movie name, cinema name and show times. A list of options to minimize users’ memory load Figure- 3.7 (Anon., n.d.) 7. Aesthetic and minimalist design (Nielsen’s Guideline) The design of Cathay Cineplex’s webpage focus on simple and clear interface. Only relevant elements and contents are displayed in Cathay Cineplex website. Simple and clear webpage design Figure- 3.8 (Anon., n.d.) COMP-1181 Page | 34 8. Help and documentation (Nielsen’s Guideline) The user manual is provided in this website before the purchasing process but the paragraph font size is small and a little bit messy for some users. User Manual is complex for the users Figure-3.9 (Anon., n.d.) Website 2- Golden Village Cinema Figure- 3.10 (Anon., n.d.) COMP-1181 Page | 35 1. Strive for consistency (Shneiderman Guideline) The icons, font style, font size and font color in header menu stay consistent when the user clicks into another page. Consistent Header Menu Figure- 3.11 (Anon., n.d.) Figure- 3.12 (Anon., n.d.) COMP-1181 Page | 36 2. Offer informative feedback (Shneiderman’s Guideline) The selected menu item in Golden Village becomes highlighted when the users click the item in the menu. Informative feedback with every action by users Figure- 3.13 (Anon., n.d.) 3. Error Handling (Shneiderman’s Guideline) The website displays simple error messages with clear instruction for the user to enter a valid email address. Show alert message for users Figure- 3.14 (Anon., n.d.) COMP-1181 Page | 37 4. Support Internal locus of control The website allows the user to choose to continue the payment process or end it. Provide options for the users to resume the payment process Figure- 3.15 (Anon., n.d.) 5. Match between system and real world (Nielsen’s Guideline) The website uses the icons that are similar to the real-world objects which help users to understand each function. The icons used in the header menu are familiar to the users Figure- 3.16 (Anon., n.d.) COMP-1181 Page | 38 6. Recognition rather than recall (Nielsen’s Guideline) The drop down menu list is visibly displayed in this website and the icons are labelled with text to minimize the users’ memory. Visible drop down menu and recognizable icons with description Figure- 3.17 (Anon., n.d.) 7. Aesthetic and minimalist design (Nielsen’s Guideline) The placement of social network links, logo and advertisement in this website will make users confused. The logo and social network links are not aesthetically placed Figure- 3.18 (Anon., n.d.) 8. Help and documentation (Nielsen’s Guideline) There is no effective user manual in this website. COMP-1181 Page | 39 Website 3- MUVI Cinemas Figure- 3.19 (Anon., n.d.) COMP-1181 Page | 40 1. Strive for consistency (Shneiderman Guideline) The website keeps the header menu, logo and icon consistent when the users open a new page on it. Consistent header menu and logo Figure- 3.20 (Anon., n.d.) Figure- 3.21 (Anon., n.d.) COMP-1181 Page | 41 2. Offer informative feedback (Shneiderman’s Guideline) The website shows the users that they are at in the payment process and so thus they can know what to do next. Provide feedback that is clear and relevant to the users Figure- 3.22 (Anon., n.d.) 3. Error Handling (Shneiderman’s Guideline) The website offers error message without a useful instruction so thus users cannot solve the problem as quickly as possible. A clear instruction for the error is not provided Figure- 3.23 (Anon., n.d.) COMP-1181 Page | 42 4. Support Internal locus of control (Shneiderman’s Guideline) When the users click the appropriate time to book the seat, the website allow them to click to continue the process or cancel the booking. Keep the users in control by providing options for booking process Figure- 3.24 (Anon., n.d.) 5. Match between system and real world (Nielsen’s Guideline) The website uses the users’ familiar language but only a few real-world metaphors are provided in it and it will be difficult for the users to understand the concept. A few familiar icons are not enough to match users’ prior experience Figure- 3.25 (Anon., n.d.) COMP-1181 Page | 43 6. Recognition rather than recall (Nielsen’s Guideline) The website provides a lists of available showtimes and locations in slide menu to help the users to reduce the use of their memory. Support a lists of recognizable locations and showtimes in slide menu Figure- 3.26 (Anon., n.d.) 7. Aesthetic and minimalist design (Nielsen’s Guideline) The interface design of the website simply designed with only relevant images and enough whitespace between contents without unnecessary advertisements and social network links. The use of whitespace enables the elements to stand out. Figure- 3.27 (Anon., n.d.) 8. Help and documentation (Nielsen’s Guideline) The website doesn’t provide easily discoverable help documentation for the users. COMP-1181 Page | 44 Evaluating Existing Website against Usability and UX Criteria No 1. 2. 3. 4. 5. 6. 7. 8. Usability and UX Criteria Strive for Consistency (Shneiderman’s Guideline) Offer Informative Feedback (Shneiderman’s Guideline) Error Handling (Shneiderman’s Guideline) Support Internal locus of control (Shneiderman’s Guideline) Match between system and real world (Shneiderman’s Guideline) Recognition rather than recall (Shneiderman’s Guideline) Aesthetic and minimalist design (Shneiderman’s Guideline) Help and documentation (Shneiderman’s Guideline) Total 5- Excellent 4- Very good 3- Good Website 1 Website 2 Website 3 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 12345 34 31 28 2- Average 1- Poor According to their rating, each website needs some improvement of usability and visibility. For example, there is only a few real-world metaphors in website 1 and website 3 and the interface design of website 2 with unnecessary advertisement distract the users from viewing the content. Although, the existing websites need future enhancement, their interface design meet the continuing needs of the users. Summary In this chapter, the requirement of good interface design is investigated by evaluating three existing websites with selected guidelines and standards. With the help of evaluation of checklist, the good points and bad points of similar system are clearly identified and improve them in the proposed website development. COMP-1181 Page | 45 Chapter 4- Analysis Introduction Before implementing the proposed website, the concepts of DSDM methodology is going to be used to make sure that what are the essential requirements for the system. Firstly, the target users must be identified to clearly focus their needs and prioritize the requirements. Then, the high level requirements of Emerald website will be listed and MoSCoW technique is going to be used to prioritize those requirements. For some high level requirements, use case diagrams are required to create to identify the key actors and low level functional requirements. In order to specify time for implementation process, estimated time-boxing and incremental delivery plan are going to be set up. Target Users Analysis In order to understand the users’ needs and reach out to the customers, it is necessary to identify target users through using a conductive survey. The proposed system is aimed to be used by two types of user groups, primary users and secondary users who will use the proposed website. Primary Users As the online booking system is aimed to develop for the customers to make booking, view the movie details and make payment, the internal staffs of Emerald Cineplex such as general manager, food and beverage manager and operation staff are involved in primary users. The internal staff will use this system to manage theatre, manage movie, control movie schedule, manage food and process report. It is assumed that the primary users are the adults aged 25 to 50. The primary users should be familiar with the proposed system features and must have problem solving skills so thus they can handle the various customer booking processes. COMP-1181 Page | 46 Secondary Users Loyal customers and visitors such as teenagers and early adults (ages of 13 to 40) are involved in the secondary users. Visitors can view the movie details, movie trailers, movie schedule and showtimes. Loyal customers will mainly use this system to make registration, make booking and buy food. The proposed website will be designed with simple interactive function and content and so thus the secondary user groups only need to have basic knowledge of system feature. Set up questions Criteria Number of questions Purpose Display page 2 questions To show relevant information on display page. Font 2 questions To avoid unhelpful font styles for the user interface design. Functionality 2 questions To implement the necessary function for the users Layout design 1 questions To use suitable layout design for the website Graphic design element 1 questions To create simple and minimalist interface design for the users. Before developing the online movie ticket booking system, a deep analysis is going to be made with questionnaires based on the human centered design method. In this survey, some significant questions concerning display page, font, functionality, layout design and graphic design elements are asked to 5 primary users and 5 secondary users. The questionnaires focus more on facts about how users want to interact with the proposed system. The user feedbacks are described in Appendix Page No. 93 COMP-1181 Page | 47 E-commerce Business Model of the Website There are many types of E-commerce models such as Business-to-Consumer (B2C), Business-to-Business (B2B), Consumer-to-Business (C2B) and Consumer-to-Consumer (C2C). As Emerald Co. Ltd focus on the website which can give fast, smart and reliable for the customers, Business-to-Consumer (B2C) model is going to be used in the proposed project. Emerald is trying to convince consumers to make a quick search, booking and purchase for booking so that the time can be saved for consumers. COMP-1181 Page | 48 Identifying High Level Requirement System Functional Requirement No 1. Name Manage Theatre Reason It is one of the essential requirement for Emerald Cineplex and it is used by the general manager to store the theatre information. It could involve the following transactions: ï‚· Insert new theatre information ï‚· Update theatre information ï‚· Delete theatre information Once the general manager records the theatre information in the database, the customers will be able to know which movie is showing in which theatre. Therefore, it is also high-level requirement. 2. Manage Movie It is also an essential process for Emerald Cineplex which will be operated by general admin and the following functions will be included. ï‚· Register Movie information ï‚· Update additional information for Movie ï‚· Delete Movie details The customer will be able to book and purchase seats when the general manager record the movie details in the system. Therefore, this requirement is a high level requirement. 3. Control Movie Schedule This requirement is high level for the general manager and the following functions are as followed: COMP-1181 ï‚· Insert movie schedule ï‚· Update movie schedule ï‚· Delete movie schedule Page | 49 This process will be accessed by the general manager and once he configures the movie schedule, the time tables of available movie will be displayed and the customers can select the convenient day. 4. Manage Food Items Customer will be able to interact with new food items and buy food items once the food and beverage manager register the food items. It will contain related functions like ï‚· Record food items information ï‚· Update food items information ï‚· Delete food items information Hence, this requirement is also high level. 5. Make Registration It is one of the fundamental process in this website and the following transactions are as followed. ï‚· Record customer information ï‚· Update customer information ï‚· Delete customer information The customers can access the system by signing in with their accounts. To obtain this, the customers initially need to create their own accounts. 6. Make Booking In this website, the movie ticket booking form is supported for the customers to make online booking. It could involve the following transactions: ï‚· Select available movie ï‚· Select desired date ï‚· Select quantity for seats ï‚· Choose payment method ï‚· Confirm or cancel booking In order to make booking, the customer must have an account otherwise they have to register at first. Hence, it is a high level requirement. 7. Manage Booking This requirement is also a high level requirement and the following related functions are as followed: COMP-1181 Page | 50 ï‚· Search customer bookings ï‚· Confirm customer bookings ï‚· Delete customer bookings The new customers will be able to get the movie tickets once the general manager confirm their bookings. In order to make available for seating plan, the general manager can also withdraw all booking of seats. 8. Buy Food Items It is also a high-level requirement. As an e-commerce platform, it is one of the main process which allows customers to purchase desired food items. In this process, the customers can: ï‚· Choose desired food items ï‚· Select quantity for chosen food items ï‚· Process checkout ï‚· Choose payment method Food order confirmation message will be sent and sale invoice will be displayed after the order is placed. The customers can access this process by signing in with their account. 9. Process Reports The operation staff will be able to identify the most valuable customers for a specific time by viewing the daily report produced by the website. It composed of transaction like ï‚· Search report for food order and booking ï‚· Review sales report ï‚· Generate sales report Therefore, this requirement is high level. 10. Operate Discount The customers can get discount for the food items order when the general manager generate coupon codes. The following functions will be included in this requirements. COMP-1181 ï‚· Generate coupon code for the food items ï‚· Add the percentage in the discount value field ï‚· Record the coupon code information Page | 51 Customers can apply discount code to their food order by entering the coupon codes in the text field. Therefore, it is a high-level requirement. 11. Manage Customer feedback It is a process of giving feedback to the Emerald Cineplex’s booking system and food service by customers. It will feature processes like ï‚· Give the rating to with a comment section ï‚· Write and submit the review Therefore, it is a high-level requirement COMP-1181 Page | 52 System Non-Functional Requirement Non-functional requirements are the requirements which essentially specifies the performance of a system. However, non-functional requirements should not be high-level requirements because the proposed system can run without those requirements. Below table describes non-functional requirements for Emerald website. No. Name 1. Aesthetic and userfriendly website design It is the visual interaction which should give an Consistent website design It is the ability of the website which keep the 2. Reason Category appealing and clean look without unnecessary website elements. placement of the images, text content, navigation and other website elements the same. 3. Ease of use It is the ability of the website which should offer easy and simple e-commerce functions for the Usability customers. 4. 5. Readable Typography It is the ability of the website which makes the Simple Navigation It is the graphical user interface which should be users to read the content and recognize it easily clear and simple to make the users to navigate to other landing pages quickly and easily 6. Easy website loading It is the response time of the website that should Performance be fast for the customer to see and interact with the content. 7. Fast website hosting It is the hosting system which should be provided Availability 24 hours a day by the service provider to increase the website loading time. 8. 9. Storage space of website It is the capacity of the website which is used to Flexible website It is the ability of the website which allow the Scalability store the required data on the server. Compatibility customers to run it on different browsers and operation system COMP-1181 Page | 53 10. Protection of sensitive data It is the ability of the system which allow only Security authorized employee in Emerald Cineplex to manage the confidential data. 11. Configurable website It is the ability of the website which allow the Maintenance administrator to repair and update the booking system features easily after implementation. Requirements Prioritization (MosCow Rules) As the proposed project is aimed to deliver the most important functionalities, MoSCoW prioritization which is one of the DSDM core techniques is used to reach the success of the project. This technique is very helpful in capturing the most essential high-level requirements and specifying the detailed functional requirements. According to the MoSCow Prioritization, the maximum 60% of the project are considered to be “Must have” requirements and another 20% are considered as the “Should have” requirements. The another 10% would be the “Could have” requirements and the remaining 10% is supported to be “Won’t have” requirement which is not necessary for the proposed system. No High-level requirements Must 1. Manage Theatre  2. Manage Movie  3. Control Movie Schedule  4. Manage Food  5. Make Registration  6. Make Booking  7 Manage Booking  8. Buy Food  9. Process Reports 10. Operate Discount 11. Manage Customer Feedback COMP-1181 Should Could Won’t    Page | 54 Reason in Setting Priorities Requirement 1: Manage Theatre Priority : Must have Reason : Theatre manage must be provided as it is essential for the general manager to control the theatres details so thus the customers can find out which movie is currently showing in which theatre. Requirement 2: Manage Movie Priority: Must have Reason: As the proposed project is aimed to provide the easy booking process, the movie information must be recorded into the databases to display them on website. Without this requirement, customer cannot view the available movie details and make booking process. Requirement 3: Control Movie Schedule Priority: Must have Reason: Movie schedule controlling process must also have in the proposed system in order to record the showtimes and show dates for different movies in different theatres as it is necessary for the customers to make choice of the suitable date and showtime of the currently showing movies. Requirement 4: Manage Food Priority: Must have Reason: To display the available food items that the customer can buy, the food items information such as food items name, related images and price must be recorded. Updating feature must be provided for the food and beverage manager because prices and food items can be changed frequently. COMP-1181 Page | 55 Requirement 5: Make Registration Priority: Must have Reason: Customer can make booking process and buying food items process only once they have their own accounts with their personal information such as name, address, email and so on. Customers must register accounts and login with their own accounts before making booking online. If not, security problems such as unauthorized access can be happened. Therefore, it is one of the high priority requirement. Requirement 6: Make Booking Priority: Must have Reason: As the proposed system focus on the engagement with more customers, booking feature is a must-have process in this website. The system must allow the customers to easily book the seats and make secure payment. Requirement 7: Manage Booking Priority: Must have Reason: The general manager must confirm the customer booking after the payment is done as it is necessary for the customers to show the confirmed ticket at the theatre for entry. The system must also allow the general manager to delete the customer booking if the payment is cancelled by the customers. Requirement 8: Buy Food Priority: Must have Reason: The website must also provide easy food orders feature alongside with online payment transaction for the customers. Without this requirement, further transactions such as sale invoice process could not be operated. COMP-1181 Page | 56 Requirement 9: Process Report Priority: Should have Reason: The website should have this functional requirement for operation staff to track list of customer name along with their expenses of food items, the volume of sales and evaluate which food items have more demand. By generating daily reports he can plan better management for the future booking and food order processes. Therefore, this requirement could be assumed as “Should have” requirement. Requirement 10: Operate Discount Priority: Could have Reason: In order to increase both sales and customer reachability, the discount process for customer could be implemented in this proposed website. This requirement is an extra service for the customers and it is less important than other business processes. Requirement 11: Manage Customer Feedback Priority: Won’t have Reason: As the proposed system have to develop within 4 months, this requirement is not necessarily required for the current business operation. The system implementation can operate well without this requirement. Hence, it won’t be provided in this implementation. COMP-1181 Page | 57 Use Case Diagram for website Online Movie Ticket Booking System and Food Service Manage Theatre Manage Movie General Manager Control Movie Schedule Make Registration Customer Make Booking Manage Booking Food and Beverage Manager Manage Food Buy Food Operation Staff Process Reports Figure: Use Case Diagram for Admin See the Use Case Description in Appendix Page no. COMP-1181 Page | 58 Chapter 5- Design and Timebox plan FoodType -FoodTypeID : String -FoodType : Integer +AddFoodType() +UpdateFoodType() +RemoveFoodType() Brand -BrandID : String -Brand : String +AddBrand() +UpdateBrand() +DeleteBrand() * * 1 Food Order -FoodOrderID : String -CustomerID : String -BookingID : String -Date : Date -TotalAmount : Integer -Status : String +placeFoodOrder() +updateFoodOrder() 1 * Food Order Detail -FoodOrderDetailID : String -FoodOrderID : String -FoodID : String -Quantity : Integer -Amount : Integer +calcPrice() * 1 1 Food Detail -FoodDetailID : String -FoodID : String -FoodType : String -Price : Integer +addFoodDetail() +updateFoodDetail() * 1 Food -FoodID : String -FoodName : String -Price : Integer -Description : String -Image : String +displayFood() +addFood() +updateFood() +deleteFood() 1 * Customer -CustomerID : String -CustomerName : String -Address : String -Email : String -Password : String -Gender : String -Phone : Integer +addCustomer() +removeCustomer() +updateCustomer() 1 * Booking -BookingID : String -MovieID : String -No of Seats : Integer -Total Amount : Integer -ShowTime : String -BookingDate : String -Status : String -Confirm : String -Payment : String +addBooking() +updateBooking() +deleteBooking() +searchBooking() +viewReport() +confrimBooking() 1 * Genre -GenreID : String -Genre : String +AddProduction() +UpdateProduction() +RemoveProduction() 1 1 * * Movie -MovieID : String -MovieName : String -MovieTrailer : String -MovieGenres : String -Actor : String -Actress : String -Director : String -StartDate : Date -EndDate : Date +displayMovieTrailer() +addMovie() +updateMovie() +deleteMovie() * * 1 Theatre -theatreID : String -theatreName : String -capacity : Integer +addTheatre() +deleteTheatre() +updateTheatre() * Production -ProductionID : String -Production : String +AddProduction() +UpdateProduction() +RemoveProduction() Ticket -CustomerID : Single -BookingID : String -SeatNo : String -NoOfSeat : Date -Price : Integer +printTicket() 1 * 1 1 1 * Seat -SeatID : String -SeatNo : Integer +AddSeat() +UpdateSeat() +DeleteSeat() * 1 1 * Movie Schedule -MovieScheduleID : String -ShowtimeID : String -Status : String -MovieID : String -ScheduleDate : Date +AddMovieSchedule() +UpdateMovieSchedule() +DeleteMovieSchedule() * 1 Showtime -showtimeID : String -MovieScheduleID : String -ShowDate : Date -ShowTime : String -TheatreID : String +addShowTime() +updateShowTime() +deleteShowTime() Seat Type -SeatTypeID : String -SeatType : String -Price : Integer +addSeatType() +removeSeatType() +updateSeatType() Figure- Detail Class Diagram See the Detailed Class Diagram Definition in Appendix D Page no. 84 COMP-1181 Page | 59 Estimated Timebox and Incremental Delivery Plan for the Website As the online booking website is required to complete within four months, it is necessary to plan the time boxing for the proposed website as part of DSDM methodology. In that way, Emerald Cineplex could deliver booking and food services to the customer on time and the final product could be in line with the business needs. Investigation of online booking system, methodology, tools and techniques, evaluation of existing website and requirement analysis. The proposed website is going to be implemented on 15th February 2020. The deadline for project submission would be in the last week of April and so thus the project need to divide into four timeboxes. The following is the estimated timebox plan for the project. Timebox Duration Tasks Expected Outputs 1. 14th February -17th Create database, implement Databases, Entry forms, Test March pages, make functionality results and complete pages of testing and make review for movie management process. movie management process. 2. 18th March -5th April Create database, implement Databases, Entry forms, Testing pages, make functionality results and complete pages of testing and make review for booking process. booking process. 3. 6th April -20th April Create database, implement Databases, Entry forms, Test pages, make functionality results and complete pages of testing and make review for food order process. food order process. COMP-1181 Page | 60 Chapter 6- System Development 1 Timebox 1 (14th of February to 18th of March 2020) 1. Manage Movie Process Deliverables- Admin Registration page, Admin Login Page, Movie Registration and Movie Schedule Page, Theatre Registration Page, Movie Genre Page No Duration 1. 14th February – 17th Create the databases for admin Databases of admin, movie February accessed pages such as movie registration, movie schedule, registration, movie schedule, theatre, theatre, production and production and movie genre. movie genre. Implement all admin accessed pages Entry forms of movie, movie such as movie registration, movie schedule, theatre, production schedule, theatre registration, and movie genre. 2. 18th February – 12th March Tasks Expected Outputs production and movie genre. 3. 13th March – 15th March Make functionality testing of Test results of implemented implemented admin pages such as admin accessed pages movie registration page, movie schedule page, theatre registration page, production and movie genre. 4. 16th March – 18th March Check and fix error of implemented Completion of movie admin pages such as movie registration, movie schedule registration, movie schedule, theatre page, theatre registration, registration, entry form of production entry form of production and and movie genre. COMP-1181 movie genre. Page | 61 Use Case Diagram for Time Box 1 Online Movie Ticket Booking System and Food Service Manage Theatre Manage Movie General Manager Control Movie Schedule Detailed Class Diagram for Time Box 1 Theatre -theatreID : String -theatreName : String -capacity : Integer +addTheatre() +deleteTheatre() +updateTheatre() Genre -GenreID : String -Genre : String +AddGenre() +UpdateGenre() +RemoveGenre() COMP-1181 1 * Movie -MovieID : String -MovieName : String -MovieTrailer : String -MovieGenres : String -Actor : String -Actress : String -Director : String -StartDate : Date -EndDate : Date +displayMovieTrailer() +addMovie() +updateMovie() +deleteMovie() 1 * 1 * Movie Schedule -MovieScheduleID : String -ShowtimeID : String -Status : String -MovieID : String -ScheduleDate : Date +AddMovieSchedule() +UpdateMovieSchedule() +DeleteMovieSchedule() * 1 Showtime -showtimeID : String -MovieScheduleID : String -ShowDate : Date -ShowTime : String -TheatreID : String +addShowTime() +updateShowTime() +deleteShowTime() Page | 62 Database Design for Time Box 1 Figure- Admin Table Figure- Theatre Table Figure- Movie Table Figure- Movie Schedule Table COMP-1181 Page | 63 Figure- Genre High-level Prototype for Time box 1 Figure- Admin Sign Up Page Figure- Admin Login Page COMP-1181 Page | 64 Figure- Movie Registration Page Figure- Movie Schedule Page COMP-1181 Page | 65 Figure- Theatre Registration Page Figure- Genre Page COMP-1181 Page | 66 Testing Test Schedule Module 1: Admin Registration Test Script Description Date Tester 1.1 AdminID are automatically add to a table 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine within an admin database once the internal staffs register in the Admin Registration form. 1.2 General Manager cannot leave blank in the Name field. 1.3 General Manager cannot leave blank in the Email field. 1.4 Admin Email must be in Email format. 13th March 2020 Aung Soe Khine 1.5 General Manger cannot leave blank in the 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine Password field.. 1.6 General Manager cannot skip without filling in the Phone field. 1.7 The page should go to the Admin Login Page when admin click “I am already a member” button. 1.8 Admin is not allowed to click Sign In button when the fields are empty. 1.9 All the filled text box should be empty when Clear button is clicked. 1.10 1.11 An admin’s email cannot register twice. All admin information must be recorded th 13 March 2020 Aung Soe Khine accurately in admin table in database when internal staff clicks Register button. COMP-1181 Page | 67 Module 2: Admin Login Form Test Script 2.1 Description Admin can log in successfully if he/she fill Date Tester 13 March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine 13th March 2020 Aung Soe Khine th correct Email and Password in Sign In Form. 2.2 Admin can log in successfully if he/she fill incorrect Email and Password in Sign In Form. 2.3 Admin cannot skip without filling in the Email field. 2.4 Admin cannot skip without filling in the Email field. 2.5 Admin cannot skip without filling in the Password field. 2.6 Admin is not allowed click Sign In button when the fields are empty. 2.7 All the filled text box must be empty when the admin click Clear button. 2.8 The page will go to the Brand entry form page (Admin Page) when he/she login 2.9 The page will go to the Display page once he/she logout. COMP-1181 Page | 68 Module 3: Theatre Registration Form Test Script Description Date Tester 3.1 TheatreID is automatically add to a table 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine within a movie database. 3.2 General Manager cannot skip without filling in the Theatre Name field. 3.3 General Manager cannot skip without filling in the Seats field. 3.4 3.5 Theatre Name data cannot register twice. General Manager can edit the theatre th 14 March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine information once he/she click the Edit button in the theatre listing table. 3.6 General Manager can delete the theatre information once he/she click Delete button in the theatre listing table. COMP-1181 Page | 69 Module 4: Movie Registration Form Test Script Description Date Tester 4.1 MovieID is automatically add to a table 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine within a movie database. 4.2 General Manager cannot leave blank in the Movie Name field. 4.3 General Manager cannot leave blank in the Genre field. 4.4 General Manager cannot leave blank in the Actor field. 4.5 General Manager cannot leave blank in the Actress field. 4.6 General Manager cannot leave blank in the Director Name field. 4.7 General Manager cannot leave blank in the Movie Duration Name field. 4.8 General Manager cannot leave blank in the Movie Release Date field. 4.9 General Manager cannot leave blank in the Description field. 4.10 General Manager cannot leave blank in the Posters field. 4.11 The movie name cannot be registered twice. 14th March 2020 Aung Soe Khine 4.12 General Manager can edit the movie 14th March 2020 Aung Soe Khine 14th March 2020 Aung Soe Khine information once he/she click Edit button in the Movie listing table. 4.13 General Manager can delete the movie information once he/she click the Delete button in the movie listing table. COMP-1181 Page | 70 Module 5: Movie Schedule Form Test Script Description Date Tester 5.1 General Manager can add the movie 15th March 2020 Aung Soe Khine 15th March 2020 Aung Soe Khine 15th March 2020 Aung Soe Khine Date Tester 15th March 2020 Aung Soe Khine 15th March 2020 Aung Soe Khine schedule information to the movie schedule detail table. 5.2 Internal Staff can remove the movie schedule information that he/she added in the Movie Schedule Detail table. 5.3 All movie schedule information must be recorded accurately in movie schedule table in movie schedule database and showtime database when internal staff clicks Save button. Module 6: Genre Registration Form Test Script 6.1 Description GenreID is automatically add to a table within a genre database. 6.2 Internal Staff cannot skip without filling in the Genre field. 6.3 Genre data cannot register twice. 15th March 2020 Aung Soe Khine 6.4 Internal Staff can edit the genre once he/she 15th March 2020 Aung Soe Khine 15th March 2020 Aung Soe Khine click the Edit button in the genre listing table. 6.5 Internal Staff can delete the genre once he/she click Delete button in the genre listing table. COMP-1181 Page | 71 Unit Test 1 Data Source: Admin Registration Form Test Case: Data entry for Designed by: admin registration Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Admin Registration form works accurately. Test Description Test Procedure Case 1.1 Expected Actual Result Results AdminID are automatically add to AdminID will not be shown AdminID will See Fig a table within an admin database in the form. Fill the other be shown in 1.1 and once the internal staffs register in fields that remain in the form the database. 1.2 the Admin Registration form and then click Save button. Test Cases for Time Box 1 Before Testing Figure-1.2 After Testing Figure-1.2 COMP-1181 Page | 72 Test Description Test Procedure Expected Result Case 1.2 Actual Results Internal Staffs cannot leave Skip the Name field and fill the Must warn that Name See Fig blank in the Name field. 1.3 and remain fields in admin registration field should be filled form and then click Save button. out. 1.4 Before Testing Figure-1.3 After Testing Figure-1.4 COMP-1181 Page | 73 Test Description Test Procedure Expected Result Actual Case 1.3 Results Internal Staffs cannot Skip the Email field and fill the Must warn that Email See Fig leave blank in the Email remain fields in admin registration field should be filled 1.5 and field. form and then click Save button. out. 1.6 Before Testing Figure-1.5 After Testing Figure-1.6 COMP-1181 Page | 74 Test Description Test Procedure Expected Result Actual Case 1.4 Results Admin Email must Fill the Email field without @ and fill Must warn that Admin See Fig be in Email format. 1.7 and the remain fields in admin registration should enter an email from and then click Save button . address. 1.8 Before Testing Figure-1.7 After Testing Figure-1.8 COMP-1181 Page | 75 Test Description Test Procedure Expected Result Actual Case 1.5 Results Internal Staffs cannot Skip the Password field and fill Must warn that Password See Fig leave blank in the the rest fields in admin registration field should be filled out. 1.9 and Password field. form. Then click Save button. 1.10 Before Testing v Figure-1.9 After Testing Figure-1.10 COMP-1181 Page | 76 Test Description Test Procedure Expected Result Actual Case 1.6 Results Internal Staffs cannot Skip the Phone field and fill the Must warn that Phone See Fig skip without filling in rest fields in admin registration field should be filled out. 1.11 and the Phone field. form. Then click Save button. 1.12 Before Testing Figure-1.11 After Testing Figure-1.12 COMP-1181 Page | 77 Test Description Test Procedure Expected Result Actual Case 1.7 Results The page should go to the Skip all the fields in Admin The page should go to the See Fig Admin Login Page when Registration form. Then click Admin Login Form. 1.13 admin click “I am already “I am already a member” and a member” button. 1.14 button Before Testing Figure-1.13 After Testing Figure-1.14 COMP-1181 Page | 78 Test Description Test Procedure Expected Result Actual Case 1.8 Results Internal Staffs is not allowed Skip all the fields in Admin Must show all the fields to click Sign In button when Registration form. Then click should be filled out. the fields are empty. Save button. See Fig 1.15 and 1.16. Before Testing Figure-1.15 After Testing Figure-1.16 COMP-1181 Page | 79 Test Description Test Procedure Expected Result Actual Case 1.9 Results All the filled text box Fill the admin’s information in All the Admin’s information See Fig should be empty when the Admin Registration form. should be empty in the Admin 1.17 and Clear button is clicked. Then click Clear button. Registration form. 1.18 Before Testing Figure-1.17 After Testing Figure-1.18 COMP-1181 Page | 80 Test Description Test Procedure Expected Result Actual Case 1.10 Results An admin’s email cannot Fill the admin information that Must warn that admin email register twice. is already exist in the database. is already exist. Then click Save button. See Fig 1.19 and 1.20 Before Testing Figure-1.19 After Testing Figure-1.20 COMP-1181 Page | 81 Test Description Test Procedure Expected Result Case 1.11 Actual Results All admin information must be Fill all the admin’s All Admin information See Fig recorded accurately in admin information in the admin should be saved in the 1.21 table in database when internal registration form. Afterward, database. and staff clicks Register button. 1.22 click Save button. Before Testing Figure-1.21 After Testing Figure-1.22 COMP-1181 Page | 82 Unit Test 2 Data Source: Admin Login Form Test Case: Data entry for Designed by: admin login Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Admin Login form works accurately. Test Description Test Procedure Expected Result Case 2.1 Actual Results Admin can log in successfully Fill Email and Password in Must show Admin See Fig if he/she fill correct Email and the Admin Login Form. SignIn success 2.1 and notification. 2.2 Password in Sign In Form. Then, click Login button. Before Testing Figure-2.1 After Testing Figure-2.2 COMP-1181 Page | 83 Test Description Test Procedure Expected Result Case 2.2 Actual Results Admin can log in successfully Fill incorrect Email and Must alert that See Fig if he/she fill incorrect Email Password in the Admin Login Admin Signin 2.3 and and Password in Sign In Form. Form. Then, click Login button. incorrect. 2.4 Before Testing Figure-2.3 After Testing Figure-2.4 COMP-1181 Page | 84 Test Description Test Procedure Expected Result Case 2.3 Actual Results Admin cannot skip Fill the password field in the Sign In Must alert that Email See Fig without filling in the form and leave blank in the Email field field should be filled 2.5 and Email field. and then click Sign In button. out. 2.6 Before Testing Figure-2.5 After Testing Figure-2.6 COMP-1181 Page | 85 Test Description Test Procedure Expected Result Case 2.4 Actual Results Admin cannot skip Fill the password field in the Sign In Must alert that Email See Fig without filling in the form and leave blank in the Email field field should be filled 2.7 and Email field. and then click Sign In button. out. 2.8 Before Testing Figure-2.7 After Testing Figure-2.8 COMP-1181 Page | 86 Test Description Test Procedure Expected Result Actual Case 2.5 Results Admin cannot skip Fill the Email field in the Sign In Must alert that Password See Fig without filling in form and leave blank in the Password field should be filled out. 2.9 and the Password field. field and then click Sign In button. 2.10 Before Testing Figure-2.9 After Testing Figure-2.10 COMP-1181 Page | 87 Test Description Test Procedure Expected Result Actual Case 2.6 Results Admin is not allowed click Leave blank in all fields in the Must alert that all the See Fig Sign In button when the Sign In form. Then, click Sign field should be filled out. 2.11 and fields are empty. In button. 2.12 Before Testing Figure-2.11 After Testing Figure-2.12 COMP-1181 Page | 88 Test Description Test Procedure Expected Result Actual Case 2.7 Results All the filled text box must Fill the admin’s information All the admin’s information See Fig be empty when the admin in the Admin Login form should be empty in Login 2.13 and click Clear button. and then click Clear button. form. 2.14 Before Testing Figure-2.13 After Testing Figure-2.14 COMP-1181 Page | 89 Test Description Test Procedure Expected Result Case 2.8 Actual Results The page will go to the Brand Fill correct admin’s information The page should go See Fig entry form page (Admin Page) in the Sign In form and then to the Brand entry 2.15 when he/she login form page if he/she and click Login button. 2.16 click Login button. Before Testing Figure-2.15 After Testing Figure-2.16 COMP-1181 Page | 90 Test Description Test Procedure Expected Result Case 2.9 Actual Results The page will go to the Click the Sign Out button in the Must show Logout See Fig Display page once he/she navigation bar. message and go to 2.17 and logout. display page. 2.18 Before Testing Figure-2.17 After Testing Figure-2.18 COMP-1181 Page | 91 Unit Test 3 Test Case: Data entry for theatre Designed by: registration Aung Soe Khine Data Source: Theatre Registration Objective: To check that Theatre Tester: Aung Soe Khine Form Registration form works accurately. Test Description Test Procedure Case 3.1 Expected Actual Result Results TheatreID is TheatreID will not be shown in the entry TheatreID See Fig automatically add to a form. Fill the other fields that remain in will be shown 3.1 and table within a movie the form. Then click Save button and in the 3.2 database. check the ID field in database. database. Before Testing Figure-3.1 After Testing Figure-3.2 COMP-1181 Page | 92 Test Description Test Procedure Expected Result Actual Case 3.2 Results General Manager cannot skip Skip the Theatre Name Must warn that theatre See Fig without filling in the Theatre field and then click Save name field should be 3.3 and filled out. 3.4 Name field. button. Before Testing Figure-3.3 After Testing Figure-3.4 COMP-1181 Page | 93 Test Description Test Procedure Expected Result Actual Case 3.3 Results General Manager cannot skip Skip the Seats field and Must warn that seats See Fig without filling in the Seats field. then click Save button. field should be filled 3.5 and out. 3.6 Before Testing Figure-3.5 After Testing Figure-3.6 COMP-1181 Page | 94 Test Description Test Procedure Expected Result Case 3.4 Actual Results Theatre Name data cannot Fill the theatre name that is Must warn that Theatre Name See Fig register twice. already exist in the database. is already exist. 3.7 and Then click Save button. 3.8 Before Testing Figure-3.7 After Testing Figure-3.8 COMP-1181 Page | 95 Test Description Test Procedure Expected Result Case 3.5 Actual Results General Manager can edit Click the edit button in the The page should go to the Theatre See Fig the theatre information once Theatre listing table and Update page and must show that 3.9 and he/she click the Edit button then update the theatre New Theatre successfully save. in the theatre listing table. information. Before Testing Figure-3.9 After Testing Figure-3.10 COMP-1181 Page | 96 3.10 Test Description Test Procedure Expected Result Actual Case 3.6 Results General Manager can delete Click the delete button in the Must show that Theatre the theatre information once Theatre listing table. successfully delete. See Fig 3.11 and he/she click Delete button in 3.12 the theatre listing table. Before Testing Figure-3.11 After Testing Figure-3.12 COMP-1181 Page | 97 Unit Test 4 Test Case: Data entry for movie Designed by: registration Aung Soe Khine Data Source: Movie Registration Objective: To check that Movie Tester: Aung Soe Khine Form Registration form works accurately. Test Description Test Procedure Expected Actual Result Results MovieID is automatically MovieID will not be shown in the entry MovieID will See Fig add to a table within a form. Fill the other fields that remain in be shown in 4.1 and movie database. the database. 4.2 Case 4.1 the form. Then click Save button and check the ID field in database. Before Testing Figure-4.1 After Testing Figure-4.2 COMP-1181 Page | 98 Test Description Test Procedure Expected Result Actual Case Results 4.2 General Manager Skip the Movie Name field and Must show alert message See Fig cannot leave blank in enter the remain input data in the box that movie name 4.3 and form and click “Save” button. should be filled out. 4.4 the Movie Name field. Before Testing Figure-4.3 After Testing Figure-4.4 COMP-1181 Page | 99 Test Description Test Procedure Expected Result Actual Case Results 4.3 General Manager Skip the Genre field and enter Must show alert message See Fig cannot leave blank in the remain input data in the form box that genre should be 4.5 and the Genre field. and click “Save” button. filled out. 4.6 Before Testing Figure-4.5 After Testing Figure-4.6 COMP-1181 Page | 100 Test Description Test Procedure Expected Result Actual Case Results 4.4 General Manager Skip the Actor field and enter Must show alert message See Fig cannot leave blank in the remain input data in the form box that actor should be 4.7 and the Actor field. and click “Save” button. filled out. 4.8 Before Testing Figure-4.7 After Testing Figure-4.8 COMP-1181 Page | 101 Test Description Test Procedure Expected Result Actual Case Results 4.5 General Manager Skip the Actress field and enter Must show alert message See Fig cannot leave blank in the remain input data in the form box that actress should be 4.9 and the Actress field. and click “Save” button. filled out. 4.10 Before Testing Figure-4.9 After Testing Figure-4.10 COMP-1181 Page | 102 Test Description Test Procedure Expected Result Actual Case 4.6 Results General Manager cannot leave blank in the Director Name field. Skip the Director Name field and Must show alert message See Fig enter the remain input data in the box that director name 4.11 and form and click “Save” button. should be filled out. 4.12 Before Testing Figure-4.11 After Testing Figure-4.12 COMP-1181 Page | 103 Test Description Test Procedure Expected Result Actual Case 4.7 Results General Manager cannot Skip the Movie Duration field Must show alert message leave blank in the Movie and enter the remain input data in box that movie duration 4.13 and Duration field. the form and click “Save” button. should be filled out. See Fig 4.14 Before Testing Figure-4.13 After Testing Figure-4.14 COMP-1181 Page | 104 Test Description Test Procedure Expected Result Case 4.8 Actual Results General Manager cannot Skip the Movie Release Date field Must show alert message See Fig leave blank in the Movie and enter the remain input data in box that movie release 4.9 and Release Date field. the form and click “Save” button. date should be filled out. 4.10 Before Testing Figure-4.15 After Testing Figure-4.16 COMP-1181 Page | 105 Test Description Test Procedure Expected Result Case Actual Results 4.9 General Manager Skip the Description field and Must show alert message See Fig cannot leave blank in enter the remain input data in the box that Description field 4.17 the Description field. form and click “Save” button should be filled out. and 4.18 Before Testing Figure-4.17 After Testing Figure-4.18 COMP-1181 Page | 106 Test Description Test Procedure Expected Result Actual Case Results 4.10 General Manager cannot leave blank in the Posters field. Skip the Posters field and enter Must show alert message See Fig the remain input data in the box that images file should 4.19 and form and click “Save” button be selected. 4.20 Before Testing Figure-4.19 After Testing Figure-4.20 COMP-1181 Page | 107 Test Description Test Procedure Expected Result Actual Case 4.11 Results The movie name cannot be Fill the same movie name Must show alert message registered twice. See Fig that is already exist in the box that movie name already 4.21 database and click Save exist. and button. 4.22 Before Testing Figure-4.21 After Testing Figure-4.22 COMP-1181 Page | 108 Test Description Test Procedure Expected Result Actual Case 4.12 Results General Manager can edit the Click the Edit button in The page should go to the See Fig movie information once he/she the Movie listing table and Movie Update page and 4.23 click Edit button in the Movie then update the movie must show the New Movie and listing table. 4.24 information. successfully save. Before Testing Figure-4.23 After Testing Figure-4.24 COMP-1181 Page | 109 Test Description Test Procedure Expected Result Case 4.13 Actual Results General Manager can delete the movie Click the delete information once he/she click the button in the Movie Delete button in the movie listing table. listing table. Must show that Movie successfully deleted. See Fig 4.25 and 4.26 Before Testing Figure-4.25 After Testing Figure-4.26 COMP-1181 Page | 110 Unit Test 5 Data Source: Movie Schedule Form Test Case: Data entry Designed by: for movie schedule Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Movie Schedule form works accurately. Test Description Test Procedure Expected Result Case 5.1 Actual Results General Manager can add the Fill the necessary movie Movie schedule information must See Fig movie schedule information schedule information in be successfully added to the movie 5.1 and to the movie schedule detail the entry form and then schedule detail table. table. 5.2 click Add button. Before Testing Figure-5.1 After Testing Figure-5.2 COMP-1181 Page | 111 Test Description Test Procedure Expected Result Case 5.2 Actual Results Internal Staff can remove the Click the Remove button Must not show the movie See Fig movie schedule information in the Movie Schedule schedule information in 5.3 and that he/she added in the Movie Detail table. the Movie Schedule 5.4 Schedule Detail table. Detail table. Before Testing Figure-5.3 After Testing Figure-5.4 COMP-1181 Page | 112 Test Description Test Procedure Expected Result Case 5.3 Actual Results All movie schedule information must be Fill movie schedule All movie schedule See Fig recorded accurately in movie schedule information in the information should be 5.5 and table in movie schedule database and movie schedule entry saved in the movie 5.6 showtime database when internal staff form. Afterward, click schedule database and Save button. showtime database. clicks Save button. Before Testing Figure-5.5 After Testing Figure-5.6 COMP-1181 Page | 113 Unit Test 6 Test Case: Data entry for genre Designed by: Aung Soe Khine Data Source: Genre Form Objective: To check that Genre form Tester: Aung Soe Khine works accurately. Test Description Test Procedure Case 6.1 Expected Actual Result Results GenreID is automatically Genre will not be shown in the entry GenreID will See Fig add to a table within a form. Fill the genre field in the form. be shown in 6.1 and genre database. Then click Save button and check the ID the database. 6.2 field in database. Before Testing Figure-6.1 After Testing Figure-6.2 COMP-1181 Page | 114 Test Description Test Procedure Expected Result Actual Case 6.2 Results Internal Staff cannot skip without Skip the Genre field Must warn that genre field See Fig filling in the Genre field. 6.3 and and then click Save should be filled out. button. 6.4 Before Testing Figure-6.3 After Testing Figure-6.4 COMP-1181 Page | 115 Test Description Test Procedure Expected Result Case 6.3 Actual Results Genre data cannot register Fill the genre that is already Must warn that Genre is See Fig twice. exist in the database. Then already exist. 6.5 and click Save button. 6.6 Before Testing Figure-6.5 After Testing Figure-6.6 COMP-1181 Page | 116 Test Description Test Procedure Expected Result Case 6.4 Actual Results Internal Staff can edit the Click the edit button in the The page should go to the See Fig genre once he/she click the Genre listing table and then Genre Update page and must 6.7 and Edit button in the genre update the genre. show that New Genre 6.8 listing table. successfully save. Before Testing Figure-6.7 After Testing Figure-6.8 COMP-1181 Page | 117 Test Description Test Procedure Expected Result Case 6.5 Actual Results Internal Staff can delete the genre once he/she click Click the delete button in the Genre listing table. Must show that Genre See Fig successfully delete. 6.9 and Delete button in the genre 6.10 listing table. Before Testing Figure-6.9 After Testing Figure-6.10 COMP-1181 Page | 118 Iteration for Time box 1 The testing process for the development of the proposed system in project plan has predefined to made after the complete implementation of the website. However, our supervisor mentioned that the test schedule and test cases should be made during the implementation process for each timebox. The highlevel prototypes for movie management process which were planned to be illustrated in design stage were represented in timebox 1. Throughout the implementation of timebox 1 deliverables, the developer had made many mistakes in adding values and data types which took some times to find out the error and make changes to get error-free admin accessed pages. Moreover, some errors such as incorrect syntax errors and parse errors of movie entry form and movie schedule form are occurred which took two days for the developer to identify and fix those issues throughout the development process. Furthermore, the user interface design for each admin accessed pages took three days for the developer to implement. Figure -Project plan for testing process COMP-1181 Page | 119 Chapter 7- System Development 2 Timebox 2 (18th of March to 5th of April 2020) 2. Make Booking Process Deliverables- Customer Registration page, Customer Login page, Movie Display page, Movie Detail page, ShowTime page, Seating Plan page, Booking Report page, Booking Confirm Page No Duration Tasks Expected Outputs 1. 19th March – 23th March Create the databases for customer Databases of customer, booking accessed pages such as customer and bookseat. registration, customer login, showtime and seating plan. 2. 24th March – 27th March Implement customer and admin Customer registration page and accessed pages of customer login page, movie display page, registration, customer login, movie detail page, showtime movie display, movie detail, page, seating plan page for the showtime, seating plan, booking customers. Booking report and report and booking confirm. booking confirm page for the admin. 3. 4. COMP-1181 28th March – 31th March 1st April – 5th April Make functionality testing of all Test results of all implemented implemented customer and admin customer and admin accessed accessed pages pages Check and fix error of all Completion of all implemented implemented customer and admin customer and admin accessed accessed pages pages. Page | 120 Use Case Diagram for Time Box 2 Online Movie Ticket Booking System and Food Service Make Registration Customer Make Booking Operation Staff Process Reports Detailed Class Diagram for Time Box 2 Customer -CustomerID : String -CustomerName : String -Address : String -Email : String -Password : String -Gender : String -Phone : Integer +addCustomer() +removeCustomer() +updateCustomer() 1 * Booking -BookingID : String -MovieID : String -No of Seats : Integer -Total Amount : Integer -ShowTime : String -BookingDate : String -Status : String -Confirm : String -Payment : String +addBooking() +updateBooking() +deleteBooking() +searchBooking() +viewReport() +confrimBooking() 1 * Ticket -CustomerID : Single -BookingID : String -SeatNo : String -NoOfSeat : Date -Price : Integer +printTicket() * * 1 Theatre -theatreID : String -theatreName : String -capacity : Integer +addTheatre() +deleteTheatre() +updateTheatre() 1 1 * Seat -SeatID : String -SeatNo : Integer +AddSeat() +UpdateSeat() +DeleteSeat() * 1 Seat Type -SeatTypeID : String -SeatType : String -Price : Integer +addSeatType() +removeSeatType() +updateSeatType() COMP-1181 Page | 121 Database Design for Time Box 2 Figure- Customer Table Figure- Booking Table Figure- BookSeat Table COMP-1181 Page | 122 High-level Prototype for Time box 2 Figure- Customer Sign Up Page Figure- Customer Sign In Page COMP-1181 Page | 123 Figure- Movie Display Page Figure- Movie Display Page COMP-1181 Page | 124 Figure- Showtime page Figure- Seating Plan page COMP-1181 Page | 125 Figure- Booking Confirmation page Figure- Booking Report page COMP-1181 Page | 126 Figure- Booking Detail Report page COMP-1181 Page | 127 Testing Test Schedule Module 7: Customer Registration Form Test Script Description Date Tester 7.1 CustomerID are automatically add to a table 28th March 2020 Aung Soe Khine 28th March 2020 Aung Soe Khine 28th March 2020 Aung Soe Khine 28th March 2020 Aung Soe Khine within a customer database. 7.2 Customer cannot skip without filling in the Name field. 7.3 Customer cannot skip without filling in the Address field. 7.4 Customer cannot skip without filling in the Email field. 7.5 Customer Email must be in email format. 28th March 2020 Aung Soe Khine 7.6 Customer cannot skip without filling in the 28th March 2020 Aung Soe Khine 28th March 2020 Aung Soe Khine Password field. 7.7 Customer cannot skip without filling in the Phone field. 7.8 A customer’s email cannot register twice. 28th March 2020 Aung Soe Khine 7.9 All of filled text box should be empty when 28th March 2020 Aung Soe Khine Customer click Clear button. COMP-1181 Page | 128 Module 8: Customer Sign In Form Test Script Description Date Tester 8.1 Customer can log in successfully if he/ she 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine fill correct Email and Password in Sign In Form. 8.2 Customer cannot log in successfully if he/she fill incorrect Email and Password. 8.3 Customer cannot skip without filling in the Email field. 8.4 Email must be in Email format. 29th March 2020 Aung Soe Khine 8.5 Customer cannot skip without filling in the 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine 29th March 2020 Aung Soe Khine Password field. 8.6 Customer cannot click Sign In button if the fields are empty. 8.7 All the filled text box should be empty when customer click Clear button. 8.8 The page will go to Customer Home page once he/she login 8.9 The page will go to Display page once the customer log out COMP-1181 Page | 129 Module 9: Booking Process Test Script 9.1 Description Customers can view the detail information Date Tester 30th March 2020 Aung Soe Khine 30th March 2020 Aung Soe Khine 30th March 2020 Aung Soe Khine 30th March 2020 Aung Soe Khine 30th March 2020 Aung Soe Khine of selected movie. 9.2 Customers can choose the desired show date and showtime of selected movie. 9.3 Customer can select the desired show date and showtime to make booking 9.4 Customers can select the preferred seats in the seating plan. 9.5 Customers cannot select the unavailable seats in the seating plan. Module 10: Booking Confirmation Process Test Script Description Date Tester 10.1 General Manager can confirm the customer 30th March 2020 Aung Soe Khine 30th March 2020 Aung Soe Khine booking once customer has successfully made booking. 10.2 General Manager can delete the customer booking in the Booking Confirm page. COMP-1181 Page | 130 Module 10: Booking Report Process Test Script Description Date Tester 11.1 Operation Staff can search the customer 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine 31th March 2020 Aung Soe Khine booking by ID once he/she choose BookingID and click Search button. 11.2 Operation Staff can search the booked movie by Date once he/she click Search by Date radio button, choose booking date and click Search button 11.3 Operation Staff can view all customer booking once he/she click Show All button. 11.4 Operation Staff cannot search customer booking by ID if he/she click Search by Date radio button. 11.5 Operation Staff cannot search customer booking by date if he/she click Search by ID radio button. 11.6 Operation Staff cannot search customer booking by date if he/she choose wrong booking date. 11.7 Operation Staff can view and print Booking Detail Report once he/she click View Detail in the Booking Search Details table. COMP-1181 Page | 131 Test Cases for Time Box 2 Unit Test 7 Data Source: Customer Registration Form Test Case: Data entry for Designed by: customer registration Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Customer Registration form works accurately. Test Description Test Procedure Case 7.1 Expected Actual Result Results CustomerID are CustomerID will not be shown in CustomerID See Fig automatically add to a table the entry form. Fill up all required will be shown 7.1 and within a customer database input that remain in the form. Then in the 7.2 click Save button and check the ID database. field in database. Before Testing Figure-7.1 After Testing Figure-7.2 COMP-1181 Page | 132 Test Description Test Procedure Expected Result Case 7.2 Actual Results Customer cannot skip Skip the Name field and fill the Must warn that See Fig without filling in the rest fields in customer registration Name field should 7.3 and Name field. form and then click Save button. filled out. 7.4 Before Testing Figure-7.3 After Testing Figure-7.4 COMP-1181 Page | 133 Test Description Test Procedure Expected Result Case 7.3 Actual Results Customer cannot skip Skip the Address field and fill the Must warn that See Fig without filling in the remain fields in customer registration Address field 7.5 and Address field. form and then click Save button. should filled out. 7.6 Before Testing Figure-7.5 After Testing Figure-7.6 COMP-1181 Page | 134 Test Description Test Procedure Expected Result Case 7.4 Actual Results Customer cannot skip Skip the Email field and fill the Must warn that See Fig without filling in the remain fields in customer registration Email field should 7.7 and Email field. form and then click Save button. filled out. 7.8 Before Testing Figure-7.7 After Testing Figure-7.8 COMP-1181 Page | 135 Test Description Test Procedure Expected Result Case 7.5 Actual Results Customer Email Fill the Email field without @ and fill the Must warn that See Fig must be in email remain fields in customer registration customer should enter 7.9 and an email address. 7.10 format. form. Then, click Save button. Before Testing Figure-7.9 After Testing Figure-7.10 COMP-1181 Page | 136 Test Description Test Procedure Expected Result Case 7.6 Actual Results Customer cannot skip Skip the Password field and fill the Must warn that See Fig without filling in the remain fields in customer registration Password field 7.11 and should filled out. 7.12 Password field. form and then click Save button. Before Testing Figure-7.11 After Testing Figure-7.12 COMP-1181 Page | 137 Test Description Test Procedure Expected Result Case 7.7 Actual Results Customer cannot skip Skip the Phone field and fill the Must warn that See Fig without filling in the remain fields in customer registration Phone field 7.13 and should filled out. 7.14 Phone field. form and then click Save button. Before Testing Figure-7.13 After Testing Figure-7.14 COMP-1181 Page | 138 Test Description Test Procedure Expected Result Case 7.8 Actual Results A customer’s email Fill the customer’s information that Must warn that See Fig cannot register twice. is already exist in the database. Customer Email is 7.15 and already exist. 7.16 Then click Save button. Before Testing Figure-7.15 After Testing Figure-7.16 COMP-1181 Page | 139 Test Description Test Procedure Expected Result Case 7.9 Actual Results All of filled text box should Fill the customer’s All the customer See Fig be empty when Customer information in the customer information should be 7.17 click Clear button. registration form. Then click empty in the customer and Clear button. registration form. 7.18 Before Testing Figure-7.17 After Testing Figure-7.18 COMP-1181 Page | 140 Unit Test 8 Data Source: Customer Sign In Form Test Case: Data entry for Designed by: customer sign in Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Customer Sign In form works accurately. Test Description Test Procedure Case 8.1 Expected Actual Result Results Customer can log in successfully Fill Email and Password in Must show See Fig if he/ she fill correct Email and the Sign In Form. Then click Sign In success 8.1 and Password in Sign In Form. Sign In button. message. 8.2 Before Testing Figure-8.1 After Testing Figure-8.2 COMP-1181 Page | 141 Test Description Test Procedure Expected Result Case Actual Results 8.2 Customer cannot log in Fill incorrect Email and Must show that See Fig successfully if he/she fill Password in the text box. Customer Signin 8.3 and incorrect Email and Password. Then click Sign In button. incorrect message. 8.4 Before Testing Figure-8.3 After Testing Figure-8.4 COMP-1181 Page | 142 Test Description Test Procedure Expected Result Case 8.3 Actual Results Customer cannot skip Fill the password field in the Must show that See Fig without filling in the Sign In form and skip the Email Email text box 8.5 and Email field. field. Then click Sign In button should be filled out. 8.6 Before Testing Figure-8.5 After Testing Figure-8.6 COMP-1181 Page | 143 Test Description Test Procedure Expected Result Case 8.4 Actual Results Email must be in Email Fill the Email field without @ and format. fill password in customer sign in form. Then click Save button Must show that an See Fig email address should 8.7 and be entered. 8.8 Before Testing Figure-8.7 After Testing Figure-8.8 COMP-1181 Page | 144 Test Description Test Procedure Expected Result Case 8.5 Actual Results Customer cannot skip Fill the Email field in the SignIn Must alert that See Fig without filling in the form and leave blank in Password Password field should 8.9 and be filled out. 8.10 Password field. field. Then click Sign In button. Before Testing Figure-8.9 After Testing Figure-8.10 COMP-1181 Page | 145 Test Description Test Procedure Expected Result Actual Case 8.6 Results Customer cannot click Click Sign In button without Must alert that all the See Fig Sign In button if the filling any fields in the form. fields should be filled 8.11 and out. 8.12 fields are empty. Before Testing Figure-8.11 After Testing Figure-8.12 COMP-1181 Page | 146 Test Description Test Procedure Expected Result Actual Case 8.7 Results All the filled text box should Enter customers’ data in All customer information See Fig be empty when customer the Sign In form and then should be empty in the 8.13 and click Clear button. click Clear button. Sign In form. 8.14 Before Testing Figure-8.13 After Testing Figure-8.14 COMP-1181 Page | 147 Test Description Test Procedure Expected Result Actual Case 8.8 Results The page will go to Fill the customer’s information Must go to the Customer Customer Home page in the Sign In form. Then click Home page. once he/she login Sign In Button See Fig 8.15 and 8.16 Before Testing Figure-8.15 After Testing Figure-8.16 COMP-1181 Page | 148 Test Description Test Procedure Expected Result Actual Case 8.9 Results The page will go to Click the Sign Out button in Must show Logout message Display page once the the navigation bar customer log out and go to Display page. See Fig 8.17 and 8.18 Before Testing Figure-8.17 After Testing Figure-8.18 COMP-1181 Page | 149 Unit Test 9 Test Case: Booking Process Designed by: Aung Soe Khine Data Source: Movie Display page, Objective: To check that Movie Detail page, Showtime page Booking Process works and Seating plan page accurately. Test Description Test Procedure Tester: Aung Soe Khine Expected Result Actual Case 9.1 Results Customers can view the Click a movie to view detail Show detail information See Fig detail information of information of selected of movie after clicking 9.1 and selected movie. movie. movie name 9.2 Before Testing Figure-9.1 After Testing Figure-9.2 COMP-1181 Page | 150 Test Description Test Procedure Expected Result Actual Case 9.2 Results Customers can choose Click “Book Ticket for this Must go to the selected See Fig the desired show date movie” button in selected movie show date and 9.3 and and showtime of movie detail page. showtime page. 9.4 selected movie. Before Testing Figure-9.3 After Testing Figure-9.4 COMP-1181 Page | 151 Test Description Test Procedure Expected Result Actual Case Results Customer can select the Click “Book Ticket for Must go to the seating See Fig desired show date and this movie” button in plan page of the movie. 9.5 and showtime to make booking selected movie detail page. 9.3 9.6 Before Testing Figure-9.5 After Testing Figure-9.6 COMP-1181 Page | 152 Test Description Test Procedure Case 9.4 Expected Actual Result Results Customers can select Select the available seats for the booking and Must show that the preferred seats in then click “Buy” button. Then click Finish “Successfully the seating plan. button to complete the booking process. See Fig 9.7 and 9.8 Booking”. Before Testing Figure-9.7 After Testing Figure-9.8 COMP-1181 Page | 153 Test Description Test Procedure Expected Result Case 9.5 Actual Results Customers cannot select Select the unavailable seats for the Must show that “There See Fig the unavailable seats in booking and then click “Buy” is no selected seats”. 9.9 and the seating plan. button. 9.10 Before Testing Figure-9.9 After Testing Figure-9.10 COMP-1181 Page | 154 Unit Test 10 Test Case: Booking Designed by: Confirmation Process Aung Soe Khine Data Source: Booking Confirmation Objective: To check that Tester: Aung Soe Khine page Booking Confirmation Process works accurately. Test Description Test Procedure Expected Result Case 10.1 Actual Results General Manager can confirm Click Confirm button in Must show “Booking See Fig the customer booking once the Booking Confirmation Confirmed” and Status 10.1 customer has successfully page must be changed from and Pending to Confirmed. 10.2 made booking. Before Testing Figure-10.1 After Testing Figure-10.2 COMP-1181 Page | 155 Test Description Test Procedure Expected Result Case 10.2 Actual Results General Manager can delete Click Delete button in the Must show that See Fig the customer booking in the Booking Confirmation page “Booking Deleted” 10.3 and Booking Confirm page. 10.4 Before Testing Figure-10.3 After Testing Figure-10.4 COMP-1181 Page | 156 Unit Test 11 Data Source: Booking Report page Test Case: Booking Report Designed by: Process Aung Soe Khine Objective: To check that Booking Tester: Aung Soe Khine Report Form works accurately. Test Description Test Procedure Expected Result Case 11.1 Actual Results Operation Staff can search the Choose BookingID that remain in Must show See Fig customer booking by ID once the box and then click Search Booking 11.1 he/she choose BookingID and button and check the booking info information by and click Search button. in Booking Search Detail table BookingID 11.2 Before Testing Figure-11.1 After Testing Figure-11.2 COMP-1181 Page | 157 Test Description Test Procedure Case 11.2 Expected Actual Result Results Operation Staff can search the Choose the Booking Date that Must show See Fig booked movie by Date once remain in the box and click Search Booking 11.3 he/she click Search by Date by Date radio button. Then click information by and radio button, choose booking Search button and check the booking Booking date. 11.4 date and click Search button info in Booking Search Detail table Before Testing Figure-11.3 After Testing Figure-11.4 COMP-1181 Page | 158 Test Description Test Procedure Expected Result Case 11.3 Actual Results Operation Staff can view all Click Show All radio button. Must show all Booking customer booking once he/she and check the booking info in information. click Show All button. 10.5 Booking Search Details. and 10.6 Before Testing Figure-11.5 After Testing Figure-11.6 COMP-1181 See Fig Page | 159 Test Description Test Procedure Expected Result Case 11.4 Actual Results Operation Staff cannot search Choose BookingID and Click Search Must alert that no See Fig customer booking by ID if by Date radio button. Then click Booking Record 11.7 he/she click Search by Date Search button and check the booking Found. and radio button. info in Booking Search Details. 11.8 Before Testing Figure-11.7 After Testing Figure-11.8 COMP-1181 Page | 160 Test Description Test Procedure Expected Result Case 11.5 Actual Results Operation Staff cannot search Choose Booking Date and Click Must alert that no See Fig customer booking by date if Search by ID radio button. Then click Booking Record 11.9 he/she click Search by ID Search button and check the booking Found. and radio button. info in Booking Search Details. 11.10 Before Testing Figure-11.9 After Testing Figure-11.10 COMP-1181 Page | 161 Test Description Test Procedure Expected Result Case 11.6 Actual Results Operation Staff cannot search Choose incorrect booking date and Must alert that customer booking by date if click Search by Date radio button. Then No Booking he/she choose wrong booking click Search button and check booking Record Found. date. details in Booking Search Details. See Fig 11.11 and 11.12 Before Testing Figure-11.11 After Testing Figure-11.12 COMP-1181 Page | 162 Test Description Test Procedure Expected Result Case 11.7 Actual Results Operation Staff can view and print Click View Detail in the Must show the print See Fig Booking Detail Report once he/she Booking Search Detail table invoice for the customer 11.13 click View Detail in the Booking and click Print button to booking Search Details table. and generate booking report. 11.14 Before Testing Figure-11.13 After Testing Figure-11.14 COMP-1181 Page | 163 Iteration for Time box 2 The interface design for admin accessed pages such as booking report and booking confirmation took much longer for the developer to implement which led further postponement for the rest activities of timebox 2. Because of the lack of experience in technical skill, some unexpected PHP error occurred in customer accessed pages such as movie display page, movie detail page and seating plan page which took three days for the developer to overcome this problem. The graphical layout of seating plan design is the major challenge for the developer and it took two days to complete it. Moreover, the project team decided to implement the customer booking and food order history page as an extended feature which did not include in first version of functional requirements analysis as it is important for the customers to check back previous booking and food order details. The schedule for test cases and functionality testing of timebox 2 were also made after the implementation of customer booking process. Although, the project plan is predefined to design the high-level prototypes in design stage, the project team decided to illustrate highlevel prototypes of booking process in timebox 2. COMP-1181 Page | 164 Chapter 8- System Development 3 Timebox 3 (6th of April to 20th of April 2020) 3. Operate Food Order Process Deliverables- Food Registration page, Brand Registration page, Food Type Registration page, Food Detail page, Food Order page, Food Order Detail page and Food Order Report page. No Duration 1. 6th April – 9th April 2. 3. 10th April – 14th April 15th April – 17th April Tasks Expected Outputs Create the databases for food Databases of food, food type, items management for both food detail, food order and food customer and admin order detail Implement food items Food registration page, food type management for both admin page, food detail page, food order and customer view page and food order detail page Make functionality testing of all Test results of all implemented implemented food items food item management and food management pages for both order pages customer and admin 4. COMP-1181 18th April – 20th April Check and fix error of all Completion of food registration implemented food items page, food type page, food detail management pages for both page, food order page and food customer and admin order detail page Page | 165 Use Case Diagram for Time Box 3 Online Movie Ticket Booking System and Food Service Manage Food Make Registration Food and Beverage Manager Buy Food Customer Operation Staff Process Reports Detailed Class Diagram for Time Box 3 FoodType -FoodTypeID : String -FoodType : Integer +AddFoodType() +UpdateFoodType() +RemoveFoodType() Brand -BrandID : String -Brand : String +AddBrand() +UpdateBrand() +DeleteBrand() * * 1 Food Order -FoodOrderID : String -CustomerID : String -BookingID : String -Date : Date -TotalAmount : Integer -Status : String +placeFoodOrder() +updateFoodOrder() 1 * Food Order Detail -FoodOrderDetailID : String -FoodOrderID : String -FoodID : String -Quantity : Integer -Amount : Integer +calcPrice() * 1 1 Food Detail -FoodDetailID : String -FoodID : String -FoodType : String -Price : Integer +addFoodDetail() +updateFoodDetail() 1 * Food -FoodID : String -FoodName : String -Price : Integer -Description : String -Image : String +displayFood() +addFood() +updateFood() +deleteFood() * 1 COMP-1181 Customer -CustomerID : String -CustomerName : String -Address : String -Email : String -Password : String -Gender : String -Phone : Integer +addCustomer() +removeCustomer() +updateCustomer() Page | 166 Database Design for Time Box 3 Figure- Food Table Figure- Food Sales Table Figure- Food Sales Detail Table Figure- Food Type Table Figure- Food Brand Table COMP-1181 Page | 167 High-Level Prototype for Time Box 3 Figure- Food Items Registration Page Figure- Brand Registration Page COMP-1181 Page | 168 Figure- Food Type Registration Page Figure- Food Items Display Page COMP-1181 Page | 169 Figure- Food Items Detail Page Figure- Shopping Cart Page COMP-1181 Page | 170 Figure- Checkout Page Figure- Food Order Report Page COMP-1181 Page | 171 Figure- Customer Inquiry Page Figure- Customer Inquiry Report Page COMP-1181 Page | 172 Figure- Food Order Detail Report Page COMP-1181 Page | 173 Testing Test Schedule Module 12: Food Registration Form Test Script Description Date Tester 12.1 FoodID are automatically add to a table 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine within a food database 12.2 Food and Beverage Manager cannot leave blank in the Food Name field. 12.3 Food and Beverage Manager cannot leave blank in the Price field. 12.4 Food and Beverage Manager cannot leave blank in the Quantity field. 12.5 Food and Beverage Manager cannot leave blank in the Images field. 12.6 Food and Beverage Manager cannot leave blank in the Description field. 12.7 Food and Beverage Manager cannot leave blank in the Review field. 12.8 Food and Beverage Manager can edit the food item once he/she click the Edit button in the food listing table. 12.9 Food and Beverage Manager can delete the food item once he/she click the Delete button in the food listing table. COMP-1181 Page | 174 Module 13: Food Order Process Test Script Description Date Tester 13.1 Customers can view the detail information 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine 15th April 2020 Aung Soe Khine of selected food item. 13.2 Customers can add the desired food item to the shopping cart. 13.3 Food and Beverage Manager cannot skip without filling in the credit card information. 13.4 Customer can remove the food item that he/she added in the Shopping Cart Detail table. 13.5 Customer can remove all the food items that he/she added by clicking Empty Cart button in the Shopping Cart Detail. 13.6 Customer can go to the food item display page by clicking Food Display button in the Shopping Cart. 13.7 Customer can successfully order the food items by entering the credit card information and clicking the Checkout button in the Shopping Cart. COMP-1181 Page | 175 Module 14: Food Order Search Form Test Script Description Date Tester 14.1 Food and Beverage Manager can search the 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine 16th April 2020 Aung Soe Khine ordered food by ID once he/she choose salesID and click Search button. 14.2 Food and Beverage Manager can search the ordered food item by Date once he/she click Search by Date radio button, choose ordered date and click Search button 14.3 Food and Beverage Manager can view all customer ordered food items once he/she click Show All button. 14.4 Food and Beverage Manager cannot search food items by ID if he/she click Search by Date radio button. 14.5 Food and Beverage Manager cannot search food items by date if he/she click Search by ID radio button. 14.6 Food and Beverage Manager cannot search food items by date if he/she choose wrong sales date. 14.7 Food and Beverage Manager cannot view and print Order Detail Report once he/she click View Detail in the Order Search Details table. 14.8 Food and Beverage Manager can view and print Order Detail Report once he/she click View Detail in the Order Search Details table. COMP-1181 Page | 176 Module 15: Customer Inquiry Form Test Script Description Date Tester 15.1 Customer can ask information about booking 17th April 2020 Aung Soe Khine 17th April 2020 Aung Soe Khine 17th April 2020 Aung Soe Khine 17th April 2020 Aung Soe Khine and food order processes by filling information and submitting it. 15.2 Customer cannot leave blank in the Full Name field. 15.3 Customer cannot leave blank in the Contact field. 15.4 Customer cannot leave blank in the Contact field. Module 16: Customer Inquiry Report Form Test Script Description Date Tester 16.1 Operation Staff can marked the customer 17th April 2020 Aung Soe Khine inquiries as solved after the customers problems are solved COMP-1181 Page | 177 Test Cases for Time Box 3 Unit Test 12 Test Case: Data entry for food items Designed by: registration Aung Soe Khine Data Source: Food Items Objective: To check that Food Items Tester: Aung Soe Khine Registration Form Registration form works accurately. Test Description Test Procedure Case 12.1 Expected Actual Result Results FoodID are FoodID will not be shown in the form. FoodID will See Fig automatically add to a Fill up all required input that remain in be shown in 12.1 table within a food the form. Then click Save button and the database. and database check the ID field in database. 12.2 Before Testing Figure- 12.1 After Testing Figure- 12.2 COMP-1181 Page | 178 Test Description Test Procedure Expected Result Case 12.2 Actual Results Food and Beverage Manager Skip the Food Name field and Must show alert See Fig cannot leave blank in the enter the remain input data in the message box that 12.3 Food Name field. form and click “Save” button food name should and be filled out. 12.4 Before Testing Figure- 12.3 After Testing Figure- 12.4 COMP-1181 Page | 179 Test Description Test Procedure Expected Result Case Actual Results 12.3 Food and Beverage Skip the Price field and enter Must show alert See Fig Manager cannot leave the remain input data in the message box that price 12.5 and blank in the Price field. form and click “Save” button should be filled out. 12.6 Before Testing Figure- 12.5 After Testing Figure- 12.6 COMP-1181 Page | 180 Test Description Test Procedure Expected Result Case Actual Results 12.4 Food and Beverage Skip the quantity field and enter Must show alert See Fig Manager cannot leave the remain input data in the message box that 12.7 blank in the Quantity field. form and click “Save” button quantity should be and filled out. 12.8 Before Testing Figure- 12.7 After Testing Figure- 12.8 COMP-1181 Page | 181 Test Description Test Procedure Expected Result Case 12.5 Actual Results Food and Beverage Skip the images field and enter Must show alert message See Fig Manager cannot leave the remain input data in the box that images should 12.9 and blank in the Images field. form and click “Save” button be filled out. 12.10 Before Testing Figure- 12.9 After Testing Figure- 12.10 COMP-1181 Page | 182 Test Description Test Procedure Expected Result Case 12.6 Actual Results Food and Beverage Skip the description field and Must show alert message See Fig Manager cannot leave enter the remain input data in box that description 12.11 blank in the Description the form and click “Save” should be filled out. and field. button 12.12 Before Testing Figure- 12.11 After Testing Figure- 12.12 COMP-1181 Page | 183 Test Description Test Procedure Expected Result Case 12.7 Actual Results Food and Beverage Skip the review field and enter Must show alert message See Fig Manager cannot leave the remain input data in the box that review should 12.13 blank in the Review field. form and click “Save” button be filled out. and 12.14 Before Testing Figure- 12.13 After Testing Figure- 12.14 COMP-1181 Page | 184 Test Description Test Procedure Expected Result Case 12.8 Actual Results Food and Beverage Manager Click the edit button in the The page should go to See Fig can edit the food item once Food listing table and then the Food Update page 12.15 he/she click the Edit button update the food item. and must show the New and Food successfully save. 12.16 in the food listing table. Before Testing Figure- 12.15 After Testing Figure- 12.16 COMP-1181 Page | 185 Test Description Test Procedure Expected Result Case 12.9 Actual Results Food and Beverage Manager Click the delete button in Must show that Food See Fig can delete the food item once the Food listing table. successfully deleted. 12.17 he/she click the Delete button and in the food listing table. 12.18 Before Testing Figure- 12.17 After Testing Figure- 12.18 COMP-1181 Page | 186 Unit Test 13 Test Case: Food Order Designed by: Process Aung Soe Khine Data Source: Food Items Display Objective: To check that Tester: Aung Soe Khine page, Detail page, Shopping Cart Food Order Process works page and Checkout page accurately. Test Description Test Procedure Expected Result Actual Case 13.1 Results Customers can view the Click a food item to view Show detail information See Fig detail information of detail information of of food item after clicking 13.1 and selected food item. selected food item name. food item name 13.2 Before Testing Figure- 13.1 After Testing Figure- 13.2 COMP-1181 Page | 187 Test Description Test Procedure Expected Result Actual Case 13.2 Results Customers can add the Click Add button in Selected food item must be See Fig desired food item to the selected food item successfully added to the shopping 13.3 and shopping cart. detail page. cart in shopping cart detail page. 13.4 Before Testing Figure- 13.3 After Testing Figure- 13.4 COMP-1181 Page | 188 Test Description Test Procedure Expected Result Case 13.3 Actual Results Food and Beverage Manager Skip the credit card Must show alert message See Fig cannot skip without filling in information field and click box that credit card 13.5 and the credit card information. “Save” button information should be 13.6 filled out. Before Testing Figure- 13.5 After Testing Figure- 13.6 COMP-1181 Page | 189 Test Description Test Procedure Expected Result Case 13.4 Actual Results Customer can remove the food Click the Remove button Must not show the food See Fig item that he/she added in the in the Shopping Cart item information in the 13.7 and Shopping Cart Detail table. Detail table. Shopping Cart Detail. 13.8 Before Testing Figure- 13.7 After Testing Figure- 13.8 COMP-1181 Page | 190 Test Description Test Procedure Expected Result Case 13.5 Actual Results Customer can remove all the food Click the Empty Cart Must show that the See Fig items that he/she added by clicking button in the Shopping shopping cart is 13.9 and Empty Cart button in the Shopping Cart Detail table. empty 13.10 Cart Detail. Before Testing Figure- 13.9 After Testing Figure- 13.10 COMP-1181 Page | 191 Test Description Test Procedure Expected Result Case 13.6 Actual Results Customer can go to the food item Click the Food Display Must go to the food See Fig display page by clicking Food button in shopping cart item display page. 13.11 Display button in the Shopping Cart. detail. and 13.12 Before Testing Figure- 13.11 After Testing Figure- 13.12 COMP-1181 Page | 192 Test Description Test Procedure Expected Result Case 13.7 Actual Results Customer can successfully order Fill the credit card information Must show See Fig the food items by entering the in the Checkout info. Then Checkout process 13.13 credit card information and click Checkout button in the complete and go and clicking the Checkout button in the shopping cart. to the sales 13.14 Shopping Cart. invoice page. Before Testing Figure- 13.13 After Testing Figure- 13.14 COMP-1181 Page | 193 Unit Test 14 Data Source: Food Order Search Form Test Case: Food Order Designed by: Process Aung Soe Khine Objective: To check that Tester: Aung Soe Khine Food Order Search form works accurately. Test Description Test Procedure Expected Result Case Actual Results 14.1 Food and Beverage Manager Choose SalesID that Must show Food See Fig can search the ordered food by remain in the box and then Order information by 14.1 ID once he/she choose salesID click Search button and SalesID and and click Search button. check the sales info in 14.2 Order Search Detail table Before Testing Figure- 14.1 After Testing Figure- 14.2 COMP-1181 Page | 194 Test Description Test Procedure Case 14.2 Expected Actual Result Results Food and Beverage Manager can Choose the OrderDate that remain Must show See Fig search the ordered food item by in the box and click Search by Order 14.3 Date once he/she click Search by Date radio button. Then click information by and Date radio button, choose ordered Search button and check the order Order date. 14.4 date and click Search button info in Order Search Detail table Before Testing Figure- 14.3 After Testing Figure- 14.4 COMP-1181 Page | 195 Test Description Test Procedure Expected Result Case 14.3 Actual Results Food and Beverage Manager can Click Show All radio button. Must show all Order See Fig view all customer ordered food and check the sale info in information. 14.5 items once he/she click Show All Order Search Details. and button. 14.6 Before Testing Figure- 14.5 After Testing Figure- 14.6 COMP-1181 Page | 196 Test Description Test Procedure Expected Result Case 14.4 Actual Results Food and Beverage Manager Choose SalesID and Click Search Must alert that no See Fig cannot search food items by by Date radio button. Then click Ordered Record 14.7 ID if he/she click Search by Search button and check the sales Found. and Date radio button. info in Sales Search Details. 14.8 Before Testing Figure- 14.7 After Testing Figure- 14.8 COMP-1181 Page | 197 Test Description Test Procedure Expected Result Case 14.5 Actual Results Food and Beverage Manager Choose Sales Date and Click Must alert that no See Fig cannot search food items by Search by ID radio button. Then Ordered Record 14.9 date if he/she click Search click Search button and check the Found. and by ID radio button. sales info in Sales Search Details. 14.10 Before Testing Figure- 14.9 After Testing Figure- 14.10 COMP-1181 Page | 198 Test Description Test Procedure Expected Result Case 14.6 Actual Results Food and Beverage Manager Choose incorrect sales date and click Must alert that no cannot search food items by Search by Date radio button. Then Ordered Record date if he/she choose wrong click Search button and check ordered Found. sales date. details in Order Search Details. See Fig 14.11 and 14.12 Before Testing Figure- 14.11 After Testing Figure- 14.12 COMP-1181 Page | 199 Test Description Test Procedure Expected Result Case 14.7 Actual Results Food and Beverage Manager cannot Click View Detail in the Must show the print See Fig view and print Order Detail Report Order Search Detail table invoice for the ordered 14.13 once he/she click View Detail in the and click Print button to food items Order Search Details table. generate sales report. and 14.14 Before Testing Figure- 14.13 After Testing Figure- 14.14 COMP-1181 Page | 200 Test Description Test Procedure Expected Result Case 14.8 Actual Results Food and Beverage Manager can Click View Detail in the Must show the print See Fig view and print Order Detail Report Order Search Detail table invoice for the ordered 14.15 once he/she click View Detail in the and click Print button to food items Order Search Details table. generate sales report. and 14.16 Before Testing Figure- 14.15 After Testing Figure- 14.16 COMP-1181 Page | 201 Unit Test 15 Data Source: Customer Inquiry Form Test Case: Data entry for customer Designed by: inquiry Aung Soe Khine Objective: To check that Customer Tester: Aung Soe Khine Inquiry form works accurately. Test Description Test Procedure Expected Actual Result Results Customer can ask information InquiryID will not be shown in the Must show See Fig about booking and food order form. Fill up all required input that that 15.1 Case 15.1 processes by filling information remain in the form. Then click “Successfully and submitting it. Submit button and check the ID field Submitted” and 15.2 in database. Before Testing Figure- 15.1 After Testing Figure- 15.2 COMP-1181 Page | 202 Test Description Test Procedure Expected Result Case 15.2 Actual Results Customer cannot leave Skip the full name field and Must show alert message See Fig blank in the Full Name enter the remain input data in the box that Full Name should 15.3 and field. form and click “Submit” button. be filled out. 15.4 Before Testing Figure- 15.3 After Testing Figure- 15.4 COMP-1181 Page | 203 Test Description Test Procedure Expected Result Case 15.3 Actual Results Customer cannot leave Skip the contact field and enter Must show alert message See Fig blank in the Contact field. the remain input data in the form box that Contact should be 15.5 and and click “Submit” button. filled out. 15.6 Before Testing Figure- 15.5 After Testing Figure- 15.6 COMP-1181 Page | 204 Test Description Test Procedure Expected Result Case 15.4 Actual Results Customer cannot leave Skip the contact field and enter Must show alert message See Fig blank in the Contact field. the remain input data in the form box that Contact should be 15.7 and and click “Submit” button. filled out. 15.8 Before Testing Figure- 15.7 After Testing Figure- 15.8 COMP-1181 Page | 205 Unit Test 16 Test Case: Data entry for Designed by: customer inquiry report Aung Soe Khine Data Source: Customer Inquiry Objective: To check that Tester: Aung Soe Khine Report Form Customer Inquiry Report form works accurately. Test Description Test Procedure Expected Result Actual Case 16.1 Results Operation Staff can marked Click Mark as Solved in Must show that “Success” See Fig the customer inquiries as customer inquiries. message and show “Solved” 16.1 solved after the customers in customer inquiry report. and problems are solved 16.2 Before Testing Figure- 16.1 After Testing Figure- 16.2 COMP-1181 Page | 206 Iteration for Time Box 3 During the implementation of proposed system, some PHP errors such as parse error, fatal error and warning error were encountered in customer accessed pages such as food display pages, food detail page, shopping cart page and checkout page which took two days for the developer to fix these errors. Besides, the first version of the detailed class diagram of the proposed website did not include customer inquiry and customer inquiry report. However, it is necessarily required for the customers to ask about their problems and therefore, the developer created tables for customer inquiry in the system database and customer inquiry page and customer inquiry report page were implemented. Moreover, the high-level prototypes in project plan were intended to be created in design stage. However, the project team decided to represent the high-level prototypes of food order process in time box 3 after the design stage. In addition, the high-level prototypes for some extended functions such as customer inquiry and customer inquiry report were also designed in time box 3. COMP-1181 Page | 207 Chapter 9- Conclusion Evaluation of the website Evaluation of website 1 and Proposed New System Website: http://localhost:70/Emerald%20Cinplex/ Figure- 9.1 COMP-1181 Page | 208 1. Strive for Consistency (Shneiderman Guideline) Font size, font style and color of web elements in navigation bar and the logo have consistent look when the user clicks another page. Figure-9.2 Figure-9.3 COMP-1181 Page | 209 2. Offer Informative Feedback (Shneiderman’s Guideline) Provide appropriate feedback that user has successfully signed up Figure-9.4 3. Error Handling (Shneiderman’s Guideline) The system clearly shows the error and how to solve it. Figure-9.5 COMP-1181 Page | 210 4. Support Internal locus of control (Shneiderman’s Guideline) The system has a visibly marked “Checkout” button and “Cancel” button which allows the user to continue the checkout process or exit from it. Figure-9.6 5. Match between system and real world (Nielsen’s Guideline) The website uses user-friendly icons, action button, language and terms in order to match user’s experience with the real-world metaphors. Figure-9.7 COMP-1181 Page | 211 6. Recognition rather than recall (Nielsen’s Guideline) The website provides a list of search history for the users to minimize the user’s memory load. Figure-9.8 7. Aesthetic and minimalist design (Nielsen’s Guideline) The website is aesthetically designed by using enough whitespace, relevant text and icons to provide better readability and comprehension. Figure-9.9 COMP-1181 Page | 212 8. Help and Documentation (Nielsen’s Guideline) The website provides easily discoverable help documentation for the users to which help user in making booking and food order process. Figure-9.10 COMP-1181 Page | 213 Evaluation against Aims and Objectives Firstly, the main aim of the project is not only to provide a quick and smooth online booking experience to loyal customers but also to drive new customers to the business. Due to the rapid increment of internet users, Emerald Cineplex intended to change manual record keeping system to computerized system with familiar layout design and simple functions for the customers to easily access the website, view currently showing movies, make booking, order food items and make payment. To make the aim come true, the project team firstly made industrial analysis of Emerald Cineplex to identify opportunities and threats for the project plan. As part of the objectives, it was to review and justify the appropriate methodology, techniques, technology and development tools, databases and web servers for the proposed project and this objective was successfully achieved. To implement the engaging and unique user interface design, the user interface guideline and standard were reviewed and selected. Based on the selected user interface guidelines, three existing similar websites were compared and evaluated against usability and UX criteria to identify some different strengths and weaknesses of the websites and enhance them in proposed project. As part of selected DSDM methodology, high-level requirements for proposed project have been identified and these requirements have been managed with MoSCow prioritization. Another objective was to create estimated timebox plan for implementation process to control the amount of time on the proposed project to focus on most important deliverables. The highlevel prototype and detailed class diagrams were also well developed. The development process was also completed with less difficulty and the final product has also been delivered on time without delays. On completion of the project, the aims and all the objectives planned in the gantt chart are successfully met. COMP-1181 Page | 214 What have been done According to the objectives in project plan, the user’s requirements were gathered by using questionnaires. In implementation process, the web based databases were successfully created with the help of detailed class diagram. Based on the estimated timebox plan, the web pages’ implementation stage and testing stage were successfully accomplished on time. In website development, the web pages of schedule management, movie management, booking process and food order operation have been implemented by using PHP language and Xammp web server. Because of the different types of internet users, the userfriendly front-end design was developed alongside the selected user interface design guidelines. The front end of the proposed website designed with subtle color to get a clean outlook without unnecessary web elements and advertisements. Problem Encountered Throughout the project documentation and implementation stage, common challenges and problems were occurred. First of all, in documentation stage, the timeboxing technique was an unfamiliar technique for project team and the DSDM technique had to be researched using the internet. Implementation stage is the main challenge of the project. Due to the lack of experience in implementing website, the project took much time in developing important transactions such as movie schedule management process and booking process. As some academic research articles and books are not freely available, it took much time to search the information about methodologies, database and language on internet which cause delays on further objectives. The users’ feedback of survey form also took longer than necessary which wasted a lot time in gathering users’ requirements. Lesson Learnt Every objectives of the project have lessons from which the project team can learn and compile. In this project, some project activities are unfamiliar for the project team that need to be learnt. The research stage of online movie ticket booking system is such an unfamiliar process which is necessary to learn during the development of the project. Because of the short time constraint of the project, the project team have learnt how to plan the important tasks of the project and save time efficiently. Moreover, the project team have learnt how to get idea for user interface design and functionalities by collecting target users’ feedback of questionnaires and estimate cost for software and equipment which were required for the project. COMP-1181 Page | 215 Evaluation against Justification Made Language Selected Languages For the implementation of the online movie ticket booking system, lots of consideration for programming language have been made. Although there are many programming languages for dynamic website development, PHP language was justified to apply for this project because of its simplicity and easy integration. As it is one of the open source language, the project team could access commands, functions and codes without paying any expenses. Not only it is cost effective but also it is compatible with any kind of server and so thus the project team can easily integrate with selected MySQL server. Furthermore, it is also a flexible language which allow the developers to change the existing codes throughout the implementation of the project. It is such an appropriate language which can be learnt and rewritten easily. Problems Encountered Although PHP language is not an unfamiliar language for the developer, some extended function in this project is one of the major challenge which make the developer more stressful. Because of the insufficient technical skills, some parse errors (syntax errors) and notice errors occurred throughout system development. Undefined variable error and fatal error mostly occurred when the project team tried to write and run PHP codes. Lack of practice and knowledge in solving PHP code error make the developer more difficult to complete the implementation stage. Lessons Learnt Project team didn’t have much experience of the implementation of the online movie ticket booking system and essential PHP codes are also learnt from internet and PHP advanced programming books. Some unknown information about PHP language were also researched and learnt using internet. With the help of PHP programming books and internet resources, the project team have learnt how to use the command functions and solve the coding error by making changes to the written codes within short period of time. COMP-1181 Page | 216 Database Selected Database Although PHP is compatible with many kinds of database such as MSSQL and MySQL, the project team need to consider more appropriate functions. After comparing two databases, MSSQL and MySQL, some good points and bad points of these were found out. As the project team limited upon budget for this development, MySQL was selected to be applied which is the most cost-effective options to integrate with PHP language. Its high performance with extendable disk space and simple management features was helpful for the developer to complete the database implementation on time. Because of its ease of use and flexibility, MySQL was the most suitable choice to interact with SQL statement and expand the website’s function. Problems Encountered Even though creating MySQL database for web pages’ development is not the first time for the project team, some difficulties were encountered throughout database implementation stage. As MySQL is an open source software, there are some limitation in storing data and performance diagnostics. To solve this problem, the developer had to carefully design the SQL query. Due to the lack of knowledge in debugging process, it took some time for the developer to debug stored procedures to continue the web page development process. Lessons Learnt The project team especially learnt how to design the database which were structured from the detailed class diagram and the connection between MySQL and PHP. Throughout building database by using MySQL, some essential features such as backup and recovery feature, security feature, data migration feature, etc. were also learnt. Furthermore, the project team acquired knowledge about data analysis techniques and relational model key concepts, for instance, relations and tables, attribute, primary key and foreign key. The strength and weaknesses of MySQL were clearly understood by making academic research. COMP-1181 Page | 217 Methodology Selected Methodology The proposed project could be developed with any kind of methodologies and frameworks such as RAD (Rapid Application Development), SSADM (Structured System Analysis and Design Method), DSDM (Dynamic System Development Method) and so on. However, the project team had to consider more about the timescales given for the proposed project and the beneficial techniques to complete each objectives in a given time. After making consideration of two methodologies such as SSADM and DSDM methodologies, DSDM was chosen to be used which is such a flexible and configurable method for this project. With the help of effective techniques such as prototyping, time boxing and MOSCOW techniques, the project team could successfully develop the most important tasks within fixed time and cost. Problems Encountered Throughout the requirement gathering stage, the developer could not make accurate and quick decision because of the inconsistent customer feedbacks. Defining functional requirement, constructing diagrams and prioritizing requirements for the proposed system is the major challenge for the project team which demand more time as they don’t have much experience in using DSDM techniques. Furthermore, lack of practice in planning time boxing for the implementation stage consume extra time and cost of delivering final product more than necessary. Lessons Learnt Some strengths and weaknesses of DSDM methodology are clearly understood and the importance of iterative approach were learnt. During the website development, the project team have experienced DSDM eight principles and techniques. With the help of Agile method, the project team have gain knowledge how to identify and organize the functionalities of a system using use case diagram and detailed class diagram. Moreover, the project team have learnt to effectively plan and manage the given time to spend on each implementation tasks with time boxing technique. COMP-1181 Page | 218 Evaluation against Project Plan Whether the project is on track with the plan Throughout the development of online movie ticket booking system, the project team had to deal with a lot of difficulties and possess decision making for time and budget. Although, the project team faced with some unexpected problems in each stage of the project, the project is on track with initial project plan. However, several changes were made during the mid-development of the project. The testing process and review process for implemented web pages in initial project plan were mainly changed in estimated time boxing plan. In analysis and design stage, the use case diagram and detailed class diagram were changed for a second time to get accurate diagrams and database design. What was complete on time The main aim of this project is to develop the complete online movie ticket system without any error on time. Research about e-commerce business processes and the analysis of development methodologies, techniques and tools were successfully accomplished on time. The comparison of similar existing websites and the analysis of functional requirements were also completed on time. Creating use case diagram, detailed class diagram and high-level prototype are also vital in design progress and it was also completed on time. The essential functional requirement such as booking process, movie schedule and food items management, report process and registration process were implemented on time. A responsive and simple user interface design was also created in the given time. What was not complete on time and why Although some objectives in project plan were successfully accomplished on time, some processes were not able to meet with the project plan. In order to complete the project in the given time, the project didn’t have much time to make good-looking front-end design. Due to the time constraint, “should have” and “could have” requirements were left to implement in the website. Lessons Learnt The project team especially gain knowledge and experience from clarifying the scope of the project and planning the tasks with a fixed schedule. They have also learnt how to skillfully manage the tasks, cost and schedule for the project as well as required resources. COMP-1181 Page | 219 Future Amendments Program According to the MOSCOW prioritization, the most important functional requirements have been developed, however, some less important functional requirements are left to carry out in this project. This is because the project team doesn’t have much time and experience in implementing website. These functional requirements will be implemented in future projects. Different kinds of languages will also be developed in the update version. Moreover, the system must provide the users to make register with social media accounts such as Facebook, Google, etc. in future development. The update version will provide more payment options to creates a more secure and convenient experience for the customers. Advance booking search feature which can filter out the results will also be implemented in the near future. Design For website design, the more attractive and good-looking user interface design will be created in the future projects. In order to grab the users’ attention, the outstanding and eye-catching color for the website’s navigation, homepage’s background and navigation elements will be used in the near future. Besides, the better font style and layout design which can help the users to recognize the information quickly. Graphical design elements such as line, shape, space and size also plays a vital role in user interface design and will be implemented in the future. To have a unique front-end design without any usability, accessibility and visibility issues, more user interface design principles are going to be followed in future development. Furthermore, the project team have future aims to add more creative display page design which seems more attractive for the users. Reports Having some difficulties and experiences throughout the documentation process, the project team want to add more information in project report. In order to capture and explore the experiences of the user interface design process, a storyboard is needed to create in the future projects because it can help the developer to clearly define the structure of the system before the website implementation. Diagrams play a very significant role in project documentation process and more diagrams such as sequence diagrams, deployment diagram should be developed as a future amendment. Besides, a more detailed testing for the website will be provided in the near future. COMP-1181 Page | 220 References Andrew, P., 2016. Anything. [Online] Available at: https://seymourpapert.wordpress.com/2016/08/09/eight-golden-rules-rule-7support-internal-locus-of-control/ [Accessed 28 March 2020]. Anon., 2010. My-Peer toolkit. [Online] Available at: http://mypeer.org.au/monitoring-evaluation/types-of-evaluation/#top [Accessed 10 July 2019]. Anon., 2017. infotec. [Online] Available at: https://www.infotectraining.com/blog/what-is-microsoft-sql-server-and-what-is-itused-for [Accessed 12 August 2019]. Anon., n.d. Armani Exchange. [Online] Available at: https://www.armaniexchange.com/system/selfservice.controller?CONFIGURATION=1951&PAR TITION_ID=1&secureFlag=false&TIMEZONE_OFFSET=&CMD=BROWSE_TOPIC&TOPIC_ID =149680&USERTYPE=1 [Accessed 28 March 2020]. Anon., n.d. Cathay Cineplexes. [Online] Available at: www.cathaycineplexes.com.sg [Accessed 10 January 2020]. Anon., n.d. Golden Village. [Online] Available at: www.gv.com.sg [Accessed 15 January 2020]. Anon., n.d. H&M. [Online] Available at: https://www2.hm.com/en_us/index.html [Accessed 28 March 2020]. Anon., n.d. Muvi Cinemas. [Online] Available at: https://www.muvicinemas.com/en [Accessed 15 January 2020]. Anon., n.d. New Balance. [Online] Available at: https://www.newbalance.com/men-2/ [Accessed 29 March 2020]. Anon., n.d. W3 Training School. [Online] Available at: https://www.w3trainingschool.com/php-advantages-disadvantages [Accessed 8 August 2019]. COMP-1181 Page | 221 Anon., n.d. World Health Organization. [Online] Available at: https://www.who.int/ [Accessed 28 March 2020]. Athow, D., 2019. Techradar.pro. [Online] Available at: https://www.techradar.com/news/best-small-business-servers [Accessed 25 July 2019]. Athow, D., 2019. Techradar.pro. [Online] Available at: https://www.techradar.com/news/best-business-desktop-pcs [Accessed 25 July 2019]. Babar, S., 2018. Quick Start. [Online] Available at: https://www.quickstart.com/blog/microsoft-sql-server-database-advantages-andbest-practices/ [Accessed 13 August 2019]. Babich, N., 2016. UX Planet. [Online] Available at: https://uxplanet.org/5-essential-ux-rules-for-dialog-design-4de258c22116 [Accessed 28 March 2020]. Cohen, B., 2017. bizfluent. [Online] Available at: https://bizfluent.com/list-6781448-advantages-disadvantages-ssadm.html [Accessed 31 July 2019]. D.J. Tudor, 2010. The DSDM Atern Student Workbook: A Guide to the Definitive Agile Framework. 2nd Revised edition ed. s.l.:Galatea Training Services Ltd. Daniel, H., 2011. Benefits Of. [Online] Available at: http://benefitof.net/benefits-of-ssadm/ [Accessed 31 July 2019]. Ed Downs, Peter Clare, Ian Coe, 1992. Structured Systems Analysis And Design Method. Subsequent edition ed. s.l.:Prentice Hall. Edgar, M., 2017. Elements of a successful website (Paperback). Littleton, Colorado: Matthew Edgar. Ganesan, P., 2018. WPBlogX. [Online] Available at: https://www.wpblogx.com/wamp-vs-xampp/ [Accessed 8 August 2019]. Kumar, V., 2018. UX Collective. [Online] Available at: https://uxdesign.cc/creating-error-messages-best-practice-in-ux-designcda3be0f5e16 [Accessed 28 March 2020]. Lacey, B., n.d. laceytech solutions. [Online] Available at: https://laceytechsolutions.co.uk/blog/importance-of-consistency-in-web-design/ [Accessed 7 January 2020]. COMP-1181 Page | 222 Lazarus, J. M., 2019. Lambdezine. [Online] Available at: http://www.lambdezine.com/article_detail_3.php [Accessed 28 March 2020]. Limited, C. (. K., 2003. Trip.com. [Online] Available at: https://www.trip.com/pages/about-us/ [Accessed 28 March 2020]. Liyanage, E., 2016. A Medium Corporation. [Online] Available at: https://medium.com/@erangatl/10-usability-heuristics-explained-c7a363e671a7 [Accessed 29 July 2019]. Martindale, J., 2019. Digital Trends. [Online] Available at: https://www.digitaltrends.com/computing/best-ethernet-cables/ [Accessed 25 July 2019]. Moore, L., 2018. SearchOracle. [Online] Available at: https://searchoracle.techtarget.com/definition/MySQL [Accessed 9 August 2019]. NetGear, 2014. Amazon. [Online] Available at: https://www.amazon.com/NETGEAR-Ethernet-Unmanaged-LifetimeProtection/dp/B00MPVR50A/?tag=gearsearcher-20 [Accessed 25 July 2019]. Pande, J., 2018. UX Gorilla. [Online] Available at: https://uxgorilla.com/nielsens-heuristics/ [Accessed 29 July 2019]. Santos, A., 2018. envatotuts+. [Online] Available at: https://webdesign.tutsplus.com/articles/8-golden-rules-for-better-interface-design-cms-30886 [Accessed 26 July 2019]. COMP-1181 Page | 223 Appendix-A Undergraduate Final Year Project Proposal Research and Development of an Online Movie Ticket Booking System and Food Order Service Aung Soe Khine B.Sc (Hons) Business Information Technology COMP- 1181 Information Systems and Multimedia 1. Overview The project will be based on the online movie ticket booking system which will be developed with a view to improve satisfactory service to the customer. Today many organizations are looking for the ways to develop their social networking sites due to the rapid growth of technology and people who want to buy products online. In this age of technology, many organizations have switched over from traditional method of reserving seats to electronic method of reserving seats. As there are many competitors who are undergoing significant changes in the entertainment industries, Emerald Organization Co. Ltd also want to change their traditional paper based system into database driven website. Most customers would like to have independence to find out the movie showtimes, cinema halls and movie title. All the functions from this proposed system are computerized system. Customers have to register first to create their personal account if they don’t have their own account. Then, they can log in to their account and view all currently running movies and available food items in the home page. They can also view the details of movie released and show times. Then they can book their tickets for any specific date and they can purchase the ticket online with their credit cards and debit cards. If customers finished all steps, the booking process will complete. COMP-1181 Page | 224 The idea of the project is to make an easy and fast interaction between the customers and staffs. Furthermore, it will also reduce overtime cost workloads for the staff members, enable them to learn more about customer needs, increase efficiency and optimize customer service. The new computerized system will enable the customers to book the movie tickets 24 hours a day from anywhere and it will be a good booking service for the users who want to search, choose and book their tickets online in the comfort of their home without going to the cinema. Moreover, the system will enable the customers to view the images and information of snacks and drinks and buy food items online with their credit cards. Customer must provide their credit cards information before checking out. Payment will also be easier and faster with this new booking system. Customers can order the food items as much as they want from this proposed system and there is no limitation for food order process. The system will only allow the customers who have their own account to make booking and buy food items. In order to have a successful e-commerce platform for Emerald Cineplex, there will be some back-end processes to provide the front-end functionalities which will be handled by the company’s internal staffs. The internal staffs also must need to register first to obtain their own account and then they can log in with correct username and password to operate varieties of backend processes. The website will enable the company’ internal staff to record the information of movies, food items, theatres, showtimes, show dates, etc. to upload in website front-end from any location and anytime. The internal staffs can also check and evaluate the customer acquisition cost, the best-selling food items, the volume of sales and company revenue by viewing and generating the daily sales report for booking and food order. There will be a lot of researches for the implementation and development of this project. For creating of the high fidelity prototype, Use Case Diagram and Detail class diagram, Visual Studio 2003 is going to be used and Dynamic System Development Method will be used for analyzing the proposed system. In order to meet the users’ requirement, a simple, well designed and usable website is going to be created without bugs and issues. 2. Aims The main aim of this project to develop a fastest growing e-commerce website for “Emerald Cineplex” that allow the customers to view latest movies information, make booking, check seats availability and make payment. Emerald Cineplex also aimed to provide food order service which offers high usability to the customers to buy food items and book movie ticket at the same time. COMP-1181 Page | 225 3. Key Phrases PMP Project Management Professional Exam Study Guide, Cathay Cineplexes, Online scheduling and appointment platform guide, DSDM Atern, System Analysis and Design, Use Case Driven Object Modelling with UML, Hypertext Preprocessor (PHP), MySQL. 4. Objectives 1. To introduce the background of the company and to clarify the scope of the project that is essential to achieve the project’s objectives Activities: Research all relevant business processes of the existing cinema and their services on the internet. Define the key features and functions of online booking system and food service that would meet users’ requirements. Deliverables: Section for report Max 2000 words 2. To review the development methodologies, techniques, technology and development tools, databases and web servers. Activities: Research methodologies, development tools and databases on internet and take reference from them. Read literature on DSDM Atern Student Workbook by D.J. Tudor. Select the appropriate methodology for the implementation of proposed system. Examine DSDM techniques and development tools for database objectives. Review, compare and justify database and web servers for proposed website. Deliverables: Section for report Max 3000 words COMP-1181 Page | 226 3. To do a research on existing online movie ticket booking systems Activities: Analyze and choose guidelines and standards of user interface design for proposed project. Compare and evaluate three existing websites such as Cathay Cineplex, Golden Village Cinema and Muvi Cinemas using selected interface design guidelines. Deliverables: Section for report. Max 1000 words 4. To analyze the online booking system by gathering requirement Activities: Identify target users by using a conductive survey to understand the very important needs of the users. Clarify system high-level requirements that are directly accessed by the users. Examine system non-functional requirement and use MoSCoW prioritization technique to manage high-level requirement. Design use case diagram of the proposed system and plan time boxing to make the processes more productive. Deliverables: Section for report Max 2000 words 5. To develop high level prototype model for the website and to design the detailed class diagram that is used to describe the structure of online movie ticket booking system. Activities: Create high level prototype of the website as part of DSDM methodology before the final implementation of the project. Design the detailed class diagram based on the use case diagram. Deliverables: Chapter on Design and Architecture COMP-1181 Page | 227 6. To design and develop database tables and to implement the proposed functionalities Activities: Create system database based on the detailed class diagram by using an open-source database management system of MySQL. Implement web pages by using PHP which work well with MySQL. Check and fix the coding error in PHP. Deliverables: Chapter on System Design and Implementation 7. To test the functionalities of the proposed website for potential bugs. Activities: Create test schedule, test plan and test script for the formal testing of implemented website. Make usability testing and functional testing of the implemented system to avoid running into problems and make changes to the system if necessary. Deliverables: Section for report Max 2000 words 8. To critically evaluate the implemented website from the business point of view and discuss future development Activities: Evaluate the final product by using selected user interface design guidelines and standards. Make judgements about project strengths and weaknesses that is helpful in making decision of future plan and improvement. Discuss possible risks and impacts of the proposed website. Deliberate on how the problems and difficulties were overcome to complete the implementation of the website and project report. Deliverables: Section for report Max 2000 words COMP-1181 Page | 228 5. Social, Legal, Ethical and Professional Issues Legal Issues In developing an efficient and useful website, the developers must know and respect the copyright regulations and trademark rules. To use the relevant images for the website, the developer should cite their sources. Using copyright material without permission can lead to enormous legal issues. Moreover, a Terms of Use agreement should be included for the users to prevent copyright issues. All the information and material which will be used for the development of the proposed system are going to be cited. Ethical Issues The web developer must also have ethical responsibility of informing the users that their information will be collected on the website. Furthermore, the developer must be honest with the customers and deliver a good service in order to position the company as a trusted one. The developers shouldn’t ignore the bugs in website and should make the website better by fixing bugs and problems. In this project, personal and finance information which are collected from the customers won’t be share unethically. Social Issues Culture is a strong part of the society that the project team should not ignore in website development. People from different cultures have different preferences on website interactivity, navigation, layout, menu, etc. Some users from different cultures are not familiar with the terms of text and translation, image used, chosen layouts and selected typography. To avoid this possible issue, icons, figures, colors, texts and colors should be described as cultural symbols to make users focus on important features of the website. Moreover, the system developer must not offer a poor website experience to the non-experienced users. The developer should also provide simple and familiar e-commerce functionalities for the users and if not, the customer will feel dissatisfied and make more error. COMP-1181 Page | 229 Professional Issues For professional issues, the company should not disregard to provide well-planned training courses to reduce the staff’s fear of using a new system or otherwise the business process will be unable to support the level of growth. The developer also should not make collaborative coding in the cloud as it can lead to privacy issues. Furthermore, the booking process will be slowed down, if the operational staff is lack of professional responsibilities in generating daily reports. 6. Gant Chart COMP-1181 Page | 230 7. Required resources Firstly, a computer or laptop is needed for developing proposed system. To research the similar existing systems for analysis, the internet and browser is necessary for the developer. Books which are related to the web development and project management are required for analyzing stage. For the report writing of the project, Microsoft Word 2016 is needed. Other software such as Microsoft Office Visio and Microsoft Office Project are required for drawing diagrams and Gant Chart. Xampp Control Panel and Sublime Text 2 are needed for implementing the website. 8. Critical Success Factor The success of this proposed project depends primarily on project deliverables. All the project deliverables should be completed before the deadline. Also, there should be a clear project plan (Gantt Chart) to identify essential tasks and determine the resources needed. A smart project plan provides to know which direction the project going. Moreover, the project resources should be easily accessible. The project team need to rely on books, articles and journals to figure out what resources are required to complete the proposed project. During the implementation stage, the project team should carefully build the project deliverables by using project resources and tools. COMP-1181 Page | 231 9. Initial references 1. Edgar, Matthew. (2017), “Elements of a successful website (Paperback)”, Matthew Edgar. 2. Duckett, Jon. (2011), “HTML and CSS: Design and Build Websites (Paperback)”, John Wiley & Sons, Inc. 3. Tudor, D.J. (2010), “The DSDM Atern Student Workbook: A Guide to the Definitive Agile Framework (2nd Revised Edition)”, Galatea Training Services Ltd. 4. Downs, Ed. Clare, Peter. & Coe, Ian. (1992), “Structured Systems Analysis and Design Method” (Subsequent Edition), Prentice Hall. 5. Rosenberg, Doug. and Scott, Kendall. (2007), “Use Case Driven Object Modelling with UML”, Addison-Wesley Professional. 6. Krug, Steve. (2005), “Don’t Make Me Think: A Common Sense Approach to Web Usability” (2nd Edition), New Riders. 7. Heldman, Kim. (2009), “PMP Project Management Professional Exam Study Guide” (Fifth Edition), Wiley Publishing, Inc. 8. Debbie Stone, Caroline Jarrett, Mark Wood Roffe and Shailey Minocha (2005), “User Interface Design and Evaluation (Interactive Technology)” (Kindle Edition), Morgan Kaufmann. 9. Dennis Lock (2013), “Project Management” (Tenth Edition), Gower Publishing Limited. 10. Jennifer Stapleton (2003), “DSDM: Business Focused Development” (Second Edition), Pearson Education. 11. Johny Morris (2012), “Practical Data Migration” (Second Edition), BCS, The Chartered Institute for IT. 12. Kevin MacG. Adams (2015), “Non-functional Requirements in System Analysis and Design” (2015 Edition), Springer. COMP-1181 Page | 232 Appendix B Requirement Catalogue 1.1 Functional Requirement No Name Description Acceptance Criteria 1. Make Registration It is the formal process of storing Customer customer information in the database in order to make booking and other services 2. Manage Movie It is used to record movie General Manager information required for movie ticket booking system. 3. Control Movie Schedule It is the formal process of General Manager managing all the records related with arranging showtime for to set up movies in order of priority 4. Process Reports It is used to generate and review Operation Staff the customer booking report and customer food order report. 5. Make Booking It is used for making online Customer booking of movie ticket by the customers. 6. Buy Food Items This functional requirement is Customer used for purchasing the desired food items by the customers. 7. Manage Theatre It is used to register and update General Manager theatre information in order to define a number of seats for the theatre. 8. Manage Food Items This function is used for uploading all the information of COMP-1181 Food and Beverage Manager Page | 233 the food items which is necessary for the system to show on the display page. 1.2 Non Functional Requirement No Name Description 1. Usability It is the ability of the system which is easy Acceptance Criteria - for the user to interact with the website. 2. Performance It is the ability of the system which - provides better efficiency in loading time. 3. Availability It is the available time of the website - provided by the hosting system without postpone. 4. Scalability It is the obtainable space of the website to - record the growing amount of required data. 5. Compatibility It is a part of website ability which can - work with third party application, different operating systems and platforms. 6. Security It is one of the necessary requirement for - the system to defend the threat like hacking and loss of confidential data of customers 7. Maintenance It is the ability of the website in which the - functionalities can be easily enhanced. COMP-1181 Page | 234 Appendix C Use Case Descriptions Use Case Name 1: Make Registration Primary actor Customer Precondition Customer firstly need to browse the website The Use Case starts when customers click the sign up form 1. Customers fill their name and address. 2. Customers enter their own email address and desired password. 3. Customers choose gender and enter their phone number. 4. Customers finally click Save button. Use Case ends here Post Condition The customer information will be stored and a successful message will be saved Use Case Name 2: Manage Movie Primary actor General Manager Precondition General Manager firstly need to sign in successfully The Use Case starts when general manager clicks the movie registration form. 1. General Manager enter the movie details such as Movie Poster, Movie Trailer, Movie Name, Movie Type, Duration, Actor, Actress, Director and Action. 2. General Manager click Save button. Use Case ends here Post Condition COMP-1181 General Manager completely register the movie’s necessary information. Page | 235 Use Case Name 3: Operate Seats (need changes) Primary actor General Manager Precondition General Manager must be signed in correctly The Use Case starts when general manager clicks the seat registration form. 1. General Manager enter the movie details such as Movie Poster, Movie Trailer, Movie Name, Movie Type, Duration, Actor, Actress, Director and Action. 2. General Manager click Save button. Use Case ends here Post Condition General Manager completely register the movie’s necessary information. Use Case Name 4: Control Movie Schedule Primary actor General Manager Precondition General Manager firstly need to log in with correct username and password The Use Case starts when general manager clicks the movie schedule form. 1. General Manager choose movie name and insert show date for it. 2. General Manager choose theatre name, show time and movie status. 3. General Manager click add button to show all the data in the movie schedule details table 4. General Manager click save button to record the all the movie schedule data. Use Case ends here Post Condition General Manager successfully stores the movie schedule details. Use Case Name 5: Make Booking Primary actor Customer Precondition Customer firstly need to sign in correctly The Use Case starts when customers click booking form. 1. Customers select the now showing movie. 2. Customers select the preferred show date and show time. 3. Customers select seats for booking and press finish. Use Case ends here Post Condition COMP-1181 Customers successfully make booking online. Page | 236 Use Case Name 6: Process Report Primary actor Operation Staff Precondition Operation Staff firstly need to sign in successfully The Use Case starts when operation staff clicks the order search page. 1. Operation Staff search the food order detail and booking detail by sales ID and sales date. 2. Operation Staff click View Detail button to review the sale detail report. 3. Operation Staff click Print button to generate report. Use Case ends here Post Condition Operation Staff completely review and generate sale detail report. Use Case Name 7: Buy Food Items Primary actor Customer Precondition Customer must be signed in with correct user name and password The Use Case starts when customers click the movie registration form. 1. Customers select the desired food items to view the details. 2. Customers click Add to Cart button to make checkout process. 3. Customers select their preferred payment type. 4. Customers click Checkout Now to buy food items. Use Case ends here Post Condition Customer completely buy food items. Use Case Name 8: Manage Theatre Primary actor General Manager Precondition General Manager primarily have to log in successfully. The Use Case starts when general manager clicks the new theatre registration form. 1. General Manager fills the theatre name. 2. General Manager enters capacity for seating plan. 3. General Manager click save button to record the theatre information. Use Case ends here Post Condition COMP-1181 General Manager store the new theatre information completely. Page | 237 Use Case Name 9: Control Showtime Primary actor General Manager Precondition General Manager must be logged in correctly The Use Case starts when general manager clicks the new theatre registration form. 1. General Manager fills the theatre name. 2. General Manager enters capacity for seating plan. 3. General Manager click save button to record the theatre information. Use Case ends here Post Condition General Manager store the new theatre information completely. Use Case Name 10: Manage Food Primary actor Food and Beverage Manager Precondition Food and Beverage Manager have to signed in with correct username and password The Use Case starts when general manager clicks the new theatre registration form. 1. Food and Beverage Manager fills the food information such as food name, price and description. 2. Food and Beverage Manager chooses food type and quantity. 3. Food and Beverage Manager uploads the related food image. 4. Food and Beverage Manager finally click Save button. Use Case ends here Post Condition Food and Beverage Manager completely record all the related information of food items in the system. COMP-1181 Page | 238 Appendix D Detailed Class Definitions 1. Class Name - Customer Attribute - CustomerID, CustomerName, Address, Email, Password, Gender, Phone Operation - Insert (), Update (), Delete (), SelectAll () Description - The customer class is used to record the password-protected information about customers in the system. The customers’ information is saved in the system once they register the account by filling their required information. This supports the customers to logout easily by clicking the logout button. 2. Class Name Attribute - Booking - BookingID, CustomerID, MovieID, Show Time, TIcketPrice, NoOfSeat, TargetDate, BookingDate, Status Operation - addBooking(), confirmBooking(), searchBooking(), viewReport(), updateBooking(), deleteBooking() Description - The booking class is used to record the movie ticket booking information booked by customers. The customers can able to make booking by signing in with their correct email and password. Besides, this supports customers to choose their desired movie show date and show time. 3. Class Name Attribute - Movie - MovieID, MovieName, Duration, MoviePoster, MovieTrailer, Actor, Actress, Director and Action. Operation - addMovie (), updateMovie (). displayMovie (), deleteMovie() Description - The Movie class is used to store the information about movies in order to display in the front page. This function provides the users to update and delete the currently showing and coming soon movie details. COMP-1181 Page | 239 4. Class Name - Theatre Attribute - TheatreID, TheatreName, Capacity Operation - addTheatre, deleteTheatre(), updateTheatre() Description - The theatre class contains the specific information about the theatre which allows the admin to register and update the new theatre information. 5. Class Name - Seat Attribute - SeatID, SeatNo Operation - Booking(), Update(), Delete() Description - The seat class is for recording the information regarding the seating plan in each theatre. In this function, the admin can able to update and delete the wrong data in the seating plan. 6. Class Name - Movie Schedule Attribute - MovieScheduleID, ShowTimeID, Status, MovieID, ScheduleDate Operation - AddMovieSchdule(), UpdateMovieSchdule(), DeleteMovieSchedule Description - The Movie Schedule class is used to keep the information concerning schedule of the movie. This allows the admin to insert and update the movie schedule information and so thus the admin can review the various movie schedule records. 7. Class Name - Showtime Attribute - ShowtimeID, MovieScheduleID, ShowDate, ShowTime, TheatreID Operation - addShowtime (), updateShowtime(), deleteShowtime() Description - The Showtime class is the dummy table between movie schedule class and theatre class. COMP-1181 Page | 240 8. Class Name - Ticket Attribute - CustomerNo, BookingID, MovieName, SeatNo, NoOfSeat Operation - printticket() Description - The Ticket class is the dummy table between booking class and theatre class 9. Class Name - Food Order Attribute - FoodOrderID, CustomerID, BookingID, Date, TotalAmount, Status Operation - placeFoodOrder(), updateFoodOrder() Description - The Food Order class is created to record food order information ordered by the customers. In this function, customers can able to save new information involving new food order information. Moreover, this allow the users to update and view the food order information. 10. Class Name - Food Order Details Attribute - FoodDetailID, FoodID, FoodType, Price Operation - addFoodOrderDetail(), updateFoodOrderDetail() Description - The Food Order Details class is the dummy table between Food Order class and Food class 11. Class Name - Food Detail Attribute - FoodDetailID, FoodID, FoodType, Price Operation - addFoodDetail, updateFoodDetail Description - The Food Detail class is the dummy table between Food class and FoodType class COMP-1181 Page | 241 12. Class Name - Food Attribute - FoodID, FoodName, Price, Description, Image Operation - displayFood(), addFood(), updateFood(), deleteFood() Description - The Food class contains the specific information about the food items which are offering at Emerald Cineplex. This allows the admin to fill up the required information about the available food items on the website and so thus the customers can view which food items are offering at the cinema. Besides, the admin can able to update and delete the entire record of food items. 13. Class Name - Food Type Attribute - FoodTypeID, FoodType Operation - AddFoodType(), UpdateFoodType(), RemoveFoodType() Description - The Food Type class is used for storing information concerning food type. Admin can able to easily update upon changes, delete the wrong data in food type. COMP-1181 Page | 242 Appendix E Feedback from user’s survey form Figure: Feedback-1 Figure: Feedback-2 COMP-1181 Page | 243 Figure: Feedback-3 Figure: Feedback-4 Figure: Feedback-5 COMP-1181 Page | 244 Figure: Feedback-6 Figure: Feedback-7 Figure: Feedback-8 COMP-1181 Page | 245