0% found this document useful (0 votes)
2 views15 pages

Chapter 3

Chapter Three outlines the methodology for designing a cinema booking web application, detailing both functional and non-functional requirements. It describes the system architecture, including front-end and back-end technologies, database design, and user interface mockups. Additionally, it specifies hardware and software requirements necessary for the application's development and operation.

Uploaded by

daramola76
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views15 pages

Chapter 3

Chapter Three outlines the methodology for designing a cinema booking web application, detailing both functional and non-functional requirements. It describes the system architecture, including front-end and back-end technologies, database design, and user interface mockups. Additionally, it specifies hardware and software requirements necessary for the application's development and operation.

Uploaded by

daramola76
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

3 CHAPTER THREE

METHODOLOGY

3.1 INTRODUCTION

This chapter presents the overall system architecture's design aspects. The procedures employed in

designing the software implementations are extensively discussed. The software design describes

the steps taken to create the web application; which shows the different technologies utilized to

accomplish the project;

3.2 DESIGN REQUIREMENT

The design requirement provide a detailed description of how the system is designed to meet the

functional and non-functional requirements. In this section, we will categorize the design

requirements into functional and non-functional requirements.

3.2.1 Functional Requirement

The functional requirements of the application are the basic functions that should be offered by the

system to give the respected output. These requirements address the system's core capabilities and

define what it should be able to do. Customers will be able to register, login, and browse the movie

catalogue at the cinema using the website as an interface. Users will also be able to browse and

book multiple show offerings for a specific set of movies. Users can also choose the number of

seats and the specific seats they want to book. Users will also have access to a profile page where

they can update their information and view current and previous bookings. Customers will also

receive digital tickets for their bookings via the web application. The functional requirements are:

a) Registration of Users: Users must provide a username, an email address, and a secure

password to create an account (for future logins).


b) User Homepage: After logging in successfully, users are taken to a personalized homepage

where they can explore the following options: Keep up to date on upcoming movies. Search

for a specific movie with ease. Examine the various show times for each film. Check the

availability of seats for a specific show.

c) Admin Login: The administrator enters their admin username and password to access their

account.

d) Booking Tickets: Users can reserve available tickets, select the desired number of seats, and

secure their reservations for a specific Showtime.

e) Manage Movies: The admin has the authority to manage movies, including adding new ones

and removing old ones.

f) Manage Users: Admins can manage user accounts, adding new users, deleting users, and

even creating new admin accounts.

g) Manage Shows: Administrators have access to show schedules and can add or remove show

times for existing movies.

h) User Profile: Following ticket bookings, users can access their profile page to review their

booking history.

3.2.2 Non-Functional Requirement

In addition to the functional requirements, non-functional requirements define the qualities and

characteristics of the application.

a) Usability: The system provide a seamless user interface and experience which is easy to use

and navigate by users


b) Scalability: The services used on the system is capable for handling concurrent users without

significant degradation in performance.

c) Security: The system employs a robust security framework to avoid various cyber threats

like cross-site scripting and SQL injection.

d) Reliability: The system is highly reliable, it has reduced downtime and highly available to

users.

e) Integration: For expansion, the system could be integrated with various systems.

f) Maintainability: The system is developed in a modular manner, in other to facilitate future

enhancement and maintenance.

3.3 SYSTEM DESIGN

The Improved Cinema booking experience can be implemented using various technologies and

framework. In implementing the system a combination of technologies is used for the front-end,

back-end, database and machine learning.

3.3.1 Design and modelling of the web application

i. Front-end design: The frontend design was implemented with pure HTML and CSS

technology using the bootstrap framework for customization and designing it to be more

user friendly.

ii. Backend design: The backend of this web application is developed using a combination of

PHP and JavaScript. PHP provides the server-side scripting capabilities, while JavaScript

enhances the client-side interactivity. PHP is a versatile and secure scripting language that

ensures the web application's robust performance. Additionally, JavaScript is employed to

create dynamic and responsive user experiences. The backend also incorporates various

tools and libraries for seamless communication with the database


iii. Database design: The database is created with MySQL and various tables are created and

connected with a connector to the backend.

3.3.2 User Interface mockup design

The UI mockup design is shown below, the mockup design is used to implement the user frontend

design.

Figure 3.1: User Login and Registration


Figure 3.2: User Homepage

Figure 3.3: Movie Information Page


Figure 3.4: Seat selection Page

Figure 3.5: Admin Functionality page


3.4 UML DIAGRAM

The Unified modelling language UML diagrams provide a graphical representation of the entire

system, it shows a schematic approach of implementing the system. Use case diagram, activity

diagram and conceptual diagram is modelled.

3.4.1 Use case diagram

Figure 3.6 represents the use case diagram of the system. It shows the different interactions between

users (actors) and the system. The actors are the users/visitors and the administrator.

Figure 3.6: Use Case Diagram


3.4.2 Conceptual Design

Figure 3.7: Conceptual Design diagram


i. Users are distinguished by their unique Username and accompanied by other attributes like

Email and Password.

ii. Admins, a subset of Users, possess distinct attributes such as AdminId and JoiningDate.

iii. Bookings are recognized by their unique BookingId and encompass details like Username,

Timestamp, and ShowId.

iv. Seats are differentiated by SeatId and their association with BookingId, along with

characteristics like Availability.

v. Movies are individually identified through MovieId and encompass descriptors such as

MovieName, Description, ReleaseDate, and AdminId.

vi. Shows are uniquely identified by ShowId and their connection to MovieId. They comprise

details like ShowTiming, Screen, Price, and AdminId.


3.4.3 Database Design

The database comprises of various tables and fields, they are listed below with their field attribute

and properties

User Table

 Username: VARCHAR(32) [Primary Key]

 Email: VARCHAR(64)

 Password: VARCHAR(128) [Password stored with MD5 hashing for 128-bit security]

Admin Table

 Username: VARCHAR(32) [Primary Key]

 AdminId: INT

 JoiningDate: DATE

 Admin is a generalization (subclass) of User (superclass)

Movie Table

 MovieId: INT [Primary Key]

 MovieName: VARCHAR(150)

 Description: VARCHAR(1024)

 ReleaseDate: DATE

 AdminId: INT [Foreign Key referencing [Link]]

Show Table

 ShowId: INT [Primary Key]

 MovieId: INT [Foreign Key referencing [Link]]

 ShowTiming: DATETIME

 Screen: INT
 Price: REAL

 AdminId: INT [Foreign Key referencing [Link]]

 ShowId and MovieId uniquely identify a particular record

Booking Table

 BookingId: INT [Primary Key]

 Username: VARCHAR(32) [Foreign Key referencing [Link]]

 Timestamp: DATETIME

 ShowId: INT [Foreign Key referencing [Link]]

Seat Table

 SeatId: INT [Primary Key]

 BookingId: INT [Foreign Key referencing [Link]]

 Availability: BOOLEAN

 SeatId and BookingId uniquely identify a particular record

These table definitions provide a detailed overview of the database schema, including the

relationships between tables and the primary key (PK) and foreign key (FK) constraints for data

integrity.
Figure 3.8: Database Schema
3.5 SYSTEM REQUIREMENT

In developing the improved movie booking experience application it requires some basic hardware

and software requirement to support the computational needs and ensure the system meets up with

the functionalities.

3.5.1 Hardware requirement

Table 3.1: Hardware requirement

Hardware Minimum System Requirements

Processor 1GHz processor speed

Memory (RAM) 512MB

Internal Memory 1GB


3.5.2 Software requirement

Software Minimum System Requirements

Operating System (OS) Windows 8 OS and above

Database Management System MYSQL

Technologies PHP 7, HTML

Libraries

3.5.3 XAMPP Server

XAMPP is a popular cross-platform web server that allows developers to build and test

applications locally. It was produced by Apache Friends, and its native source code may be

revised or modified by anybody. It includes MariaDB, Apache HTTP Server, and PHP and Perl

interpreters, among other things. Figure 3.10 shows the XAMPP interface.

Figure 3.9: Xampp Interface


3.5.4 NetBeans IDE

NetBeans provides a free and open-source integrated development environment (IDE) that

supports C/C++, PHP, Groovy, and HTML5. NetBeans is also known as a modular Java

desktop application development platform. NetBeans uses components, also known as

modules, to help with program development. NetBeans dynamically installs modules and

allows users to download digitally authorized new features and upgrades. Among the IDE's

components are NetBeans Profiler, a graphical user interface (GUI) design tool, and

NetBeans JavaScript Editor. The NetBeans framework's reusability makes it easier to create

Java Swing desktop applications, allowing third-party developers to extend the platform.

Figure 3.10: Netbeans IDE


3.5.5 HTML

HTML, which stands for Hypertext Markup Language, serves as a fundamental tool in web

development. It is instrumental in crafting web pages, web applications, and dynamic content.

HTML operates as a markup language, primarily employed to construct and structure web pages,

enhancing their visual appeal and interactivity.


3.5.6 CSS

Cascading Style Sheet is referred to as CSS. It was this tool that was used to style the websites.

Using this script on HTML-generated pages produced stunning aesthetics for the system while

maintaining a simple code because styling was handled in a separate CSS Style sheet.

3.5.7 PHP

PHP is a recursive acronym for hypertext preprocessor, it is also known as personal homepage, PHP

is an open-source server-side scripting language, it is used mostly in creating web server, it runs on

browser side and can also run on the command line. PHP connects to all databases, both relational

and non-relational, with ease. As a result, it can quickly connect to MySQL, MongoDB, or any

other database.

3.5.8 MySQL

The Open-Source Interactive SQL Database Management System MySQL is the most widely used.

MySQL is a widely used relational database management system (RDBMS) for developing online

applications. MySQL AB is a Swedish business, it is in charge of its development, marketing, and

support. Here are some of MySQL's benefits:

3.5.9 Bootstrap

Bootstrap is a free open-source front-end HTML, CSS, and JavaScript framework, it is a huge

collection of reusable bits of code written in CSS, HTML and JavaScript, it is used for faster and

responsive web page development.

3.5.10 JavaScript

JavaScript is high level programming language which is used to provide logic to a web page.

JavaScript was created to "bring online sites to life." Scripts are the name for the programs written

in this language. They may be written directly in a web page's HTML and run when the page is
loaded. Scripts are provided in plain text format and are executed in that format. They don't need

any further setup or compilation to work.

You might also like