3. 功能与非功能需求拆解

适用场景

本章适用于以下典型场景:

  • PRD 初稿完成,需要将笼统的需求描述拆解为可落地、可验证的功能与非功能条目。
  • 技术方案评审前,产品经理与研发/测试对齐需求边界,避免遗漏非功能约束。
  • 验收标准编写前,必须先行完成需求分类,才能为每类需求匹配对应的验收方法。
  • 需求变更或迭代时,快速识别新增需求属于功能类还是非功能类,评估影响范围。

前置条件

  • 已有一份经过初步评审的 PRD 文档(包含需求描述、业务目标、用户故事或用例)。
  • 已确认 需求颗粒度基准(例如:每个需求条目应独立可测、不可再分)。
  • 参与拆解的角色(产品经理、技术负责人、测试负责人)已明确并到位。
  • 已准备 需求分类检查表(本章提供模板)和记录工具(Wiki / 文档 / 电子表格)。

操作步骤

步骤1:逐条标记需求类型

将 PRD 中的每条需求描述读一遍,判断其核心属性:

  • 功能需求:系统“做什么”——用户操作、业务逻辑、数据流转、界面交互。
  • 非功能需求:系统“做得怎么样”——性能、安全、可用性、可维护性、兼容性。
判断口诀:如果需求能用“系统必须能够……”开头且描述的是一个具体行为,则为功能需求;如果描述的是一个质量属性或约束条件,则为非功能需求。

步骤2:功能需求子类拆解

将标记为“功能需求”的条目,按以下维度进一步归类:

子类说明示例
业务功能与核心业务流程直接相关的操作“用户提交订单后,系统自动扣减库存”
用户交互界面反馈、输入输出、导航跳转“输入框失焦时触发格式校验并显示提示”
数据处理数据采集、转换、存储、同步“每日凌晨将订单表数据同步至数仓”

步骤3:非功能需求子类拆解

将标记为“非功能需求”的条目,按以下维度归类:

子类说明示例
性能响应时间、吞吐量、并发能力“首页首屏加载时间 ≤ 1.5 秒”
安全认证、授权、数据加密、审计日志“用户密码必须使用 bcrypt 加密存储”
可用性系统正常服务时间比率、容错与恢复“核心链路可用性 ≥ 99.95%”
可维护性日志规范、代码可测试性、文档完备度“关键业务操作必须输出结构化日志”

步骤4:交叉验证与边界对齐

组织产品、研发、测试三方进行快速核对:

  • 是否有需求同时包含功能和非功能属性?拆分为两条独立条目,分别归类。
  • 是否有需求描述模糊,无法判断类型?退回补充,直至满足分类条件。
  • 是否有明显的非功能需求缺失(如性能指标、安全要求)?补充录入。
常见误区:不要把“系统应稳定运行”当作完整的需求。非功能需求必须包含可量化的指标或具体的约束条件,否则无法验收。

步骤5:输出需求分类矩阵

将已归类并验证过的所有需求条目整理为结构化表格,作为后续编写验收标准的唯一输入源。

分类矩阵至少包含以下列:需求编号、需求描述、所属主类(功能/非功能)、子类、优先级、来源PRD章节。

输入输出物

类型名称说明
输入PRD 文档(已评审)包含原始需求描述、业务目标、用户故事
输入需求分类检查表本章提供的分类标准与核对清单
输出需求分类矩阵所有需求条目按功能/非功能归类后的结构化清单
输出拆解过程记录包含分类讨论、争议点、最终结论的会议纪要或文档

责任边界

角色责任
产品经理主导需求分类,确保每条需求描述清晰、无歧义;维护需求分类矩阵的完整性与一致性。
技术负责人从技术实现角度验证非功能需求的可行性,补充缺失的性能/安全/可维护性条目。
测试负责人从可测性角度检查每个需求条目是否独立、可验证,对边界模糊的需求提出澄清要求。

记录材料

使用以下模板记录每条需求的拆解结果:

需求编号:REQ-0037
需求描述:用户登录成功后 2 秒内跳转至首页
主类:非功能需求
子类:性能
优先级:P1
来源章节:4.2 用户登录
备注:需明确 2 秒是 95 分位还是平均值

所有记录材料统一存放在项目 Wiki 或共享文档中,版本号与 PRD 保持一致。

异常处理

异常场景处理方式
需求描述过于模糊,无法分类退回产品经理补充具体行为或指标,补充后重新进入分类流程。
一条需求同时包含功能与非功能属性拆分为两条独立需求,分别归类,并在备注中记录关联关系。
团队对分类标准存在争议以“能否独立验收”为最终判断依据:能独立验收则拆分为单独条目。
非功能需求明显缺失技术负责人根据系统架构补充默认非功能条款(如日志、监控、容错),经产品确认后录入。

验收标准

需求拆解工作完成时,必须满足以下所有标准才算合格:

  • 每个需求条目只属于 一个主类(功能或非功能),无遗漏、无重叠。
  • 所有非功能需求均包含 可量化指标或明确约束,不接受“高性能”“高安全”等模糊描述。
  • 需求分类矩阵已通过 产品 + 技术 + 测试 三方会签确认。
  • 拆解过程记录完整,所有争议点均有结论,且结论可追溯。
  • 分类矩阵中的每个需求均可 直接映射到后续的验收标准,无需再次解释或补充。
本章核心交付物:一份经过三方确认的、无模糊项的需求分类矩阵,它是从 PRD 过渡到验收标准的唯一桥梁。
功能与非功能需求拆解框架 PRD 需求文档 功能需求 非功能需求 业务功能 用户交互 数据处理 性能 安全 可用性 功能需求描述系统“做什么”,非功能需求描述系统“做得怎么样” 两者必须拆解到可独立验收的颗粒度,才能进入验收标准编写阶段

附:功能与非功能需求检查表

在完成拆解后,逐项核对以下清单,确保无遗漏:

检查项功能需求非功能需求
每个需求是否只描述一个独立行为或属性?✓✓
是否包含完整的输入/输出或触发条件?✓—
是否有明确的量化指标(时间、容量、百分比)?—✓
是否可在测试环境中被验证?✓✓
是否与 PRD 中的业务目标对齐?✓✓
是否存在与其他需求的依赖或冲突?需注明需注明

所有检查项打 ✓ 后,需求分类矩阵方可进入下一阶段(验收标准编写)。