0% found this document useful (0 votes)
163 views48 pages

Movie Recommendation System PDF

This document provides an overview of a profile based movie recommendation system project. It introduces the project and describes existing solutions and their features. The document outlines the project scope, useful tools and technologies, work breakdown structure, and time frame. It also covers requirements specification and analysis, system design including layers, models, and class/sequence diagrams. Software development, testing methodology, and environment are briefly discussed as well.

Uploaded by

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

Movie Recommendation System PDF

This document provides an overview of a profile based movie recommendation system project. It introduces the project and describes existing solutions and their features. The document outlines the project scope, useful tools and technologies, work breakdown structure, and time frame. It also covers requirements specification and analysis, system design including layers, models, and class/sequence diagrams. Software development, testing methodology, and environment are briefly discussed as well.

Uploaded by

Progresh Sigdel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

Table of Contents

Chapter 1 ......................................................................................................................... 3
Introduction ...................................................................................................................... 3
1.1 Project Introduction ............................................................................................ 3
1.2 Existing Solutions ............................................................................................... 4
1.2.1 Table Comparison ....................................................................................... 5
1.3 Problem Statement ............................................................................................ 6
1.4 Business Scope ................................................................................................. 6
1.5 Useful Tools and Technologies .......................................................................... 6
1.6 Project Work Break Down .................................................................................. 7
1.7 Project Time Lapse ............................................................................................ 8
Chapter 2 ......................................................................................................................... 9
Requirements Specification and Analysis ............................................................................. 9
2.1 Functional Requirements ................................................................................... 9
2.2 Non-Functional Requirements.......................................................................... 10
2.3 System Use Case Modeling: ............................................................................ 10
2.3.1 System level Use Case Diagram: ................................................................... 15
2.4 Use Case Description ...................................................................................... 16
Chapter 3 ....................................................................................................................... 25
System Design................................................................................................................. 25
3.1 Layer Definition ................................................................................................ 25
3.1.1 Presentation Layer:....................................................................................... 25
3.1.2 Business Logic Layer: .................................................................................. 25
3.1.3 Database Layer: ........................................................................................... 25
3.2 High level Design ............................................................................................. 26
3.2.1 Domain Model: .......................................................................................... 26
3.2.2 System Sequence Diagram: ...................................................................... 27
3.3 Low level Design .............................................................................................. 37
3.3.1 Class Diagram ........................................................................................... 37
3.3.2 Sequence Diagram .................................................................................... 38

1
Chapter 4 ....................................................................................................................... 39
Software Development ..................................................................................................... 39
4.1 Coding Standards ............................................................................................ 39
4.2 Development Environment ............................................................................... 39
4.3 Software Description ........................................................................................ 39
4.3.1 HomePage: .................................................................................................. 40
4.3.2 Registration ................................................................................................. 41
4.3.3 Login .......................................................................................................... 42
Chapter 5 ....................................................................................................................... 43
Software Testing .............................................................................................................. 43
5.1 Testing Methodology ........................................................................................ 43
5.2 Testing Environment ........................................................................................ 43
5.3 Test Cases ....................................................................................................... 43

2
Chapter 1
Introduction
1.1 Project Introduction

Profile Based Movie Recommendation System is a Movie recommendation system. This


chapter shall describe scope and specifications of the project. Tools and technologies shall also
be listed in the chapter. When we look for movies online, we waste a lot of our time searching
for movies which we find interesting thus wasting a lot of time which we could use to watch a
movie instead.[2]

Our recommender system will remove the hassle of searching for an interesting movie and
provide an all in one recommender system where you will get recommendations based on your
movie history thus generating accurate recommendations as possible. Movie recommendation
system is an intelligent idea as there are more than millions of movies available to watch. The
main concern of our system is to remove the searching of movies and get recommendations
for movies based a person’s watch history.[1]

As it is based online, the users won’t have to worry about space anytime getting
recommendations for a movie. Users can get recommendation from their mobile phones as
well. The possibilities are endless as it is a web application which can be accessible from any
device anywhere as long as it is connected to the internet. It will have different feeds to each
individual user based upon their own liking, history and the genre’s they like. Simply put, this
technology proves itself to be very far ahead compared to the old-fashioned ways and saves
time and space which is very essential.[3]

3
1.2 Existing Solutions

This is stated about the information found on the Profile Based Movie Recommendation System

in the form of research papers as stated below at the reference page. We have found that Vast

and uncountable amount of work has been put into Digital Media services specifically into Movie

Recommendation System to make it as fast as possible and as effective as possible. The styles

and working of Recommendation systems has evolved into a smart feature that almost every

person has access to it. Considering Movie Recommendation systems, multiple countless

techniques have been used. The goal is to make the Movie recommendation as efficient and

effective. Now, there is no point being efficient if there is no effectiveness present.

F.O. Isinkaye, Y.O. Folajimi, B.A. Ojokoh (2015) in their research pointed out that on the internet

the number of choices is overwhelming. There is need to filter, prioritize and efficiently deliver

relevant information in order to alleviate the problem of information overload, which has created

a potential problem to many Internet users. Recommender systems solve this problem by

searching through large volume of dynamically generated information to provide users with

personalized content and services.[1]

Bogdan Walek, Vladimir Fojtik (2019) in their research about hybrid recommender system told

us that the internet contains a large amount of information, which must then be filtered to

determine the suitability for certain users. Recommender Systems are a very suitable tool for this

purpose.[3]

4
1.2.1 Table Comparison

There are multiple websites which provide similar functionalities. Comparison of existing studies
are provided in state-of-the-art as shown in table 1.

criticker tastedive Our


Features Suggestme movielens .com .com System
movie.com .org

Random
recommen-
dations
✔ ✖ ✔ ✔ ✖

Profile ✔
Based ✔ ✔ ✖ ✖

Genre
Based ✔ ✖ ✖ ✖ ✔

Keywords ✔
Based ✔ ✖ ✖ ✖

5
1.3 Problem Statement

A Web based Recommendation system will provide the facilities that will help the users to get
movie recommendations on the go. In our daily life, most of us have hobby of watching movies
on our free time, our Movie Recommendation System will minimize the time taken to search for
a movie so that the user can spend more time watching rather than searching for a movie. Our
Recommender System will provide an all in one recommender System which will give
recommendations based on a user’s watch history, thus giving a recommendation with high
accuracy.

1.4 Business Scope

Our recommendation system will remove the hassle of searching for movies to watch which in
turn will be full of advantages for the users who watch movies. As they will not have to manually
search for a movie to watch but will be recommended through our system.

1.5 Useful Tools and Technologies

As we are developing a web application


They are categorized into two parts
1. Front End
The Tools we will use in our frontend are as follows:

1. Bootstrap
2. Jquery
3. HTML
4. AJAX

2. Back End
The tools we will used out back end should be:

1. Python
2. C#
3. Visual Studio (2019)

6
1.6 Project Work Break Down

7
1.7 Project Time Lapse

Tasks Number of Days Start-End Date


Requirements 56 January 29, 2020 – March 24, 2020
Data Base Design 28 March 25, 2020 – April 21, 2020
Design 38 April 25, 2020 – June 1, 2020
Implementation 120 June 4, 2020 – October 1, 2020
Testing 44 October 4, 2020 – November 16, 2020
Deployment 55 November 21, 2020 – January 14, 2021

8
Chapter 2
Requirements Specification and Analysis

Requirement analysis is the process of studying and analyzing the customer and the user needs to
arrive at a definition of the problem domain and system requirements. These requirements are
known as functional requirements. In Chapter 2 we will enlist the functional and non-functional
requirements and model functional requirements in the form of use case model.

2.1 Functional Requirements


A functional requirement, in software and systems engineering, is a declaration of the intended
function of a system and its components. Based on functional requirements, an engineer
determines the behavior (output) that a device or software is expected to exhibit in the case of a
certain input.
Table2.1 Functional Requirements

SR NO. FUNCTIONAL REQUIREMENTS TYPE STATUS


1. Admin: Core Implemented
Admin should be able to login to the system.
2. Admin should be able to update the dataset of movies Core Implemented

3. Admin should be able to view dataset record Core Implemented

4. Admin should be able to add keywords Core Implemented

5. User: Core Implemented


User should be able to Register him/herself into the
system.
6. User should be able to login to the system. Core Implemented
7. User should be able to search movies Core Pending
8. User should be able to get recommendations based Core Pending
on his/her favorite genre
9. User should be able to get recommendations based Core Pending
on his/her history
10. User should be able to get recommendations based Core Implemented
on keywords.
11. User should be able to see reviews of movies Intermediate Pending

9
2.2 Non-Functional Requirements
A non-functional requirement defines the performance attribute of a software system. Types of
Non-functional requirement are Scalability Capacity, Availability, Reliability, Recoverability,
Data Integrity, etc.

SR.
NON-FUNCTIONAL REQUIREMENTS CATEGORY
NO.
1 The website interface will be responsive
Performance
2 Responses to view information shall take no longer than 5 seconds
to appear on the screen Performance

3 System will be available for usage 24/7


Avaliability

2.3 System Use Case Modeling:


A use case is a list of actions or event steps, typically defining the interactions between a role
(known in the Unified Modeling Language as an actor) and a system, to achieve a goal. The actor
can be a human or other external system. Admin’s use cases are shown in the following the figure.

Admin:

Feature 1: Admin Login


Admin can login to the system, As shown in Figure 2.1

Figure 2.1: Use Case Diagram of Admin login

10
Feature 2: Update Dataset
Admin can update the dataset, As shown in Figure 2.2

Figure 2.2: Use Case Diagram of updating dataset

Feature 3: View Dataset


Admin can view the dataset, As shown in Figure 2.3

Figure 2.3: Use Case Diagram of view dataset

11
Feature 4: Update Keywords
Admin can update keywords, As shown in Figure 2.4

Figure 2.4: Use Case Diagram of updating keywords

User:

Feature 5: User Registration


User can Register to the system, As shown in Figure 2.5

Figure 2.5: Use Case Diagram of user registration

12
Feature 6: User Login
User can login to the system, As shown in Figure 2.6

Figure 2.6: Use Case Diagram of user login

Feature 7: Search movie


User can search movies, As shown in Figure 2.7

Figure 2.7: Use Case Diagram of user searching for movie

13
Feature 8: View Movies names recommended by the System
User can View names of Movies recommended by the System, As shown in Figure 2.8

Figure 2.8: Use Case Diagram of View Movie Name

Feature 9: View Movie Reviews


User can View reviews of Movies, As shown in Figure 2.9

Figure 2.9: Use Case Diagram of view Movie Reviews

14
2.3.1 System level Use Case Diagram:
Represents the overall working of Movie Recommendation System, two actors Admin, User. All
use cases and their interaction as shown in Figure 2.8

Figure 2.10: System level use case of Movie Recommender System

15
2.4 Use Case Description

Use Case 1: Admin Login


Table 2.1: Use Case Description of Admin login

Use Case ID: Uc1

Use Case Name: Admin Login

Created By: Saad Ibne Ali Last Updated By: Fahad Zeb

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: Admin

Description: Admin can login to the system.

Trigger: When login button is pressed

Preconditions: Null

Post conditions: Admin will get logged into the system.

Normal Flow: Admin System

1: Admin will enter credentials The system will give access to


(Email and Password) into the the admin.
system and get logged in.

Alternative Flows: N/A

Exceptions: 1. Admin has not entered valid credentials.

16
Use Case 2: Dataset update
Table 2.2: Use Case Description of updating dataset

Use Case ID: Uc2

Use Case Name: Dataset update

Created By: Saad Ibne Ali Last Updated By: Fahad Zeb

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: Admin

Description: Admin will update dataset

Trigger: Admin presses submit button

Preconditions: Admin must be logged in

Post conditions: Movie dataset will be updated.

Normal Flow: User System

1: Admin will input dataset into System will update dataset.


the system.

Alternative Flows: N/A

Exceptions: 1. Admin entered an invalid dataset.

17
Use Case 3: View Dataset
Table 2.3: Use Case Description of updating dataset

Use Case ID: Uc3

Use Case Name: View Dataset

Created By: Saad Ibne Ali Last Updated By: Fahad Zeb

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: Admin

Description: Admin can view dataset

Trigger: Admin presses Result Dataset Button

Preconditions: Admin must be logged in

Post conditions: Admin will see dataset

Normal Flow: User System

1: Admin will press Result System will show Dataset.


Dataset Button.

Alternative Flows: N/A

Exceptions: N/A

18
Use Case 4: Keywords update
Table 2.4: Use Case Description of updating dataset

Use Case ID: Uc4

Use Case Name: Keywords update

Created By: Saad Ibne Ali Last Updated By: Fahad Zeb

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: Admin

Description: Admin can add keywords

Trigger: Admin presses save changes button

Preconditions: Admin must be logged in

Post conditions: Keyword will be added

Normal Flow: User System

1: Admin will type new keyword. System will add the keyword.

Alternative Flows: N/A

Exceptions: N/A

19
Use Case 5: User can register into the system.
Table 2.5 Use Case Description of User registration

Use Case ID: Uc5

Use Case Name: User Registration

Created By: Saad Ibne Ali Last Updated By: Murtaza Solangi

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: User

Description: User can register to the system.

Trigger: User presses submit button

Preconditions: NULL

Post conditions: User will get registered into the system

Normal Flow: User System

1: User will get registered into the System will register user
system

Alternative Flows: N/A

Exceptions: 1: The user entered an invalid email address.

2: The user entered a weak password.

20
Use Case 6: User can login to the system.
Table 2.6 Use Case Description of User login

Use Case ID: Uc6

Use Case Name: User login

Created By: Saad Ibne Ali Last Updated By: Murtaza Solangi

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: User

Description: User can login to the system by entering credentials.

Trigger: User presses login button

Preconditions: User must be registered into the system.

Post conditions: User will get logged into the system

Normal Flow: User System

1: User will get logged into the System will allow access user to
system be logged in

Alternative Flows: N/A

Exceptions: 1: The user entered invalid credentials.

2: The user is not registered

21
Use Case7: User can search Movies.
Table 2.7 Use Case Description of Search Movie

Use Case ID: Uc7

Use Case Name: Search Movie

Created By: Saad Ibne Ali Last Updated By: Murtaza Solangi

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: User

Description: User can search movies.

Trigger: User pressed search button.

Preconditions: User has entered name of a movie

Post conditions: User will get movie details

Normal Flow: User System

1: User searches for a movie System will show details of the


move entered

Alternative Flows: N/A

Exceptions: 1. System is not responding.


2. Movie does not exist.

22
Use Case 8: User can get movie recommendations.
Table 2.8 Use Case Description of view recommended movies

Use Case ID: Uc8

Use Case Name: View Movie Recommendations

Created By: Saad Ibne Ali Last Updated By: Murtaza Solangi

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: User

Description: User can view recommendations of movies.

Trigger: NULL

Preconditions: User must be signed in

Post conditions: User will get recommendations.

Normal Flow: User System

1: User will get movie System will show movie


recommendations. recommendations

Alternative Flows:

Exceptions: 1. System is not responding.


2. Null Exception.

23
Use Case 9: User can get movie reviews.
Table 2.9 Use Case Description of See movie reviews

Use Case ID: Uc9

Use Case Name: View Movie Reviews

Created By: Saad Ibne Ali Last Updated By: Murtaza Solangi

Date Created: 12/05/2020 Last Revision Date: 13/05/2020

Actors: User

Description: User can view reviews of movies.

Trigger: User presses show review button.

Preconditions: User must be signed in.

Post conditions: User will get reviews.

Normal Flow: User System

1: User will want only reviews of System will show Review


specific movie. according to the movie name
entered.

Alternative Flows: Reviews don’t exist due to its very initial release.

Exceptions: 1. System is not responding.


2. User enters name of movie that does not exist.
3. Null Exception.

24
Chapter 3
System Design

The purpose of this chapter is to provide information that is complementary to the code.
Without an adequate design, that delivers required function as well as quality attributes,
the project will fail. However, communicating architecture to its stakeholders is as
important a job as creating it in the first place.

3.1 Layer Definition


The table 3.1 enlists the layers of the system.

Table 3.1: Layers Definition


Layers Description
This layer will be used for the interaction with the
Presentation Layer
user through a graphical user interface.
This layer contains the business logic. All the
Business Logic Layer constraints and majority of the functions reside
under this layer.
This layer contains the database of the application
Database Layer
being developed.

3.1.1 Presentation Layer:


Occupies the top level and displays information related to services available on a
website. This tier communicates with other tiers by sending results to the browser and
other tiers in the network.

3.1.2 Business Logic Layer:


Database layer includes database servers where information is stored and retrieved.
Data in this tier is kept independent of application servers or business logic.

3.1.3 Database Layer:


Database layer includes database servers where information is stored and retrieved.
Data in this tier is kept independent of application servers or business logic.

25
3.2 High level Design
3.2.1 Domain Model:
Part of your initial architectural modeling efforts, particularly for a business application, will
likely include the development of high-level domain model as you see in Fig. 2.14. This model
should be very slim, capturing the main business entities and the relationships between them.
Some people consider this type of model to be an initial requirement model instead of an initial
architecture model

Figure 2.11

26
3.2.2 System Sequence Diagram:
System sequence diagram (SSD) is a sequence diagram that shows, for a particular scenario of a
use case, the events that external actors generate their order, and possible inter-system events.

Admin Login:

System Sequence Diagram of Admin login, As shown in Figure 2.9

Figure 2.11 | SSD for admin login

Admin can login to the system using their credentials (Email and Password)

27
Admin dataset update:

System Sequence Diagram of Admin updating dataset, As shown in Figure 2.10

Figure 2.12 | SSD for dataset update

Admin can update Dataset using an excel dataset.

28
Admin view Dataset:

System Sequence Diagram of Admin updating dataset, As shown in Figure 2.13

Figure 2.13 | SSD to view dataset

Admin can view Dataset within the system.

29
Admin view Dataset:

System Sequence Diagram of Admin updating dataset, As shown in Figure 2.14

Figure 2.14 | SSD to view Update Keywords

Admin can Update Keywords within the system.

30
User Registration:

System Sequence Diagram of User Registration, As shown in Figure 2.15

Figure 2.15 | SSD for User Registration

User can Register him/herself to the system.

31
User Login:

System Sequence Diagram of User login, As shown in Figure 2.16

Figure 2.16 | SSD for User Login

User can Login system.

32
Search Movie:

System Sequence Diagram of Searching movie, As shown in Figure 2.13

Figure 2.13 | SSD for searching movie

User can search for movies.

33
Movie Recommendations:

System Sequence Diagram of getting movie recommendations, As shown in Figure 2.14

Figure 2.14 | SSD for movie recommendations

User can get recommendations based on their profile, their favorite genre, and on feedback
within the system.

34
Viewing Reviews:

System Sequence Diagram of viewing movie reviews, As shown in Figure 2.15

Figure 2.15 | SSD for movie reviews

User can view Reviews within the system.

35
3.2.2.1 System Level System Sequence diagram:

Figure 2.16

36
3.3 Low level Design
3.3.1 Class Diagram
The class diagram describes the attributes and operations of a class and the constraints
imposed on the system. The class diagrams are widely used in the modeling of object-oriented
systems because they are the only UML diagrams, which can be mapped directly with object-
oriented languages.

Figure 3.2

37
3.3.2 Sequence Diagram

Figure 3.3

38
Chapter 4
Software Development
4.1 Coding Standards
We are developing a Website using HTML and CSS as front end. We are coding our App in very
clean manners means we are giving comments in the start of every functions and classes to
enhance the readability to learn, understand the code easily to resolve problem if any bugs occur
in the future.

It will Also help us in the future if we want to add another feature to our website.

4.2 Development Environment


We are using Microsoft visual studio to develop our website as visual studio has many built in
features which will help us to develop an efficient and responsive website.

Microsoft Visual Studio provides a unified environment where one can build websites for all
types of devices like phones, tablets, PC etc.

4.3 Software Description


Our website will have some features which have been listed above. We have developed a
homepage, registration page, login page and database for the website.

39
4.3.1 HomePage:

Figure 4.1

HomePage Code:

40
4.3.2 Registration

Figure 4.2

Registration Code:

41
4.3.3 Login

Figure 4.3

Login Code:

42
Chapter 5
Software Testing
Software Testing is the most crucial part of Software Development Process. It is the
investigation or evaluation of a software component, improving them, and finding bugs and
defects. Testing is usually done by executing a system in such a way that it identifies any gaps,
errors, or missing requirements in contrary to the actual requirements. This chapter provides a
description about the adopted testing procedure. This includes the adopted testing methodology,
test suite and the test results of the developed software.

5.1 Testing Methodology

We have used black box testing in our testing phase. Black box contains certain benefits
that include following:
• Black box testing examines the functionality of application without peering into its
internal structure.
• This method can be applied to every level of the software testing which include
unit, integration, system and acceptance.

5.2 Testing Environment


Black Box unit testing is used in our project. Unit testing is a software testing method by which
individual units of source code, sets of one or more computer program modules, together with
associated control data, usage procedures and operating procedures are tested to determine whether
they are fit for purpose.

5.3 Test Cases


A test case is a specification of the inputs, execution conditions, testing procedure and expected
results that define a single test to be executed to achieve a particular software testing objective.

43
Table 5.1: test case 1

Date: 1 July 2020


System: Movie Recommendation System
Objective: Admin can Login to the system Test ID:1
Version:1 Test Type: Unit testing
Input:
Email and Password

Expected Result: Admin gained access to System.


Actual Result: passed

Table 5.2: test case 2

Date: 1 July 2020


System: Movie Recommendation System
Objective: Admin can Login to the system Test ID:2
Version:1 Test Type: Unit testing
Input:
Email and Password

Expected Result: Admin gained access to System.


Actual Result: Error wrong email or password

44
Table 5.3: test case 3

Date: 1 July 2020


System: Movie Recommendation System
Objective: Admin can update dataset Test ID:3
Version:1 Test Type: Unit testing
Input:
Movie Dataset

Expected Result: Dataset updated.


Actual Result: passed

Table 5.4: test case 4

Date: 1 July 2020


System: Movie Recommendation System
Objective: Admin can view dataset Test ID:4
Version:1 Test Type: Unit testing
Input:
Movie Dataset

Expected Result: Dataset updated.


Actual Result: passed

45
Table 5.5: test case 5

Date: 1 July 2020


System: Movie Recommendation System
Objective: User can register in the System Test ID:5
Version:1 Test Type: Unit testing
Input: Full Name, Email, Password

Expected Result: Access the system.


Actual Result: passed

Table 5.6: test case 6

Date: 1 July 2020


System: Movie Recommendation System
Objective: User can login to the System Test ID:6
Version:1 Test Type: Unit testing
Input: Email, Password

Expected Result: Access the system.

46
Actual Result: passed

Table 5.7: test case 7

Date: 1 July 2020


System: Movie Recommendation System
Objective: User can view password in case they forgot Test ID:7
Version:1 Test Type: Unit testing
Input: Email

Expected Result: User get their password in email


Actual Result: passed

Table 5.8: test case 8

Date: 1 July 2020


System: Movie Recommendation System
Objective: User can view password in case they forgot Test ID:8
Version:1 Test Type: Unit testing
Input: Email

Expected Result: User get their password in email


Actual Result: passed

47
References:

[1]: F.O. Isinkaye., Y.O. Folajimi., B.A. Ojokoh.: Recommendation systems: Principles,
methods and evaluation

[2]: Anand Shanker Tewari., Jyoti Prakash Singh., Asim Gopal Barman.: Generating Top-N
Items Recommendation Set Using Collaborative, Content Based Filtering and Rating
Variance

[3]: Bogdan Walek, Vladimir Fojtik.: A hybrid recommender system for recommending
relevant movies using an expert system

[4]: Rajatish Mukherjee., Partha Sarathi Dutta., Sandip Sen.: MOVIES2GO - A new approach
to online movie recommendation

[5]: https://www.suggestmemovie.com/, last accessed: 2nd March 2020

[6]: https://movielens.org/, last accessed: 2nd March 2020

[7]: https://www.criticker.com/, last accessed: 2nd March 2020

[8]: https://tastedive.com/movies, last accessed: 2nd March 2020

48

You might also like