Context Map
The Context Map visualizes the different bounded contexts in the Bartendie system and how they relate to each other. It helps in understanding the system boundaries and integration points.
What is a Context Map?
A Context Map is a strategic design tool from Domain-Driven Design that shows:
- The different bounded contexts in a system
- Their relationships and integration patterns
- The teams or actors that interact with each context
- External systems and their integration points
Bounded Contexts in Bartendie
The diagram below shows the key bounded contexts in the Bartendie system:
Core Domains
These are the most important domains that provide the main value of the system:
- Event Planning Context: Manages events, themes, guests, and planning
- Menu Management Context: Handles menu creation and drink selection for events
- Cocktail Preparation Context: Covers the preparation and serving of drinks
- Recipe Management Context: Manages cocktail recipes and their properties
- Guest Experience Context: Focuses on guest preferences and feedback
Supporting Domains
These domains support the core domains:
- Inventory Management Context: Tracks products, ingredients, and stock levels
- Bar Setup Context: Manages the physical setup and arrangement for events
- Flavor Profile Context: Analyzes and categorizes flavor characteristics
- Scaling & Batch Context: Handles recipe scaling and batch preparation
- Shopping Context: Manages shopping lists and procurement
- Equipment Management Context: Tracks bar tools, equipment, and glassware
Generic Domains
These are common domains that could potentially be outsourced or use off-the-shelf solutions:
- Tagging System Context: Provides categorization and organization through tags
External Systems
The Bartendie system integrates with:
- Supplier System: For ordering supplies and ingredients
- Email/Messaging: For guest communications
- Product Database: For product information lookup
- Barcode Scanner: For scanning product barcodes
Key Actors
The system interacts with:
- Host: Plans events, creates menus, and manages inventory
- Bartender: Executes cocktail preparation, sets up the bar, and creates recipes
- Guests: Provide preferences and feedback, influencing future menus and events
Context Relationships
The arrows in the diagram show how contexts relate to each other:
- Customer/Supplier: Where one context provides services to another
- Partnership: Where contexts collaborate to provide a feature
- Shared Kernel: Where contexts share common models
- Conformist: Where one context adapts to another's model
Understanding these relationships helps in designing the integration points between different parts of the system and maintaining appropriate boundaries.