Below is an example of a Mermaid diagram that shows a high-level context diagram for our event-based reservation system using Wolverine. In this diagram, you can see external actors (like customers, an administrator, payment gateway, etc.) interacting with internal components such as a Reservation Frontend, Reservation Service, and the Wolverine Event Bus responsible for handling events.

flowchart LR %%External Actors Customer[Customer] PaymentGateway[Payment Gateway] NotificationService[Notification Service] Administrator[Administrator] ResourceCatalog[Resource Catalog] %%Internal System Components subgraph System [Reservation System] Frontend[Reservation Frontend] Service[Reservation Service] EventBus[Wolverine Event Bus] end %%Interactions between External Actors and the System Customer -->|Creates/Manages Booking| Frontend Frontend --> Service Service -->|Publishes Events| EventBus EventBus -->|Notifies| PaymentGateway EventBus -->|Notifies| NotificationService Service -->|Checks Availability| ResourceCatalog Administrator -->|Manages System| Service

Explanation

  • External Actors:

    • Customer: Initiates reservations by interacting with the frontend.
    • Administrator: Manages or oversees the system, including any adjustments and maintenance.
    • Payment Gateway & Notification Service: Receive events from the system through the Wolverine Event Bus for payment processing and sending confirmations.
    • Resource Catalog: Provides resource availability data.
  • Internal System Components:

    • Reservation Frontend: The user interface through which customers create or manage reservations.
    • Reservation Service: Contains the core business logic, managing reservations and enforcing business rules.
    • Wolverine Event Bus: Acts as the backbone for routing events to external and internal subscribers, decoupling processing.

This context diagram provides a clear, high-level view of how your event-driven reservation system interacts with all the relevant external entities and processes.

Related Posts