domain-driven-design

A decision-support tool for the diagnosis and treatment of adult ADHD.

41|5|Updated Sep 30, 2025
One-click install
npx skills add https://github.com/efekrbas/discord-hypesquad-manager --skill domain-driven-design-efekrbas
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-driven-design
Source: https://github.com/efekrbas/discord-hypesquad-manager/tree/main/.agents/skills/domain-driven-design
Command: npx skills add https://github.com/efekrbas/discord-hypesquad-manager --skill domain-driven-design-efekrbas

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you decide when Domain-Driven Design is worth the complexity and turns messy business rules into clear boundaries, shared language, and implementation guidance.

Core Features & Use Cases

  • Strategic Modeling: Identify subdomains, bounded contexts, ownership boundaries, and a ubiquitous language.
  • Tactical Guidance: Map domain concepts to aggregates, value objects, repositories, and domain events.
  • Evented Architecture Planning: Evaluate when CQRS, event sourcing, sagas, or projections are justified.
  • Use Case: Use it when a product has shifting rules, multiple teams, or integration friction and you need a practical DDD plan instead of overengineering.

Quick Start

Use the domain-driven-design skill to assess the domain, define boundaries, and route the work to the most appropriate DDD follow-up skill.

Frequently Asked Questions about domain-driven-design

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

FAQPage Schema
How do I identify bounded contexts and a ubiquitous language for complex software architecture?

To establish bounded contexts and ubiquitous language, you assess the domain to identify subdomains, ownership boundaries, and shared terminology. This structures complex domains into clear boundaries and implementation guidance.

When should I use event sourcing, sagas, and CQRS in domain-driven design?

Event sourcing, sagas, and CQRS are justified when evaluating evented architecture planning within domain-driven design. You must apply explicit viability checks to determine if these patterns are necessary for your shifting business rules.

How do I map domain concepts to aggregates, value objects, and domain events?

Mapping domain concepts to aggregates, value objects, repositories, and domain events is achieved through tactical guidance. This process translates strategic domain models into concrete implementation artifacts.

Do I need domain-driven design when experiencing integration friction across multiple teams?

Domain-driven design is needed when a product has shifting rules, multiple teams, or integration friction. It helps decide when the complexity is worth it and turns messy business rules into clear boundaries.

What is the best way to avoid overengineering when adopting domain-driven design?

The best way to avoid overengineering is to require explicit viability checks before adoption. This ensures you produce a practical DDD plan with decision logs instead of unnecessary complexity.