Domain driven design
Domain-Driven Design concepts including ubiquitous language, bounded contexts, entities, value objects, aggregates, strategic and tactical design, context mapping, EventStorming, and domain storytelling. Use when modeling domains, defining bounded contexts, applying DDD patterns, or understanding strategic vs tactical design.From its SKILL.md
npx -y skills add itzcull/software-skills --skill domain-driven-designAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.4 KB, as published. Nobody here has run it
Purpose
Provide comprehensive reference material on Domain-Driven Design. Covers the strategic patterns for organising complex domains and the tactical patterns for implementing domain models in code.
When to use
- Modeling a new domain or bounded context
- Deciding between entities and value objects
- Defining ubiquitous language for a team
- Applying strategic design (context mapping, subdomains)
- Implementing tactical patterns (aggregates, repositories)
- Running EventStorming or domain storytelling sessions
- Identifying and avoiding anemic domain models
Key concepts
- Ubiquitous Language - consistent terminology across code and business
- Bounded Context - explicit boundary with consistent language
- Entity - identity-based objects
- Value Object - immutable, equality by attributes
- Strategic Design - contexts, mapping, language first
- Tactical Design - entities, value objects, aggregates within contexts
Related skills
- Load
design-patternsfor Repository and Specification patterns - Use the
domain-designeragent for interactive DDD modeling
Reference files
- Overview - Index of all DDD concepts
- DDD Overview - Comprehensive DDD introduction
- Ubiquitous Language
- Bounded Context
- Domain
- Subdomain
- Entity
- Value Object
- Domain Model
- Strategic Design
- Tactical Design
- Anti-Corruption Layer
- Anemic Model
- Shared Kernel
- Context Mapping
- Domain Storytelling
- EventStorming