$20
Introduction
The purpose of this assignment is to provide you with experience in conceptual modelling. You are given a partial domain description for an Online Book Seller (OBS). Your task is to create an entity relationship diagram that can capture all the concepts and requirements conveyed in this description.
This is a group assignment. You must be enrolled in an assignment group on Canvas (3 people per group).
Please also keep an eye on your email and Canvas for any announcements that may be made
Domain Description for an Online Book Seller (OBS)
OBS has given you the task of developing a new conceptual model that represents the customer-centric parts of the data held within their business. The full OBS system also holds data related to the order, supplier, payments and delivery processes, but these systems (and the data that drives them) are out of scope for this assignment.
The core business of OBS is selling books to its customers, in either paper or eBook editions, and a key part of doing this successfully is making it easy for customers to find (and buy) books of interest. Customers must be able to search for books by title/authors, browse through books in specific genres or on curated lists, and find books similar to ones they’ve already purchased or found while searching or browsing.
Once customers have purchased a book, they can give it a rating (0-10) and (optionally) leave a short review to help other customers who may be interested in their opinion. OBS staff can also review/rate books, and they can also create lists of books that they have reviewed and recommend (curated lists).
OBS has also implemented a background AI-based ‘recommender’ system that periodically takes customer purchasing histories, and combines this with other data, such as reviews and book lists, to find other books that may appeal to a customer. The next version of this recommender system will be built on top of a database based on your conceptual model, but details of its implementation are out of scope for this assignment.
This description is very high-level as the purpose of the assignment is to get you to think about the entities and relationships that would be needed. Your solution only has to address these stated requirements, but you will not be penalised for not-strictly-necessary entities, relationships or attributes, such as those that might be needed to support out-of-scope functionality, such as the payment and delivery processes.