SuperAPI AI 工具集

domain-model

智能体与模型

查看项目

更新于 10-15 08:24

技能介绍

Domain Model 是一个面向产品需求文档(PRD)的领域建模技能,其核心作用是把 PRD 中的业务规则和用户旅程翻译成正式的领域模型,涵盖实体(entities)、不变量(invariants)、关系(relationships)和限界上下文(bounded contexts)。

用途 当已经存在 PRD,并且团队需要建立一套共享的领域语言时,可以使用该技能。它帮助把散落在需求文档中的业务概念整理为结构化的领域制品,为后续实现规格提供业务抽象层面的基础。

主要能力 该技能围绕一条工作流展开:discovery(发现)→ entities(实体)→ relationships(关系)→ rules(规则)→ output(输出)。其中存在一个循环:新实体可能反过来重塑关系。

  • Discovery:读取 PRD,是整个建模的起点。
  • Entities:枚举实体,包含属性、不变量和生命周期。
  • Relationships:映射关系,包含基数(cardinalities)和限界上下文。
  • Rules:分配业务规则,将每条 BR-N 关联到一个或多个实体生命周期状态。
  • Output:产出领域制品并向下游交接。

触发方式 该技能由特定指令触发,不同触发词对应不同产出文件:

  • 构建模型(“build domain model”“define entities”“model the domain”)→ discovery.md
  • 枚举实体及其属性、不变量、生命周期 → entities.md
  • 映射关系及其基数和限界上下文 → relationships.md
  • 分配业务规则(“validate BR coverage”“assign rules”)→ rules.md
  • 产出制品(“output”“produce domain.md”)→ output.md
  • 更新模式(“update domain model”“domain gap found”“spec found violation”)→ discovery.md(更新模式)

使用方式与准则

  • 在执行任何其他操作之前先阅读 PRD,模型由 PRD 推导而来。
  • 每个实体都必须能追溯到至少一个 PRD 旅程或功能需求(FR)。
  • 每条 BR-N 都必须分配到一个或多个实体生命周期状态。
  • 显式标记不变量,它们是被执行的契约。
  • 在交接前将实体归入限界上下文。

适用场景 适用于已有 PRD、需要把业务规则与用户旅程形式化为领域模型的团队,尤其是需要建立共享领域语言、为下游实现规格提供业务抽象基础的场景。

限制与反模式

  • 实现泄漏(Implementation Leakage):不要把实现层的数据模型(表名、ORM 类、列类型、外键)与领域概念混在一起。领域模型处于业务抽象层,只包含实体、生命周期状态和不变量。文件路径和代码依据属于下游实现规格,不属于此处。判断标准是:非工程背景的利益相关者能否识别这些语言?如果不能,说明已经泄漏。
  • 过早定稿(Premature Finality):领域模型永远不是最终版本。当实现过程中暴露出缺口(与不变量矛盾的行为、未预料的状态、模型中不存在的实体)时,应进入更新模式,而不是静默修补制品。模型与运行中的系统必须保持同步。

关于该技能的收费、价格、平台支持等信息,资料中暂未提供。