| name | domain-modeling |
| description | 知识先行的领域建模技能。划定限界上下文,设计核心聚合,建立通用语言。 包含限界上下文识别、上下文映射、聚合设计四条规则、CQRS/事件溯源决策。 基于 DDD 方法论,配合 Generator-Evaluator 反 LLM 缺陷协议。 触发词:领域建模、限界上下文、聚合设计、DDD、通用语言、上下文映射、领域事件、CQRS。 当用户说"划分上下文"、"设计聚合"、"领域建模"时触发。
|
Domain Modeling — 领域建模
核心理念
知识先行,角色后置。
每个建模决策必须引用 knowledge/ 中的决策框架 [K],不凭直觉。
生成(Generator)和评估(Evaluator)由不同角色执行。
文件结构
.claude/skills/domain-modeling/
├── SKILL.md ← 你在这里
├── knowledge/domain-modeling.md ← DDD: 限界上下文/聚合/事件/CQRS
├── knowledge/software-design-philosophy.md ← APoSD: 深模块/信息隐藏/分层
├── roles/product-analyst.md ← Generator: 业务验证
├── roles/reviewer.md ← Evaluator: 对抗性评估
├── references/PROTOCOL.md ← 反 LLM 缺陷协议(全程约束)
└── templates/
├── checkpoint.md ← 阶段检查点格式
└── progress.md ← design-progress.json 格式
前置条件
本 skill 的输入是 product-discovery 的 checkpoint-1-discovery.yaml。
如果尚未完成需求发现,建议先使用 /product-design 需求分析。
启动步骤
- 读取本文件 — 了解工作流
- 读取
.claude/skills/domain-modeling/references/PROTOCOL.md — 了解反 LLM 缺陷约束
- 上下文重置 — 声明"阶段 2 开始,以下仅依赖 checkpoint-1"
- 加载
.claude/skills/domain-modeling/knowledge/domain-modeling.md — 建模的核心知识
- 加载
.claude/skills/domain-modeling/knowledge/software-design-philosophy.md — APoSD 深模块原则
- 走收敛循环 — GENERATE → EVALUATE → RESOLVE → CHECK
- 产出 checkpoint — checkpoint-2-modeling.yaml
Sprint 契约
- 输入: checkpoint-1-discovery.yaml(需求发现产出)
- 产出: 限界上下文图 + 上下文映射 + 聚合设计 + checkpoint-2-modeling.yaml
- 收敛标准: Rubric 每项 ≥ 7/10
- 迭代: 持续直到收敛(不限轮次)
- Generator:
.claude/skills/domain-modeling/roles/product-analyst.md(业务验证)
- Evaluator:
.claude/skills/domain-modeling/roles/reviewer.md(或独立 Subagent)
收敛循环
┌─────────────────────────────────────────────────┐
│ GENERATE → EVALUATE → RESOLVE → CHECK │
│ (生成方案) (独立评估) (修正) (收敛检查) │
│ ▲ │ │
│ │ 未收敛 │ │
│ └──────────────────────────────────┘ │
│ 已收敛 ↓ │
│ CHECKPOINT(固化 + 交接) │
└─────────────────────────────────────────────────┘
步骤 1:上下文重置 + 读取 checkpoint-1
- 声明:"阶段 2 开始,以下仅依赖 checkpoint-1"
- 确认需求列表和优先级
步骤 2:知识驱动建模
- 读取
.claude/skills/domain-modeling/knowledge/domain-modeling.md
- 读取
.claude/skills/domain-modeling/knowledge/software-design-philosophy.md — 用深模块/信息隐藏原则指导聚合设计
- 用"识别限界上下文"框架从业务流程出发
- 用"上下文分类"区分核心域/支撑域/通用域
- 用"聚合设计四条规则"设计每个核心域的聚合
步骤 3:GENERATE(product-analyst + system-architect 协作)
- 输出限界上下文图 + 上下文映射 + 核心聚合设计
- 每个上下文标注分类(核心域/支撑域/通用域)[K]
- 每个聚合定义不变量
步骤 4:EVALUATE(reviewer 角色,独立评估)
| 维度 | 权重 | 评估问题 |
|---|
| 边界合理性 | 30% | 上下文边界与业务部门一致? |
| 聚合粒度 | 25% | 聚合是否足够小?有无上帝聚合?符合深模块原则? |
| 一致性方案 | 25% | 跨聚合一致性如何保证? |
| 通用语言 | 20% | 术语表是否明确无歧义? |
强制找到 ≥2 个问题。向用户展示评估报告。
步骤 5:RESOLVE + CHECK
收敛条件(全部满足才可退出):
- ✓ 每个上下文有明确的通用语言术语表
- ✓ 上下文映射覆盖所有上下文间关系
- ✓ 每个聚合有不变量定义
- ✓ 核心域已标识且获得最优资源分配
- ✓ Rubric 每项 ≥ 7/10
步骤 6:产出 checkpoint-2-modeling.yaml + 更新 design-progress.json
关键规则
- GENERATE 和 EVALUATE 由不同角色执行
- EVALUATE 必须找到 ≥ 2 个问题
- 迭代不限轮次,持续直到 Rubric 收敛;仅当超出 LLM 能力时标
[ESCALATE]
- 上下文重置:只依赖 checkpoint,不翻之前的对话
- 所有决策标注来源:
[K] 知识 / [V] 已验证 / [E:置信度] 经验 / [U] 用户 / [A] 假设
[A] 必须在本阶段内消解
与架构设计的衔接
本 skill 的 checkpoint-2-modeling.yaml 是 system-architecture skill 的输入。
完成领域建模后,建议用户使用 /architecture-design 继续架构设计。