ddd

Model complex business domains into bounded contexts, aggregates, and event catalogs.

26|8|Updated Mar 19, 2026
One-click install
npx skills add https://github.com/arbazkhan971/godmode --skill ddd-arbazkhan971
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ddd
Source: https://github.com/arbazkhan971/godmode/tree/main/skills/ddd
Command: npx skills add https://github.com/arbazkhan971/godmode --skill ddd-arbazkhan971

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Helps teams and engineers model complex business domains, clarify ownership boundaries, and convert ambiguous business rules into a consistent domain model so implementations align with the core business intent and avoid an anemic domain design.

Core Features & Use Cases

  • Strategic Design: Bounded context discovery, context mapping, and establishing a ubiquitous language shared by stakeholders and developers.
  • Tactical Design: Aggregate boundary diagrams, entity and value object design, invariants, transaction boundaries, and repository interfaces.
  • Event Storming & Cataloging: Structured event discovery, timeline ordering, command-event mapping, and a domain event catalog for cross-context communication.
  • Implementation Scaffolds: Directory structures, skeleton domain code, and recommended commit and documentation artifacts to transition models into implementation.
  • Use Case: Model an e-commerce order lifecycle to produce ordering and fulfillment bounded contexts, aggregate designs for Order and Inventory, and a publishable event catalog.

Quick Start

Ask the assistant to "model the domain for an e-commerce platform and produce bounded contexts, aggregate boundaries, a domain event catalog, and an implementation scaffold".

Frequently Asked Questions about ddd

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I model bounded contexts for a complex business domain?

To model bounded contexts for a complex business domain, you define ownership boundaries, discover contexts through strategic design, and establish a ubiquitous language shared by stakeholders and developers to ensure implementations align with core business intent.

What is the best way to design aggregates and avoid an anemic domain model?

Designing aggregates to avoid an anemic domain model requires defining aggregate boundaries, entities, value objects, and invariants to enforce transaction boundaries and consistency rules, ensuring the domain model encapsulates core business behavior rather than just data structure.

Can I generate a domain event catalog from an event storming session?

Yes, you can generate a domain event catalog from an event storming session by mapping structured event discovery, timeline ordering, and command-event mapping to produce a publishable catalog for cross-context communication.

How do I create an implementation scaffold from a domain model?

You create an implementation scaffold from a domain model by translating tactical designs like aggregate boundaries and repository interfaces into directory structures, skeleton domain code, and recommended documentation artifacts to transition models into implementation.

When do I need context mapping for software architecture?

You need context mapping for software architecture when multiple teams own different parts of a complex domain, requiring synchronization of ubiquitous language and cross-team communication to establish clear ownership boundaries and translate ambiguous business rules consistently.