需求分析方法

4 minIntermediate2026/6/14

用户故事、用例图、需求获取与需求管理。

1. 需求工程概述

1.1 需求层次

业务需求 → 用户需求 → 系统需求
(为什么)    (做什么)    (怎么做)
层次来源示例
业务需求利益相关者提升用户留存率20%
用户需求最终用户用户能快速找到所需商品
系统需求开发团队搜索响应时间<200ms

1.2 功能需求与非功能需求

说明示例
功能需求系统应该做什么用户可以创建订单
非功能需求系统应该做到什么程度订单创建响应时间<500ms

非功能需求分类(FURPS+)

说明示例
Functionality功能性功能完整性
Usability可用性学习曲线、操作步骤
Reliability可靠性MTBF、容错能力
Performance性能响应时间、吞吐量
Supportability可支持性可维护性、可扩展性

2. 需求获取方法

2.1 获取技术

方法适用场景优点缺点
访谈深入了解需求信息丰富耗时
问卷调查范围收集覆盖面广深度不够
观察了解实际工作流真实场景可能影响行为
原型需求不明确直观反馈成本较高
文档分析现有系统改造基于事实可能过时
焦点小组收集多方意见多角度组织难度大

2.2 需求获取流程

1. 识别利益相关者
2. 确定获取策略
3. 执行获取活动
4. 整理和记录需求
5. 验证需求完整性

3. 用户故事

3.1 用户故事格式

标准格式

作为 [角色],
我希望 [功能],
以便 [业务价值]

INVEST原则

原则说明
Independent故事之间尽量独立
Negotiable故事是可协商的
Valuable对用户或业务有价值
Estimable可以估算工作量
Small足够小,一个Sprint内完成
Testable可以验证是否完成

3.2 用户故事拆分

拆分模式说明示例
按工作流步骤拆分流程中的步骤搜索→筛选→下单
按数据变体拆分不同数据国内支付→国际支付
按操作拆分CRUD操作创建订单→查看订单
按业务规则拆分不同规则普通用户→VIP用户
按界面拆分不同界面移动端→桌面端

4. 用例

4.1 用例元素

元素符号说明
参与者小人与系统交互的外部实体
用例椭圆系统提供的功能
系统边界矩形系统范围
关联实线参与者与用例的关系
包含«include»必然执行的行为
扩展«extend»条件执行的行为
泛化空心箭头一般到特殊

4.2 用例描述模板

用例名称: 用户登录
参与者: 注册用户
前置条件: 用户已注册
主流程:
  1. 用户输入用户名和密码
  2. 系统验证凭据
  3. 系统创建会话
  4. 系统跳转到首页
备选流程:
  2a. 凭据无效: 提示错误,允许重试
  2b. 账户锁定: 提示联系管理员
后置条件: 用户已登录

5. 需求管理

5.1 需求变更控制

变更请求 → 影响分析 → 变更评审 → 批准/拒绝 → 实施 → 验证
步骤关键活动
变更请求记录变更内容和原因
影响分析评估对进度、成本、质量的影响
变更评审CCB(变更控制委员会)决策
实施修改需求和设计
验证确认变更正确实施

5.2 需求追踪

需求追踪矩阵

需求ID需求描述设计文档代码模块测试用例状态
REQ-01用户登录HLD-3.1auth.pyTC-01~03完成
REQ-02密码重置HLD-3.2reset.pyTC-04~06开发中

5.3 需求验证

方法说明
需求评审同行评审需求文档
原型验证用原型确认需求理解
验收测试用户确认需求满足
需求基线确认的需求版本冻结