domain-modeling

Design DDD domain models with bounded contexts and aggregates for ScalarDB.

6|Updated Feb 18, 2026
One-click install
npx skills add https://github.com/wfukatsu/coding-agent-for-scalardb --skill domain-modeling-wfukatsu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-modeling
Source: https://github.com/wfukatsu/coding-agent-for-scalardb/tree/main/skills/domain-modeling
Command: npx skills add https://github.com/wfukatsu/coding-agent-for-scalardb --skill domain-modeling-wfukatsu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes assets (resource) and references (resource) components.

What problem does it solve?

DDDの原則に基づくドメインモデルの設計支援を行います。境界コンテキスト、ユビキタス言語、エンティティ、値オブジェクト、集約、ドメインサービス、ドメインイベントの設計を統合し、ヘキサゴナルアーキテクチャとScalarDBのトランザクション境界を考慮します。中間状態はresearch/に記録されます。

Core Features & Use Cases

  • 戦略的設計: 境界コンテキストの定義、コンテキストマップ、ユビキタス言語の整備
  • 戦術的設計: 値オブジェクト・エンティティ・集約・ドメインサービス・ドメインイベント・ファクトリの設計
  • アーキテクチャ統合: ヘキサゴナルアーキテクチャとScalarDB統合の考慮

Quick Start

Run the domain-modeling skill to generate a complete domain model following DDD practices.

Frequently Asked Questions about domain-modeling

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

FAQPage Schema
How do I design domain models for ScalarDB using DDD principles?

Domain modeling for ScalarDB involves identifying bounded contexts, aggregates, entities, and value objects while aligning transaction boundaries with hexagonal architecture. This process ensures ubiquitous language and repository boundaries map correctly to ScalarDB managed and non-managed tables.

What is the difference between strategic and tactical domain-driven design?

Strategic domain-driven design defines bounded contexts, context maps, and ubiquitous language, while tactical domain-driven design implements value objects, entities, aggregates, domain services, and domain events. Both layers are integrated with hexagonal architecture and ScalarDB transaction boundaries.

Can I use hexagonal architecture with ScalarDB transaction boundaries?

Hexagonal architecture integrates with ScalarDB by isolating domain logic from persistence concerns. Repository boundaries and data persistence patterns are designed to respect ScalarDB transaction boundaries, ensuring consistent aggregate operations across managed and non-managed tables.

How do I define aggregates and value objects in a bounded context?

Defining aggregates and value objects within a bounded context requires establishing a ubiquitous language and mapping domain events. Tactical design patterns structure entities and domain services while maintaining consistency boundaries for ScalarDB persistence operations.

What are ScalarDB managed versus non-managed tables in domain modeling?

ScalarDB managed tables handle transaction boundaries directly, while non-managed tables require external coordination. Domain modeling maps repository boundaries and persistence patterns to these table types, ensuring aggregate consistency within the hexagonal architecture.

When should I use domain events in domain-driven design?

Domain events should be used when state changes within aggregates need to propagate across bounded contexts. They decouple subsystems within the hexagonal architecture and maintain data consistency across ScalarDB transaction boundaries.