Catalog (v1.0.0)

The Catalog domain manages products and user reviews for the BookWorm platform

Overview

The Catalog domain is responsible for managing the products that are available for purchase in the BookWorm platform and handling product ratings and reviews. It consists of two main services:

  1. Product Service: Serves as the central repository for all book-related information including metadata, inventory status, pricing, and categorization. It allows customers to browse the extensive collection of books, view detailed product information, and search based on various criteria.

  2. Rating Service: Manages customer reviews, ratings, and feedback for books in the catalog. It provides functionality for users to rate books, write reviews, and view aggregated rating statistics.

The domain provides robust management capabilities for product categories, series, collections, publishers, and user-generated content. It maintains relationships between books, such as series orders, related titles, author bibliographies, and user reviews.

For administrators, the Catalog domain offers comprehensive management tools for both product information and user-generated content, allowing them to:

  • Add and update book information
  • Manage inventory levels
  • Control pricing and discounts
  • Moderate user reviews and ratings
  • Generate reports on product performance and user feedback

As a core domain in the BookWorm ecosystem, Catalog integrates with other services like the Basket domain for purchasing flows and the Ordering domain for inventory verification during checkout processes.

Event Storming Session

The event storming session for the Catalog domain was conducted to identify key events, commands, and aggregates. The session included stakeholders from various teams, including business analysts, developers, and product owners. The following key events were identified:

Bounded context

Messages for this domain

Sends messages (3)

Quickly find the message you need by searching for the name, type, or summary.
NameVersionTypeSummary
Book Updated Rating Fail
v1.0.0eventRepresents a failed integration event when updating a book's rating in the system
Feedback Created
v1.0.0eventRepresents a successful integration event when creating a feedback in the system
Feedback Deleted
v1.0.0eventRepresents a successful integration event when deleting a feedback in the system

Receives messages (23)

Quickly find the message you need by searching for the name, type, or summary.
NameVersionTypeSummary
Update Publisher
v1.0.0commandUpdate a publisher
List Publishers
v1.0.0queryList all publishers
Create Publisher
v1.0.0commandCreate a publisher
Update Category
v1.0.0commandUpdate a category