CML Reference - Introduction
Language Semantics
Context Map
Bounded Context
Domain and Subdomain
Domain Vision Statement
Partnership
Shared Kernel
Customer/Supplier
Conformist
Open Host Service
Anticorruption Layer
Published Language
Responsibility Layers
Knowledge Level
Aggregate
Tactic DDD Syntax
Application and Process Layer
User Requirements
Stakeholders
Value Registers
Imports
Architectural Refactorings
AR-1: Split Aggregate by Entities
AR-2: Split Bounded Context by Features
AR-3: Split Bounded Context by Owner
AR-4: Extract Aggregates by Volatility
AR-5: Extract Aggregates by Cohesion
AR-6: Merge Aggregates
AR-7: Merge Bounded Contexts
AR-8: Extract Shared Kernel
AR-9: Suspend Partnership
AR-10: Change Shared Kernel to Partnership
AR-11: Change Partnership to Shared Kernel
Feature Support
We currently offer Context Mapper for Visual Studio Code and Eclipse:
- Context Mapper for VS Code (Marketplace)
- Context Mapper for Eclipse (Marketplace)
Supported Features per IDE
The following table illustrates which features are already implemented in VS Code. Both IDEs shall support all features in the future.
| Feature | Supported in Eclipse Plugin | Supported in VS Code Extension |
|---|---|---|
| Editor: Syntax Highlighting | yes | yes |
| Editor: Auto-completion | yes | yes |
| Editor: Hover texts with pattern descriptions | yes | yes |
| Editor: Semantic validators | yes | yes |
| Graphical Context Map generator | yes | yes |
| PlantUML generator | yes | yes |
| MDSL generator | yes | yes |
| Generic text file generator | yes | yes |
| OOAD transformation: Derive Subdomain from user requirements | yes | yes |
| OOAD transformation: Derive Bounded Context from Subdomains | yes | yes |
| OOAD transformation: Derive frontend and backend systems | yes | yes |
| OOAD transformation: Split system context into subsystems | yes | yes |
| AR: “Split Aggregate by Entities” | yes | yes |
| AR: “Split Bounded Context by Use Cases” | yes | yes |
| AR: “Split Bounded Context by Owner” | yes | yes |
| AR: “Extract Aggregates by Volatility” | yes | yes |
| AR: “Extract Aggregates by Cohesion” | yes | yes |
| AR: “Merge Aggregates” | yes | yes |
| AR: “Merge Bounded Contexts” | yes | yes (with known limitation) |
| AR: “Extract Shared Kernel” | yes | yes |
| AR: “Suspend Partnership” | yes | yes (with known limitation) |
| AR: “Change Shared Kernel to Partnership” | yes | yes |
| AR: “Change Partnership to Shared Kernel” | yes | yes |