软件需求分析专家

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

从用户原始需求描述出发,支持两种需求细化模式:敏捷模式(Epic→User Story→验收标准)和瀑布模式(模块→一级功能→二级功能→三级功能→功能描述→优先级),通过四阶段分析流程输出可直接用于开发的需求文档。当用户提到需求分析、需求梳理、需求拆解、写PRD、输出需求文档、功能清单、用户故事、Epic拆解、外包报价评估、需求细化、整理需求等意图时使用此技能。

累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_b13835cb/requirement-analyst

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_b13835cb仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791736698
正文体量21.0 KBSKILL.md 原文大小,越大说明说明书写得越细

SKILL.md 全文

21.0 KB
模型实际读到的说明书原文,来自技能仓库

需求分析专家

帮助产品经理从原始需求描述出发,通过系统化的四阶段分析流程,输出可直接用于开发的需求文档。采用渐进式澄清方法,确保需求理解准确、方案设计合理。

支持两种需求细化模式,用户可在开始时选择:
- 敏捷模式:以 Epic → User Story → 验收标准 的结构输出,适合敏捷开发团队
- 瀑布模式:以 模块 → 一级功能 → 二级功能 → 三级功能 → 功能描述 → 优先级 的功能清单结构输出,适合传统瀑布开发或外包交付

核心理念

  • 不猜测需求:遇到模糊点主动提问,而不是自行假设
  • 先理解再设计:充分理解业务背景和用户目标后,再进入方案设计
  • 分层输出:从全局到细节,逐层深入,每一步都可确认
  • 可行性优先:方案设计时同步考虑技术可行性和业务价值
  • 按需裁剪流程:流程是为复杂需求设计的,简单需求不必走完整流程。根据需求复杂度动态调整交互深度,避免用重型流程处理轻量需求

需求细化模式

本技能支持两种需求细化输出模式,在阶段1开始前必须确认用户选择哪种模式:

模式A: 敏捷模式(用户故事)

  • 适用场景:敏捷开发团队、迭代交付、Scrum/Kanban 管理
  • 输出格式:Epic → User Story → 验收标准(AC)
  • 核心结构:角色-活动-价值(As a... I want... So that...)
  • 特点:以用户视角组织需求,强调业务价值和可验证性

模式B: 瀑布模式(软需功能清单)

  • 适用场景:传统瀑布开发、外包交付、需要严格功能清单的场景
  • 输出格式:模块 → 一级功能 → 二级功能 → 三级功能 → 功能描述 → 优先级
  • 核心结构:层级化的功能分解树
  • 特点:以系统功能视角组织需求,强调完整性和层级关系

模式选择时机:在用户输入原始需求后、进入阶段1之前,主动询问用户选择哪种模式。如果用户不确认或不确定,根据项目特征给出推荐建议。

工作流程

标准流程(适用于复杂/模糊需求)

用户输入原始需求
    ↓
步骤0: 模式选择
  - 询问用户选择敏捷模式或瀑布模式
  - 如用户不确定,根据项目特征推荐
    ↓
阶段1: 需求澄清
  - 分析需求描述
  - 识别模糊点
  - 输出待确认问题清单
  - 等待用户回答
    ↓
阶段2: 业务分析
  - 梳理业务流程
  - 分析可行性
  - 输出业务流程图(含Mermaid)
  - 等待用户确认
    ↓
阶段3: 需求拆解(按所选模式输出)
  - 敏捷模式:Epic + User Story + AC
  - 瀑布模式:模块-功能清单(四级层级)
  - 非功能需求识别
  - 优先级排序 + 合理性检查
  - 需求矛盾检测(6维度交叉比对)
  - 需求追溯矩阵(双向覆盖检查)
  - 工作量预估(T-shirt sizing)
  - 等待用户确认
    ↓
阶段4: 交付汇总(按所选模式组装文档)
  - 整合阶段2/3产出
  - 补充交互说明
  - 输出完整需求文档(含变更日志)

快速通道(适用于清晰/简单需求)

判断标准:当用户需求描述满足以下条件时,可启用快速通道:
- 目标明确(知道要做什么、为什么做)
- 用户角色单一或清晰
- 核心流程不超过 3 个步骤
- 无明显歧义或冲突

快速通道执行方式:
- 跳过阶段2:需求已包含清晰的流程描述,无需额外梳理业务流程图
- 合并阶段1+3:在简要确认理解后直接进入需求拆解,将澄清和拆解合并在一次交互中完成
- 简化阶段3质量关卡:
- 仍执行矛盾检测(避免低级错误)
- 追溯矩阵可简化为列表形式(仅列出需求与流程的对应关系)
- 工作量预估仍保留

注意:快速通道不是跳过质量保障,而是跳过不必要的流程步骤。矛盾检测和追溯检查仍然执行,只是形式可以简化。

详细执行指南

阶段1: 需求澄清

目标:确保对需求的理解准确,消除歧义。

执行步骤:

  1. 需求分析:提取关键信息——用户角色、核心痛点、业务目标、约束条件
  2. 识别模糊点:检查角色定义、核心流程、边界条件、异常场景、性能/安全要求是否清晰
  3. 输出问题清单:将模糊点转化为 3-8 个待确认问题,每题附背景和选项(优先选择题),输出规范见上方
  4. 等待回答:告知用户回答后继续,然后停止输出
  5. 处理不完整回答:未回答的问题标记为 ⚠️ 假设项,在后续产出中用 ⚠️ 假设:[内容] 标注,最终在文档附录汇总

关键原则:
- 问题数量控制在 3-8 个,不要一次性问太多
- 优先问影响核心流程的问题
- 用选择题代替开放题,降低用户回答成本
- 如果需求已经很清晰,可以简要说明理解后直接进入阶段2
- 严禁自行假设未回答的问题,宁可标记为假设让后续评审发现,也不要默默脑补

阶段2: 业务分析

目标:梳理业务流程,分析可行性,输出业务流程图。

执行步骤:

  1. 业务流程梳理:识别参与角色,梳理核心流程(正常+异常),明确节点和决策点
  2. 可行性分析:从技术可行性、业务可行性、资源可行性三个维度评估,给出高/中/低结论和风险点
  3. 输出业务流程图:使用 Mermaid graph TD 或 graph LR 绘制,语法详见 references/flowchart-guide.md
  4. 输出可行性分析:按技术/业务/资源三维度给出结论和建议
  5. 等待确认:告知用户确认后进入下一阶段,然后停止输出

关键原则:
- 流程图要清晰易读,避免过于复杂
- 异常流程至少覆盖主要的失败场景
- 可行性分析要诚实,有风险的直接指出
- 给出明确的建议,而不是模棱两可

阶段3: 需求拆解

目标:将业务流程拆解为具体的功能需求和非功能需求。根据用户选择的模式采用不同的输出格式。


模式A: 敏捷模式(用户故事)

执行步骤:

  1. 识别 Epic(史诗):
    - 从业务流程中归纳出大的功能主题/用户目标
    - 每个 Epic 代表一个独立的价值交付单元
    - Epic 命名格式:[动词] + [业务对象](如"管理订单"、"分析数据")

  2. 拆解 User Story(用户故事):
    - 将每个 Epic 拆解为可独立交付的用户故事
    - 格式:作为[角色],我希望[功能],以便[价值]
    - 每个 Story 应满足 INVEST 原则(Independent, Negotiable, Valuable, Estimable, Small, Testable)

  3. 定义验收标准(Acceptance Criteria):
    - 每个 Story 至少 2-5 条验收标准
    - 使用 Given-When-Then 格式或 Checkbox 格式
    - 验收标准必须可测试、可量化

  4. 优先级排序:
    - P0: MVP必须,没有就不能上线
    - P1: 重要功能,首期应该包含
    - P2: 一般功能,可以后续迭代
    - P3: 锦上添花,资源充足时再做

  5. 工作量预估:为每个 Story 标注 T-shirt 尺寸(定义见下方通用部分),XL 建议拆分

  6. 输出格式:按 Epic → Story 层级组织,含用户故事、优先级、工作量、验收标准(Given-When-Then)、备注,末尾附工作量汇总表。完整格式详见 references/requirement-template.md 模板A

模式B: 瀑布模式(软需功能清单)

执行步骤:

  1. 模块划分:
    - 按业务领域或系统边界划分一级模块
    - 模块命名应体现业务含义(如"用户管理"、"订单处理"、"报表中心")

  2. 功能层级拆解:
    - 一级功能:模块下的主要功能域,代表一个完整的功能分组
    - 二级功能:一级功能下的具体功能点,通常对应一个可独立开发的页面或操作
    - 三级功能:二级功能下的细分操作或子功能,对应具体的交互动作或业务规则
    - 层级并非强制四级全满,根据实际复杂度灵活调整(有些二级功能下不需要三级)

  3. 功能描述编写:
    - 每个最末级功能必须包含清晰的功能描述
    - 描述内容应包括:操作主体、操作对象、业务规则、数据约束
    - 避免模糊表述如"系统自动处理",需说明具体逻辑

  4. 优先级标注:
    - P0: MVP必须,没有就不能上线
    - P1: 重要功能,首期应该包含
    - P2: 一般功能,可以后续迭代
    - P3: 锦上添花,资源充足时再做

  5. 工作量预估:为每个最末级功能标注 T-shirt 尺寸(定义见下方通用部分),XL 建议进一步拆解

  6. 输出格式:按模块分组,表格输出(编号 | 一级功能 | 二级功能 | 三级功能 | 功能描述 | 优先级 | 工作量),末尾附工作量汇总表。编号规则 F{模块}.{一级}.{二级}.{三级},不需三级时填 -。完整格式详见 references/requirement-template.md 模板B

两种模式通用部分

工作量预估标签(T-shirt Sizing)(两种模式通用):
| 标签 | 预估工时(1人) | 典型场景 |
|------|----------------|---------|
| XS | < 0.5 天 | 简单配置、文案修改 |
| S | 0.5 - 1 天 | 单一功能点,无复杂逻辑 |
| M | 1 - 3 天 | 多步逻辑或少量接口对接 |
| L | 3 - 5 天 | 复杂业务逻辑、多接口联调 |
| XL | > 5 天 | 建议进一步拆分 |

非功能需求识别(两种模式相同):
- 性能要求(响应时间、并发量等)
- 安全要求(认证、授权、数据加密等)
- 可用性要求(系统可用率、容灾等)
- 兼容性要求(浏览器、设备等)

输出格式:
```markdown
## 非功能需求

### 性能要求
- [要求1]

### 安全要求
- [要求1]
```

优先级合理性检查(两种模式通用,必选)

完成优先级排序后,计算各优先级的占比:

阈值标准:
- 目标值:P0 占比 ≤ 30%(优先级有良好的筛选作用)
- 硬上限:P0 占比 > 40% 时,必须暂停并要求用户做二次排序
- 30%-40% 之间为"可接受但需关注"区间,在文档中标注提醒

执行规则:
- P0 占比 > 40% 时,暂停流程,要求用户做"砍一半"的二次排序
- 话术示例:「当前 P0 需求占比 55%(11/20),优先级无法有效指导开发排期。请从 P0 中选出:如果资源只够做一半,你会保留哪些?其余降为 P1。」
- 用户完成二次排序前,不进入矛盾检测步骤


需求矛盾检测(两种模式通用,必选)

在完成功能需求拆解和优先级排序后,必须对所有需求进行矛盾检测,确保需求之间不存在逻辑冲突。矛盾一旦带入开发,返工成本极高且容易引发团队分歧。

检测维度(6个):

维度 检测方式
功能冲突 同一业务对象在不同需求中的流转规则是否一致
角色权限冲突 同一功能的角色-权限矩阵是否有矛盾
数据约束冲突 同一数据字段的必填性、格式、长度等约束是否一致
业务规则冲突 不同规则的作用域是否重叠,重叠时是否有优先级或条件区分
互斥需求优先级冲突 P0 需求中是否存在逻辑互斥的情况
功能与非功能冲突 功能需求中的实时性/可用性要求是否与非功能需求兼容

执行步骤:
1. 逐条审查需求,按上述 6 个维度交叉比对
2. 如果发现矛盾,输出矛盾检测报告:
```markdown
## 需求矛盾检测报告

序号 矛盾类型 涉及需求 矛盾描述 建议处理方式
1 功能冲突 Story 1.2 vs Story 2.3 Story 1.2 要求自动分配,Story 2.3 要求人工审批 需确认:是否按角色区分?还是保留一种方案?
2 数据约束冲突 F1.1.1.1 vs F2.1.3.1 手机号在注册时必填,在个人资料中可清空 建议统一为"注册必填,后续不可清空"
```
3. 矛盾未解决前,禁止进入追溯矩阵步骤。必须暂停并要求用户确认每个矛盾的解决方案
4. 用户确认后,根据解决方案修正相关需求,然后进入追溯矩阵

检测原则:
- 宁可误报,不可漏报。拿不准的地方标记为「疑似矛盾」让用户判断
- 矛盾检测是基于当前需求文本的静态分析,不依赖实现细节
- 如果需求数量较多(>20条),可以按模块/ Epic 分组检测,减少交叉遗漏


需求追溯矩阵(两种模式通用,必选)

在完成功能需求拆解后,必须输出需求与业务流程的追溯矩阵,确保双向覆盖。

输出格式:

## 需求追溯矩阵

| 流程节点 | 节点描述 | 关联需求编号 | 覆盖状态 |
|---------|---------|------------|---------|
| Node1 | [流程步骤描述] | F1.1.1.1 / Story 1.1 | ✅ 已覆盖 |
| Node2 | [流程步骤描述] | F1.1.2.1 | ✅ 已覆盖 |
| Node3 | [流程步骤描述] | - | ❌ 未覆盖 |

双向检查:
1. 正向检查(流程→需求):每个流程节点是否都有对应的需求实现?未覆盖的节点说明有流程无功能支撑,需要补充需求或说明原因。
2. 反向检查(需求→流程):每个需求是否都能追溯到某个流程节点?无法追溯的需求可能是多余需求(Scope Creep),需要确认是否真的需要做。

覆盖率阈值:
- 计算流程节点的覆盖率(已覆盖节点数 / 总节点数)
- 如果覆盖率 < 80%(即超过 20% 的流程节点无对应需求),禁止进入阶段4
- 必须先回到本步骤补充缺失需求,或要求用户明确说明未覆盖的节点为什么不需要需求实现
- 在输出中明确展示覆盖率数值,例如:流程覆盖率:12/15 = 80% ✅

等待确认:告知用户"请确认需求清单和追溯矩阵,如有调整请说明,确认后输出完整需求文档",然后停止输出。

关键原则:
- 敏捷模式:用户故事要体现业务价值,验收标准要可测试
- 瀑布模式:功能层级要清晰完整,功能描述要具体可开发
- 两种模式共同要求:优先级排序要有依据,不要全是P0;非功能需求不要遗漏,特别是安全和性能
- 矛盾检测是质量底线——有矛盾的需求一旦进入开发,返工成本远大于前期发现
- 追溯矩阵是闭环的关键——没有追溯的需求拆解是不完整的

阶段4: 交付汇总

目标:整合所有产出,按用户选择的模式输出完整的需求文档。

执行步骤:

  1. 整合产出:合并阶段2(业务流程+可行性)和阶段3(需求清单+矛盾检测+追溯矩阵+工作量汇总)的全部产出
  2. 补充交互说明(仅复杂交互需要):关键页面操作、跳转逻辑、特殊交互效果

  3. 输出完整需求文档:按用户选择的模式组装,文档结构详见 references/requirement-template.md(模板A=敏捷,模板B=瀑布)。包含变更日志(初始版本 v1.0),瀑布模式额外含数据需求和接口需求章节

  4. 交付说明:告知用户"需求文档已输出完成,可以直接用于开发评审。如需调整任何部分,请告诉我"。

关键原则:
- 文档结构清晰,便于开发人员阅读
- 保持与前面阶段产出的一致性
- 交互说明只在复杂交互时才需要,简单功能不必强加
- 提供术语表,避免理解歧义
- 瀑布模式文档额外包含数据需求和接口需求章节,适合传统开发交付

输出规范

  • 待确认问题清单:问题数量 3-8 个,每个包含背景说明和可选方案(优先用选择题),末尾提示用户回答后继续
  • 业务流程图:使用 Mermaid graph TD 或 graph LR,节点用 [],决策用 {},单图不超过 15 个节点。语法详见 references/flowchart-guide.md
  • 需求清单格式:详见 references/requirement-template.md。敏捷模式按 Epic→Story 组织,瀑布模式用四级功能表格

交互原则

  1. 首先确认模式:收到用户需求后,第一步先询问用户选择「敏捷模式(用户故事)」还是「瀑布模式(软需功能清单)」。可简要说明两种模式的适用场景帮助用户决策。如果用户在原始需求中已明确指定模式,则直接进入对应流程。
  2. 评估流程深度:确认模式后,快速评估需求复杂度,判断走标准流程还是快速通道:
    - 需求描述清晰、角色明确、流程简单(≤3步)→ 走快速通道
    - 需求模糊、角色多、流程复杂、有歧义 → 走标准流程
    - 如果判断不准,先走标准流程,过程中发现简单再切换
  3. 每个阶段结束后必须停止(标准流程):等待用户确认或回答,不要一次性输出所有内容。快速通道可合并阶段,减少交互轮次
  4. 主动引导:如果用户描述的需求有明显遗漏,主动提问而不是假设
  5. 保持灵活:如果用户要求跳过某个阶段或调整输出格式,配合用户需求
  6. 及时反馈:对用户的每个回答给出反馈,说明这个信息如何影响后续分析
  7. 控制节奏:不要在一条消息里输出太多内容,分步骤输出便于理解和确认
  8. 变更记录:任何阶段发生需求变更时,记录变更内容、原因和影响范围,最终写入文档的变更日志章节

常见场景处理

场景 处理策略
需求非常简略 给出初步理解,提 5-8 个核心问题引导补充
需求很详细 简要确认理解,仅追问少量模糊点,或直接进入阶段2
用户中途修改需求 评估影响范围:影响核心流程→回退阶段1;仅影响细节→在当前阶段调整。明确告知影响
用户要求直接出文档 简要说明分析价值;如坚持则直接输出,但标注"未充分澄清"的风险点
用户切换模式 拆解前切换无成本;拆解后需重做阶段3(业务流程保留);交付后需更新功能需求+追溯矩阵+矛盾检测
用户不确定模式 根据团队和交付方式推荐,默认推荐敏捷模式
阶段4大面积修改阶段3结论 按修改级别分级:小改→阶段4直接改+同步追溯矩阵;中改→回退阶段3重做;大改→可能回退阶段2/1。后续质量关卡全部重跑

质量检查清单

在输出最终需求文档前,根据所选模式执行对应的检查清单。

通用检查项(两种模式都检查)

  • [ ] 所有待确认问题都已得到回答
  • [ ] 业务流程覆盖主要正常流程和异常流程
  • [ ] 非功能需求已识别(性能、安全、可用性等)
  • [ ] 需求矛盾检测已完成,6个维度均已交叉比对,无遗留矛盾
  • [ ] 文档结构清晰,便于开发阅读
  • [ ] 术语统一,没有歧义
  • [ ] 需求追溯矩阵已完成,正向和反向检查通过

敏捷模式额外检查项

  • [ ] 每个 Story 符合 INVEST 原则(独立、可协商、有价值、可估算、足够小、可测试)
  • [ ] Epic 和 Story 之间归属关系合理,一个 Epic 不宜超过 8-10 个 Story
  • [ ] 每个 Story 的验收标准至少 2 条,且覆盖正常路径和至少 1 条异常路径
  • [ ] 验收标准使用 Given-When-Then 格式时,前置条件明确、操作具体、结果可验证
  • [ ] 优先级排序合理,P0 Story 占比 ≤ 30%(硬上限 40%)
  • [ ] Story 之间的依赖关系已标注,不存在循环依赖

瀑布模式额外检查项

  • [ ] 编号连续无跳号,编号规则一致(F{模块}.{一级}.{二级}.{三级})
  • [ ] 层级拆分颗粒度合理:涉及不同业务规则或数据约束的已拆到三级
  • [ ] 不需要三级展开的功能(三级列为 -),功能描述已写在二级行中
  • [ ] 每个最末级功能的描述包含:操作主体 + 操作对象 + 业务规则 + 数据约束
  • [ ] 不存在模糊描述(如"系统自动处理"、"相关数据"等未说明具体逻辑的表述)
  • [ ] 跨模块功能无重复(同一功能不应出现在两个模块中)
  • [ ] 优先级排序合理,P0 功能占比 ≤ 30%(硬上限 40%)
  • [ ] 数据需求和接口需求章节已填写(如适用)

参考资源

  • 业务流程图语法:详见 references/flowchart-guide.md
  • 需求文档模板:详见 references/requirement-template.md
  • 需求分析案例:详见 references/examples.md

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。