#### Functional ##### Download the project from its dedicated repository, run docker to initiate the web application and try to navigate it via the browser or using Postman. ###### Does the application work properly and you are able to navigate its core functionalities ? ##### Data and Design: Tell the auditee to show a graph representation of the database and check the following ###### Are nodes and relationships effectively representing movies, users, and ratings? ###### Are the relationships between nodes well represented and have the appropriate data attributes? ##### Movie Microservice ###### Does the Movie microservice effectively handle reading and writing movie data from the database? ###### Is it capable of generating accurate movie recommendations based on user ratings? ##### User Microservice ###### Does the User microservice handle user data operations (read and write) correctly? ###### Does it store user ratings for movies as intended? ##### Rating Microservice ###### Is the Rating microservice correctly handling data operations related to movie ratings? ##### Recommendation Microservice ###### Has Spring Data Neo4j ,or any other library, been employed to facilitate the interaction between Spring Boot and the Neo4j database? ###### Is Neo4j OGM used to map Java objects to Neo4j nodes and relationships? ###### Has one of the algorithms in Neo4j Graph Algorithms Library (content-based, collaborative filtering...) been employed to implement an efficient and accurate recommendation algorithm? ###### Does the auditee understand enough the Cypher Query Language used to express complex recommendation logic? ###### Is the Recommendation microservice generating accurate movie recommendations based on user ratings and related movies? ##### Search Functionality ###### Can users search for movies by various criteria, such as title, genre, release date, etc.? ##### Movie Details ###### Are movie details, including title, release date, genre, and rating, accurately displayed on the movie details page? ##### Rating Movies ###### Does the page for rating movies work as intended? ##### Viewing Recommendations ###### Can users view movie recommendations based on their ratings? ##### Saving Movies ###### Is there a feature allowing users to save movies to a watchlist? ##### Sharing Recommendations ###### Can users easily share movie recommendations with friends? ##### User-Friendly Interface ###### Is the Neo4flix web application's interface user-friendly and intuitive? ##### Web pages ###### Do essential web pages, including login, registration, home, movie details, movie rating, and recommendations, function as expected? #### Security ##### Authentication and authorization ###### Is OAuth 2.0 or JWT properly implemented for user authentication? ###### Is two-factor authentication (2FA) implemented for enhanced security? ##### Password Security ###### Are strong password policies, including complexity requirements, enforced? ##### Data encryption ###### Is sensitive data protected, is HTTPS used and a valid SSL certificate is provided? #### Testing ##### Test thouroughly the application against any possible flaws or edge cases, try as much tests as you can imagine. ###### Does the application appropriately handle errors coming from unexpected input or malicious use of its functionalities? ###### Is it functionning gracefully on stress tests?