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
Knowledge Level
The Knowledge Level pattern can be used on bounded contexts and aggregates to specify their knowledge level, which can be one of the following values:
- CONCRETE
- META
Syntax
The following examples show how you can specify the knowledge level on a bounded context and on an aggregate:
BoundedContext CustomerManagementContext implements CustomerManagementDomain {
type = FEATURE
domainVisionStatement = "The customer management context is responsible for ..."
implementationTechnology = "Java, JEE Application"
knowledgeLevel = CONCRETE
}
Aggregate Customers {
responsibilities = Customers, Addresses { "Address description ..." }
knowledgeLevel = CONCRETE
Entity Customer {
aggregateRoot
- SocialInsuranceNumber sin
String firstname
String lastname
- List<Address> addresses
}
}
- Previous
- Next