Movie Recommendation System: Requirements and Specification Document
Movie Recommendation System: Requirements and Specification Document
RECOMMENDATIO N
SYSTEM
Requirements and Specification Document
VERSION 1 .0
DATE 1 9 /01/2024
BY
Devendra Bishnoi
R30183
Komal Gupta
R31476
Hrithik Agarwal
R31308
TABLE OF CONTENTS
Document Revision History 3
1. Introduction 4
1.1 Purpose 4
1.2 Scope of project 4
1.3 Glossary 5
1.4 References 5
1.5 Overview 6
2. Overall Description 7
2.1 Customer 8
2.2 Competitive Landscape 8
2.3 Viewpoints of all the Stakeholders 9
2.4 User Characteristics 9
2.5 User Use Case Diagram 10
3. System Description 11
3.1 Functional Requirements Specification 11
3.1.1 Re
gistration For New User 11
3.1.2 Re
commendations For Existing User 12
3.1.3 Co
ntent Provider 13
3.2 Non-Functional Requirements 17
3.2.1 Performance 17
3.2.2 Security 18
3.2.3 Safety 18
3.2.4 Software Quality Attributes 18
3.3 External Interface Requirements 19
3.3.1 User lnterfaces 19
3.3.2 Hardware Interfaces 19
3.3.3 Software Interfaces 19
3.4 Risks and Mitigations 20
3.5 Evaluation metric 21
1. Introduction
1.1 Purpose
This software helps users of the customer platform explore content quickly with
our recommendation system 's help. The software we are developing is a Hybrid
Recommendation System for Movies, which uses the combination of collaborative
and content-based filtering in the context of web-based recommender systems. In
particular, we will link the well-known TMDB data set. The content filtering part
of the system is based on trained neural networks representing individual user
preferences. Using various experiments, we will demonstrate the influence of
supplementary user and item features on our proposed hybrid recommender's
prediction accuracy. To decrease system runtime and reveal latent user and item
relations, we will factorize our hybrid model via singular value decomposition
(SVD).
Due to the enormous amount of information available online, the need for highly
developed personalization and filtering systems is growing permanently.
Recommendation systems constitute a specific type of information filtering that
attempts to present items according to the interests expressed by a user.
1.3 Glossary
Term Definition
1.4 References
[1] Abdollahpouri, Himan & Burke, Robin. (2019). Multi-stakeholder Recommendation and its
Connection to Multi-sided Fairness.
[2] Kunaver, Matevz & Pozrl, Tomaz & Pogacnik, Matevz & Tasic, Jurij. (2006). The evaluation of a
hybrid recommender system for recommendation of movies.
[3]Rohan Nayak, Aniket Mirajkar, Jeetesh Rokade, Prof. Girish Wadhwa(2018). Hybrid Recommendation
System For Movies
1.5 Overview
HYBRID
RECOMMENDER
Predicted
Predicted
rating CBR rating CF
CONTENT-BASED COLLABRATIVE
FILTERING
RECOMMENDER
RECOMMENDER
, l
'
USER PROFILE
RATING
INPUT DATA MOVIE DATA
DATA
Upon navigating to the main page, if an existing user, then we need prompt the
user to log in. Upon logging in with the correct credentials, they will be redirected
to searching movies data to the platform.Based on which new movies are
recommended
In case the user is new, a registration prompt is provided first, then the user's
profile is built and the user can search for movies he likes then system.
There are two types of users: normal users, who's watch history and movie
preferences are recorded, and admin users, which will be handled to the platform
owners for the purpose of maintaining the platform.
The website should provide a search box, which enables the users to search
movies. The admin user has the option to add and remove movies.
2.1 Customer
Our Customers are video-on-demand platform companies like Netflix, Amazon
Prime, Hulu, and Hotstar. The business model that provides movies on demand to
its customers enables searching for content on their website quickly and increases
user satisfaction on the platform . Its success revolves around the potency of its
recommendations. This System can expand to all video-on-demand platforms with
the necessary data.
We conceptualize similarity in a broad sense, such as the similarity between
movies, members, genres. It uses phrases such as 'Similar titles to watch
instantly,' 'More like . . . '. Search is also one of the crucial aspects of any OTT
Platform.
The primary stakeholders of AHA are its subscribers and viewers. They are the ones
who would be directly affected by the actions of this project. Our hybrid
recommender system will help AHA company in boosting the subscriber numbers
and the viewers.
The secondary stakeholders are its employees, with respect to the task, the secondary
stakeholders are the research team of AHA who are directly involved with the
development and maintenance of the algorithm and the system.
The third class of stakeholders is singular: the system owner. The owner profits
directly when movies are watched. However, the owner is also concerned with the
long-term health of the business. Studios can take their movies elsewhere and users
can subscribe to other services that offer similar viewing experiences. These
considerations should be part of the owner's utility function. A rational system
owner seeks to maximize its own utility.
The user is expected to be Internet literate and be able to use a search engine. The
main screen of the Recommendation Website will have the search function and a
link to add new content for the content providers.
USER
3. System Description
START
REGISTRATIO
INVALID
SEARCH
RECOMMEND
MOVIES
RATE MOVIES
REQUIREMENT-I:
If the User is new to the site, he first registers himself then searches for the movies he wants
and then gives likes or dislikes, which helps create a profile for the user based on his
likes/dislikes and the content of movies he likes; the system will recommend movies to the user.
REQUIREMENT-1 .1:
REQUIREMENT-1.2:
START
I
VALID SEARCH
RECOMME D
MOVIES
RATE MOVIES
REQUIREMENT-2:
If the user is an existing one, he logs into the website. Based on what he searches
in the search box and based on his likes/dislikes and the content of movies he likes
we will recommend movies to the user.
REQUIREMENT-2.1:
REQUIREMENT-2.2:
REQUIREMENT-3.1:
REQUIREMENT-3.2:
REQUIREMENT-4:
CONTENT-PROV! DER
BRIEF-DESCRIPTION:
The content provider can add movies and their related information to the platform.
START
LOG IN
FALSE
TRUE
ADD/REMOVE
MOVIES
Requirement-5:
The content provider has already had the required credential using which he logs in
to the site and then adds new movies data.
Requirement-5.1:
Requirement-5.2:
Requirement-5.4:
Requirement-5.4.1:
The users and content-providers need to have access to the necessary bandwidth
internet to access the website.
3.2.1 Performance
The product shall be based on the web and has to be run from a web server. The
product shall take initial load time depending on internet connection strength
which also depends on the media from which the product is run. The performance
shall depend upon the hardware components of the client/customer.If the Internet
connection is good then The application should update the interface on interaction
within 2-4 seconds.The database should be normalized to prevent redundant data
and improve performance.
3.2.2 Security
A hosting service provider secures the server on which the website is hosted.
Data Transfer:The system will use secure sockets in all transactions that include
any confidential customer information. The system will automatically log out all
customers after a period of inactivity. The system shall confirm all transactions
with the customer's web browser. The system will not leave any cookies on the
customer's computer containing the user's password or any of the user's
confidential information
Data Storage:The customer's web browser and the system 's back-end servers
will never display a customer's password. The system 's back-end databases will
be encrypted.
3.2.3 Safety
Usa bility: The interface should be easy to learn without a tutorial and allow users
to accomplish their goals without errors.
3.3 External Interface Requirements
The protocol used will be HTTP. There shall be a logical address of the system in
IPv4 format.
The user interface for the software shall be compatible with any browser such as
Internet Explorer, Mozilla, and Google Chrome by which users can access the
system.
Since the application must run over the internet, all the hardware required to
be connected to the internet will be a hardware interface for the system. As for
e.g. Modem, WAN - LAN, Ethernet Cross-Cable.
We have chosen Windows operating system for its best support and user
friendliness. To save the movie details, users preferences etc, we have chosen SQL
database.To implement the project we will use Python libraries, Javascript, Html
etc.
3.4 Risks and Mitigations
RISKS:
1. Too few users might use the recommendations engine, increasing data
scarcity and reducing as well the return on investment.
2. The Recommender system might recommend bad items if the items pool is
not controlled.
3. The Recommender system might raise data privacy concerns on the users'
sides.
MITIGATIONS:
For Risk 1: The existence of the recommender engine must be known by all the
users. Additionally, users must be prompted explicitly to provide their opinion on
the recommendations.
For Risk 2: We suggest that item pools be pre-filtered in order to keep only
desirable items. For instance, news articles must undergo editors' pre-filtering
phase before they are included in the news articles pool. This would prevent the
recommender engine from recommending them.
For Risk 3: As far as data privacy is concerned, measures must be taken to ensure
that connections of users do not appear in the recommendations stage.
3.5 Evaluation metric
For evaluating recommendation engines, we can use the following metrics.
Precision:
+!
Where,
tp = movies that user like
tp+fp = Total movies recommended to the user
Evaluation metrics for recommendation engines
Recall: