Skip to content

利用 AI 进行 DDD 战略设计:界定领域边界与统一语言

解决复杂业务系统在演进过程中出现的“大泥潭”问题,通过 AI 辅助进行 DDD 战略设计,明确子域划分、界定上下文边界并建立统一语言。

为什么需要这个技能

在处理大型复杂业务时,开发者最容易陷入的困境是:业务概念在不同模块中含义不一,或者一个服务承载了过多的职责(巨石架构)。

单纯的战术设计(如 Repository、Entity)无法解决模块划分的根本问题。战略设计(Strategic Design)通过对业务领域的深度分析,将复杂的整体拆分为一个个有清晰边界的上下文(Bounded Context),确保团队的所有权与业务边界对齐,从而降低系统耦合度并提升开发协作效率。

适用场景

  • 单体拆分:需要将一个臃肿的单体应用或微服务集群按领域边界进行重新划分时。
  • 业务梳理:在项目启动阶段,需要定义核心域(Core)、支撑域(Supporting)和通用域(Generic)时。
  • 对齐认知:与业务专家(Domain Expert)协作,构建一套全团队认可的统一语言(Ubiquitous Language)词典。
  • 组织对齐:根据上下文边界来重新规划团队职责和代码所有权。

核心工作流

  1. 能力提取与子域分类:分析业务能力,将领域划分为核心域(直接产生竞争力)、支撑域(辅助核心域)和通用域(标准成熟方案)。
  2. 界定上下文边界:围绕数据一致性和团队所有权,定义 Bounded Context,明确每个上下文内部的职责。
  3. 构建统一语言词典:建立术语表(Glossary),定义标准术语并明确禁止使用的模糊词汇(Anti-terms)。
  4. 记录架构决策:在实施编码前,将上下文边界和划分理由记录在 ADR(架构决策记录)中。

如果需要更具体的执行框架,可以参考 references/strategic-design-template.md 中的模板。

下载和安装

下载 ddd-strategic-design 中文版 Skill ZIP

解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md

你可能还需要

暂无推荐