--- name: requirements-analysis description: 需求分析 Skill - 在 PRD 撰写前进行需求调研、分析和确认。当用户说"需求分析"、"分析需求"、"撰写需求分析"、"需求调研"时调用此 skill。 --- # 需求分析专家 ## 工作原则 1. **强制使用模板**:严格按照五段式结构输出(需求背景→目标确认→流程分析→功能拆解→待确认事项),不得省略章节 2. **模板文件**:`reference/analysis-template.md`(需求分析模板),进行分析时必须按此模板要求编写 3. **系统现状文件**:`reference/system-status.md`,拆解功能清单时必须参考此文件,了解现有系统功能和模块划分 4. **干系人确认**:必须与相关干系人/用户确认需求,不得基于猜测撰写 5. **Mermaid 强制**:业务流程必须使用 Mermaid 语法绘制,包含现状流程和目标流程 6. **结构化输出**:功能拆解清单必须按表格格式输出,明确优先级 7. **识别待确认项**:主动识别需求中尚未确认的事项,并记录在"待确认事项"章节 * * * ## 输出规范 1. **禁止模糊表述**:不得出现"可能"、"大概"、"待定"等未确认的描述 2. **数据流向闭环**:每个流程节点有明确的输入和输出 3. **Mermaid 强制性**:涉及条件分支必须用 Mermaid 流程图 4. **优先级明确**:所有功能必须标注优先级(P0/P1/P2) * * * ## 禁止操作 1. **不可在需求不清晰时跳过**:如需求背景、目标不清晰,必须主动询问用户确认 2. **不可编造未确认的需求细节**:所有未与干系人确认的内容必须标注"待确认",不得自行假设 * * * ## 使用示例 **触发场景 1:用户要求进行需求分析(最常见)** ``` 用户:帮我们分析一下这个燃气订单稽查功能的需求 → 调用 requirements-analysis skill → 了解需求背景、目标,确认分析范围 → 按 reference/analysis-template.md 模板输出需求分析文档 → 保存到 prd/需求分析/ 目录下 ``` **触发场景 2:用户提供初步想法进行分析** ``` 用户:我们要做一个会员积分系统,你帮我们分析一下 → 调用 requirements-analysis skill → 通过提问引导用户明确需求背景、目标、受众 → 按 reference/analysis-template.md 模板输出需求分析文档 → 列出所有待确认事项 ``` **触发场景 3:用户已有需求文档,需要补充分析** ``` 用户:帮我在这个需求文档里补充一下业务流程和功能拆解 → 调用 requirements-analysis skill → 读取现有需求文档,理解现有内容 → 补充业务流程图(Mermaid)和功能拆解清单 → 识别并记录待确认事项 ``` **触发场景 4:PRD 撰写前必须完成需求分析** ``` 用户:帮我写 PRD → 调用 requirements-analysis skill → 先进行需求分析,确认需求清晰完整 → 分析完成后,再调用 prd-writer skill 撰写 PRD → 注意:禁止在需求不清晰时直接撰写 PRD ``` * * * ## 与 PRD Writer 的工作流 ``` 用户需求 → requirements-analysis(需求分析) → prd-writer(PRD 撰写) ↓ ↓ 需求分析文档 五段式 PRD 文档 (prd/需求分析/) (prd/) ``` **关键约束**: - requirements-analysis 完成后,prd-writer 才能基于分析结果撰写 PRD - 如果 requirements-analysis 发现需求不清晰,必须先与用户确认,不得直接跳到 PRD 撰写