本Skill指导用户编写符合企业级标准的TRS系统功能设计文档。基于企业顾问团队标准,融合GitHub热门PRD模板最佳实践。
核心原则: 证据优于断言,验证先于结论。
最终交付的文档至少满足下面“最小可用规格”(信息不足允许先以假设补齐,但必须显式标注“假设/待确认”):
> 接口契约写法规范(面向业务+开发双读者):
>
> 功能设计文档不是技术接口文档,接口契约章节应避免原始JSON代码,建议按以下结构撰写:
>
> 1. 操作总览表(7列):序号 / 操作名称 / 说明 / 调用时机
> 2. 每个操作:用途说明 + 字段含义表(不用JSON)+ 业务校验规则(用自然语言)
> 3. 不展示:HTTP方法、URL路径、原始JSON响应、技术响应码
>
> 技术细节(接口路径、参数类型、错误码)由后端工程师按接口规范自行补充。
> 红线:不得用“应该/尽量/支持/优化”等模糊词代替可验证标准;关键声明必须给出验证方法或证据来源。
使用场景:
| 场景 | 说明 | 触发关键词 |
|---|---|---|
| ------ | ------ | ----------- |
| 传统需求沟通 | 用户口头描述需求,通过5W1H深度挖掘 | "我需要一个XX功能" |
| 原型驱动(推荐) | 用户提供HTML/图片等原型,先理解原型再写PRD | "给你原型"、"看这个设计" |
| 文档优化 | 优化或重构现有功能设计文档 | "优化文档"、"改版" |
| 模板查询 | 询问文档模板或编写规范 | "模板"、"怎么写" |
不适用于:
未经验证的文档声称完整 = 作弊,不是效率
违反这条规则的借口 | 现实
"我凭经验写就行" | 经验不等于规范,需要逐项确认
"这功能简单,跳过检查" | 越是简单功能越容易忽略关键细节
"时间紧,先写再说" | 返工的时间比预防的时间更长
"差不多就行了" | 开发人员会问你补充细节
本skill支持两种工作模式:传统需求沟通 和 原型驱动(推荐)。
digraph workflow {
rankdir=TB;
"确认输出格式" -> "问题定义" -> "深度需求挖掘" -> "引导编写" -> "质量检查" -> "优化建议";
"质量检查" -> "通过?" [shape=diamond];
"通过?" -> "优化建议" [label="否"];
"通过?" -> "完成" [label="是"];
}
适用于用户口头描述业务需求,通过5W1H框架深度挖掘。
适用于用户提供HTML/图片/Figma等原型设计。
digraph workflow {
rankdir=TB;
"接收原型" -> "分析原型结构" -> "输出理解摘要" -> "用户确认" -> "补充业务细节" -> "编写PRD" -> "质量检查" -> "完成";
"用户确认" -> "继续询问" [label="有疑问", style=dashed];
"继续询问" -> "输出理解摘要";
}
详细说明 → 见 reference/prototype-driven.md
| 条件 | 推荐模式 |
|---|---|
| ------ | --------- |
| 用户提供了原型文件 | 原型驱动 |
| 用户口头描述需求 | 传统需求沟通 |
| 用户说"给你原型先看看" | 原型驱动 |
| 用户问"PRD模板怎么写" | 传统需求沟通 |
首先判断用户属于哪种场景:
场景1:用户提供原型
场景2:用户口头描述需求
在编写PRD的每个关键节点,AI主动触发自检评估。目标:写出清晰、无歧义、可执行的文档;识别自身无法填补的缺口,显式标注给产品经理。
在完成以下章节后,自动触发自检,不必等用户提醒:
| 完成节点 | 触发时机 |
|---|---|
| --------- | --------- |
| 第2章 用户与价值 | 用户画像/使用场景/成功指标 写完后 |
| 第3章 业务背景与流程 | 现状流程/目标流程 写完后 |
| 第5章 功能列表 | 功能清单全部列出后 |
| 第7章 详细设计 | 所有页面/接口/数据项写完后 |
| 全文初稿 | 文档主体完成后、提交前 |
| 维度 | 评估问题 | 扣分触发条件 |
|---|---|---|
| ------ | --------- | ------------ |
| ① 完整性 | 所有"最小可用规格"章节是否齐备? | 任意必填章节缺失 → 该维度-10 |
| ② 无歧义 | 字段描述、流程分支、状态值是否有二义性? | 存在"可能"/"大概"/"视情况"等模糊词 → -5/处 |
| ③ 可追踪 | 功能 → 验收标准 → 详细设计三者是否对齐? | 功能在验收标准和详细设计中找不到对应项 → -10/处 |
| ④ 一致性 | 跨章节字段名/状态值/操作名是否统一? | 同名不同义 或 同义不同名 → -5/处 |
| ⑤ 完整性-数据项 | 数据项表格的必输/新增/编辑列是否填写?值列表是否有来源? | 任意行留空("-"以外的空白)→ -5/行 |
| 总分 | 等级 | 处置动作 |
|---|---|---|
| ------ | ------ | --------- |
| 90-100 | 🟢 优秀 | 直接提交,可选标注"亮点章节" |
| 70-89 | 🟡 良好 | AI自行修复所有"可自完善"项,修复后重评,剩余问题标注给PM |
| 50-69 | 🟠 需改进 | 修复明显缺口,剩余问题全部写入"假设与待确认"表,告知PM |
| < 50 | 🔴 不合格 | 先说明核心缺口在哪,列出补充方向,请PM提供信息后再继续 |
AI自行修复(能修则修):
必须标注PM(不能自填):
标注格式(写入文档"假设与待确认"表):
| 待确认项 | 章节 | 缺失原因 | 影响范围 | 优先级 |
|---------|------|---------|---------|--------|
| 优先级P0/P1/P2的划分标准是什么? | 5.1功能列表 | 业务决策,需PM确认 | 影响开发排序 | 高 |
| 催收短信的发送频率上限? | 7.4操作说明 | 外部合规要求,不在需求范围内 | 影响功能边界 | 中 |
每次自检完成后,在文档末尾追加质控报告(不删除历史报告,保留演进痕迹):
## 质控报告(自动生成)
**自检时间:** YYYY-MM-DD HH:mm
**触发节点:** [章节名]
**评估总分:** X / 100([等级])
**本次自检修复:** [N] 项(详见下方列表)
**待PM确认:** [N] 项(已写入"假设与待确认"表)
#### 本次修复清单
- ① [修复项内容] → [修复方式]
#### 本次待确认清单
- ❓ [待确认问题] → [影响章节] → [优先级]
---
当用户提供原型时,按以下步骤执行:
接收原型 → 读取分析 → 输出理解摘要 → 用户确认 → 补充细节 → 编写PRD
读取规则:
必须输出的内容:
## 原型理解摘要
### 页面关系
(列出所有页面的跳转关系)
### 功能清单
(用表格列出识别到的功能点,标注确认状态)
### 不确定项
(原型无法确定的内容,用❓标记)
不理解的内容,必须标注❓,不得跳过
必须询问的问题:
询问原则:
基于用户回答,补充:
按照标准模板编写,标注来源:
询问用户选择输出格式:
| 格式 | 适用场景 | 特点 |
|---|---|---|
| ------ | --------- | ------ |
| Markdown格式 | 直接查看、GitHub展示 | 标准表格,简洁 |
| Word友好格式 | 最终导出Word | 避免复杂嵌套 |
在进入正文编写前,优先收集下面信息(缺少则记录为“假设 + 待确认问题”,并在相关章节引用):
使用5W1H框架深度挖掘:
Why (为什么) → 业务背景、痛点、数据支撑
What (是什么) → 核心问题、影响范围
Who (谁) → 提出者、使用者、影响者
When (何时) → 使用场景、频率、期望上线
Where (在哪里) → 系统、设备
How (如何) → 解决方案、替代方案
必问要素:
核心功能询问:
TRS系统领域补充(必须覆盖其一或明确“不适用”):
字段设计询问框架:
1. 字段名称?
2. 控件类型?(文本、下拉、日期、数值)
3. 必填?
4. 值列表来源?(取表/快码/手工)
5. 级联关系?(选A后B取什么)
6. 校验规则?(格式、长度、重复)
7. 报错信息?(明确字段+修改建议)
数据项表格规范(最佳实践):
数据项表格必须使用以下11列格式,禁止简化列头:
| 序号 | 字段名 | 控件类型 | 数值类型 | 长度 | 必输 Y/N | 新增 Y/N | 编辑 Y/N | 值列表说明 | 默认值 | 校验规则 | 其他说明 |
字段类型命名规范(统一使用中文):
| 数据库类型 | PRD写法 | 附加要求 |
|---|---|---|
| ----------- | -------- | --------- |
| VARCHAR / NVARCHAR | 字符 | 必须标注长度,如:字符(200) |
| INT / BIGINT | 整数 | 标注是否有范围,如:整数(≥0) |
| DECIMAL / FLOAT | 小数 | 标注精度,如:小数(保留2位) |
| DATE | 日期 | 必须注明格式,如:日期(YYYY-MM-DD) |
| DATETIME / TIMESTAMP | 日期时间 | 必须注明格式,如:日期时间(YYYY-MM-DD HH:mm:ss) |
| BOOLEAN / TINYINT(1) | 布尔 | 值列表写"是/否"或"Y/N" |
| TEXT / CLOB | 长文本 | 注明长度上限(若有) |
新增 Y/N、编辑 Y/N 列的填写规则:
界面流转图规范:
assets/flow-diagram.html),在文档中以引用形式注明Word导出字号规范(微软雅黑):
| 样式 | 字号 | half-points | 字重 | 备注 |
|---|---|---|---|---|
| ------ | ------ | ------------ | ------ | ------ |
| H1 一级标题 | 18pt | 36 | 加粗 | 章节标题 |
| H2 二级标题 | 14pt | 28 | 加粗 | 子章节标题 |
| H3 三级标题 | 12pt | 24 | 加粗 | 详细小节 |
| 正文内容 | 10pt | 20 | 常规 | 段落正文 |
| 表格内容 | 小五(9pt) | 18 | 常规 | 表格内文字 |
| 页眉/页脚 | 小五(9pt) | 18 | 常规 | 页眉/页脚 |
| 说明:Word导出使用 reference.docx 模板(见 templates.md 模板10),Typora 导出 Word 时勾选"使用 pandoc 模板"并指定该文件路径 |
Word表格规范:
reference.docx(位于 skills 根目录,导出时指定路径即可)按照文档结构逐章引导:
章节 | 必填/可选 | 关键点
-----|----------|--------
1. 文档控制 | 必填 | 版本、审核、状态
2. 问题定义 | 必填 | 5W1H、用户画像
3. 业务背景 | 必填 | 四段式结构
4. 总体设计 | 必填 | 流程图、功能列表
5. 详细设计 | 必填 | 数据项、校验、交互
6. 非功能需求 | 建议 | 性能、安全、兼容
7. 发布计划 | 可选 | 上线、回滚、验收
8. 协作管理 | 可选 | 决策、变更、问题
详细章节结构 → 见 reference/document-structure.md
交互协议(建议遵循):
1) 假设表格式必须固定
| 假设ID | 假设内容 | 影响的章节/字段 | 待确认问题 | 风险等级(高/中/低) |
|--------|----------|------------------|------------|------------------|
| A-001 | ... | ... | ... | 高/中/低 |
2) 值列表与校验不允许编造
3) 追溯领域补充项必须“覆盖其一/明确不适用”
追溯谱系、召回与演练、质量放行/冻结、条码/标签、审计留痕、集成与一致性中:4) 输入门禁(阻断项)
5) 输出门禁(完成度门禁)
1-7章必须出现;8章非功能需求与9章发布计划与验收必须出现(简版即可,显式标注“假设/待确认”)10章或11章至少保留其一根据用户确认的复杂度,把 8/9/10/11 的写法裁剪到以下档位之一:
A档(小型):不涉及谱系拆分/合并、召回演练、审计更正/冲销、离线/弱网补传、跨多系统;仅需完成基本 CRUD 与字段级校验。
8/9:简版即可;10/11可不写B档(中型):涉及上述能力中的 1-2 项,或至少存在“值列表/校验/报错”以外的关键业务链路。
8/9:标准版;10建议写;11可选C档(大型):涉及上述能力中的 >=2 项,或明确跨 ERP/MES/WMS/QMS/PLM,多系统一致性/幂等/重放、或必须包含外设采集策略。
8/9:标准或更细;10/11至少写一个为避免“问得不够但又硬写”,每次提问按下面最小集合执行:
Step 0.5(必问 6 项)
追溯粒度(批次/箱/件/序列号,至少1)、关键节点(>=2)、扫码点位与频率(>=1例)、码制/条码规则(允许待确认)、集成系统(或明确“不适用”)、审计留痕/更正机制(需要/不需要/待确认)
Step 1(必问 3 项)
核心问题(1-2句)、成功指标(>=2条,SMART+基线/目标/方法/周期)、用户画像(>=1角色+典型场景)
Step 2(必问 2 项)
追溯领域补充项(>=1命中/明确不适用)、至少1个关键字段的值列表取数来源规则
当用户出现以下短语时,Agent 必须按脚本执行,禁止“听懂但跳过”:
“这功能简单/不用问”:“时间紧/先写大概/后面补充”:“8/9不用写/非功能和发布计划先不写”:8/9 简版(可验证要求+回滚/退出/成功指标检查),其余写入假设表“跳过质量检查/不需要验收标准”:“值列表不用那么详细/不用5要素”:“值列表来源别问/你自己编一个”:“报错别写具体/随便一句”:“审计留痕不重要/不要考虑更正”:使用三段式验证:
1. 结构检查 → 章节完整、编号正确
2. 内容检查 → 字段完整、校验明确
3. 细节检查 → 报错信息、术语一致
检查清单 → 见 CHECKLIST_V2.0.md
追溯领域模板 → 见 reference/traceability-domain.md
| 要素 | 询问问题 |
|---|---|
| ------ | --------- |
| 取数来源 | 取哪个表/快码? |
| 级联关系 | 选A后B取什么? |
| 默认规则 | 单值是否默认带出? |
| 展示要求 | 显示名称还是值? |
| 支持搜索 | 需要模糊搜索? |
| 要素 | 示例 |
|---|---|
| ------ | ------ |
| 时机 | 保存时/实时/关闭时 |
| 条件 | XX字段不允许为空 |
| 报错 | "[XX]不能为空,请填写后保存" |
✅ 正确: "[文件名称]不能为空,请填写后保存"
❌ 错误: "请填写完整信息"
✅ 正确: "[编码]已存在,请重新命名"
❌ 错误: "数据重复"
常见错误 | 正确做法
直接开始写,不问需求 | 先用5W1H深度挖掘
只写格式校验 | 包含时机+条件+报错
模糊的报错信息 | 明确字段+修改建议
忽略值列表的级联 | 明确"选A后B取什么"
忘记成功指标 | 用SMART原则量化
把“追溯”当普通CRUD写 | 明确追溯粒度、谱系关系、多对多、拆分/合并/返工/报废
只写功能点不写验收 | 每个子功能至少3条验收标准;追溯/召回必须“可演练、可导出、可审计”
忽略外设与现场采集 | 明确扫码点位、离线/弱网、补扫/补打、误扫处理
追溯系统-功能设计文档编写/
├── SKILL.md # 主文件(加载此文件)
├── CHECKLIST_V2.0.md # 质量检查清单
├── README.md # 使用说明
├── CHANGELOG.md # 更新日志
├── VISUAL_README.html # 可视化全览图(浏览器打开)
├── reference.docx # Word导出模板(微软雅黑 + 全包框线)
└── reference/
├── templates.md # 11个文档模板
├── prototype-driven.md # ⭐原型驱动详细指南
├── traceability-domain.md # 追溯领域专用模板
├── document-structure.md # 各章节详细内容说明
├── examples.md # 完整文档示例
└── tools.md # 10个实用工具
没有捷径可走。
深度询问 → 结构化编写 → 逐项检查 → 持续优化
这不是可选的"最佳实践",这是最低标准。
Skill版本: 1.0
更新日期: 2026-04-11
说明: 首次公开发布版本(公测)
共 1 个版本