SuperAPI AI 工具集

documentation-criteria

编程与开发

查看项目

更新于 10-16 01:57

技能介绍

用途

Documentation Creation Criteria 是一份「路由决策」文件:它决定一项变更需要哪些文档、这些文档存放在哪里。至于每份文档内部写什么,由其对应模板定义,模板从存储位置一节链接过去。

每份文档固化什么

每份文档固化一类仓库本身无法提供的决策。某个章节若留空,就会变成下方所列消费者日后的猜测,且不留下当时假设的记录。

  • PRD:固化业务结果与后续工作可追溯的验收标准。其 AC ID 是 Design Doc、UI Spec 与测试选择复用的追溯键;没有它们,各消费者会从散文中重新推导需求,测试与其所保护价值之间的联系就会丢失。实现细节属于 Design Doc,选择理由属于 ADR,阶段与任务拆分属于 Work Plan。
  • ADR:记录一项持久的技术选择及其胜出的备选项,使后续工作能区分审慎决策与偶然结果。没有它,未来的变更要么重跑同一比较,要么悄悄将其推翻。Accepted 记录当前所选的手段,而非保留它的义务:当后续证据支持一个更小的充分选择时,应在已确认的结果、期望未来的需求与非目标仍然成立的前提下,更新或取代该决策。端到端实现设计属于 Design Doc,排期与仓库任务属于 Work Plan。
  • UI Spec:在组件存在之前记录屏幕结构、转场、组件/状态契约与视觉验收,使拆分在实现前决定,而非实现过程中逐组件决定。当这些决策仍开放时创建;若某个明显的、仓库支持的既有模式已能决定它们,则复用已批准的 UI Spec,或直接进入 Design Doc。技术实现与 API 契约属于 Design Doc。
  • Design Doc:记录已确认范围的完整实现设计:流程、契约、变更影响与验证策略。任务执行将其视为首要技术基线,因此实现不会悄悄臆造缺失的 How。当仓库证据使技术 How 失效,而已确认结果、期望未来需求与非目标仍然成立时,应通过各自负责的工作流修正实现与受影响的技术产物,而无需重开产品需求。技术选择理由属于 ADR,排期与分工属于 Work Plan。
  • Work Plan:固化任务顺序、依赖、可执行验证与最早的纵向验证点。没有它,任务顺序会按文件布局而非依赖排列,集成风险被推迟到工作末尾。设计细节从 Design Doc 引用,而非重述。

创建决策矩阵

结构规模与基准文档、创建顺序:

结构规模 基准文档 创建顺序
Small 无 直接实现
Medium Design Doc → Work Plan 从 Design Doc 开始
Large PRD → Design Doc → Work Plan PRD 批准后继续

按此顺序构建一条路径:

  1. 依据结构规模选择基准路径。
  2. 在 Design Doc 之前紧邻插入适用的 UI Spec。
  3. 一个或多个符合条件的 ADR 决策点,在 Design Doc 之前紧邻插入一批 ADR。符合条件的决策点会把规模下限设为 Medium。

结构规模

对决策负担分类,而非仓库布局。文件数量只是佐证。

规模 结构条件
Small 一个连贯结果在一个职责边界内有一个明显的、仓库支持的实现,且没有未决的持久选择
Medium 一个连贯结果跨边界协调,或需要调查一个可能持久的选择
Large 多个各自独立有价值的结果需要各自的设计决策

符合条件的 ADR 决策点会把下限设为 Medium,因为它产生一项持久决策。当一个连贯结果跨多个层时仍为 Medium;Large 要求多个独立有价值的结果且各有独立设计决策。

ADR 决策过滤器

对已确认实现范围内的每个技术话题,先应用 Choice 过滤器,再应用 Durability 过滤器。二者独立于结构规模应用,并先检查已有 ADR。

  • Choice 需要判断:当前需求、已接受决策与有代表性的仓库证据支持至少两个可信、实质不同的选项,其选择需要比较。
  • 决策是持久的:在这些选项中做出选择会实质改变职责、依赖方向、共享契约、持久化、技术依赖、可逆性或未来工作必须保留或理解的生命周期成本。

对每个通过两个过滤器的话题各创建一份 ADR,并将整批一起评审。当若干选择必须一起选定或重新考虑时,将其视为一个决策点;可独立重新审视的选择则分开。

符合条件的持久选择包括:

  • 引入或替换技术、库、平台、存储模型或外部依赖;
  • 在存在可信替代方案时,改变所有权、依赖方向、信任边界或共享公共契约;
  • 用另一个通过两个过滤器的持久选择,替换已接受的架构决策;
  • 选择不可逆或反转成本很高的数据或兼容性策略。

局部的契约、数据流、状态或组件变更,若遵循已接受的设计、有一个明显的仓库支持实现、或保持低成本可逆,则归入 Design Doc。文件、消费者、嵌套层级、状态、步骤与异步操作的数量只是佐证,而非 ADR 标准。只有上述符合条件的选择才产生 ADR;一般性技术关切、运维可能性与被否决的活动只能作为该判定的佐证。

存储位置

文档 路径 命名约定 模板
PRD docs/prd/ [feature-name]-prd.md prd-template.md
ADR docs/adr/ ADR-[4-digits]-[title].md adr-template.md
UI Spec docs/ui-spec/ [feature-name]-ui-spec.md ui-spec-template.md
UI Spec Assets docs/ui-spec/assets/{feature-name}/ 原型代码文件 -
Design Doc docs/design/ [feature-name]-design.md design-template.md
Work Plan docs/plans/ YYYYMMDD-{type}-{description}.md plan-template.md
Task File docs/plans/tasks/ {plan-name}-task-{number}.md task-template.md

注:Work Plan 被 .gitignore 排除。

参考

各模板定义其文档的内容、结构要素与图表标准:prd-template.md、adr-template.md、ui-spec-template.md、design-template.md、plan-template.md、task-template.md。

适用场景与限制

适用场景:决定文档范围、判断某项变更应创建哪些文档、确定是否新建 ADR、规划文档创建顺序与存放位置。限制:本文档只负责文档的选择与路由,各文档的具体写法需参照对应模板;具体功能、收费、价格、平台与效果等信息暂未提供。