软件工程之美学习笔记十八 17 | 需求分析到底要分析什么?怎么分析?
《软件工程之美》材料地址:https://time.geekbang.org/column/article/88833
需求分析示意图(秋千图)
什么是需求?
- 用户需求:
项目经理对产品经理说:用户给我们提了一个需求,想要一个给三个孩子玩的秋千,你分析一下; - 产品需求 :产品经理对架构师说:我们现在有一个需求,在树上栓两绳子,再吊一块板子,你做一下设计。
需求分析是要分析什么?
需求分析,就是对用户需求进行提炼分析,最终形成产品需求的过程。
第一步:挖掘真实需求
- 目标用户:用户不同,诉求也不一样;
- 使用场景:使用场景不一样,解决方案也会有所不同;
- 想要解决的问题:用户背后想要解决的问题是什么。
第二步:提出解决方案
第三步:筛选和验证方案
在传统瀑布模型中,选定方案后,会写成产品设计文档,走相应的评审流程,评审完成后再进行设计、开发和测试,测试完成后会让客户再进行验收。
而敏捷开发,在整个开发过程中,每个迭代或者关键的里程碑,也一样需要客户进行验收。
怎样做需求分析?
- 收集需求:对用户需求进行收集整理;
- 头脑风暴:就是大家一起开会头脑风暴讨论;
- 用户调研:通过调查问卷或者访谈,通过问用户一些问题收集反馈;
- 竞品分析:通过分析其他同类产品的功能获得需求;
- 快速原型:通过原型来收集反馈,收集确认需求。
- 分析需求:对需求进行分析挖掘用户真实需求;
要结合“目标用户”和“使用场景”,进行三个层次的需求分析
- 表层需求:用户对解决问题的期望
- 深层需求:用户的深层次动机,诉求产生的原因
- 底层需求:人性本能的需求
- 需求评估:筛选过滤掉不可行的需求;
- 可行性:技术能否实现;
- 成本:人力成本、时间成本;
- 商业风险和收益:有没有商业上的风险,收益是否合理;
- 紧急性与重要性:是不是用户迫切的需求。
红色曲线,是用户认为必须要有的功能;
绿色曲线,就是用户明确提出的需求;
黄色曲线,属于兴奋型需求,就是用户自己没想到,超出预期的功能。
- 需求设计:针对用户需求提出解决方案,设计成产品方案;
在需求设计的时候,可以用草图、原型设计工具、界面设计工具进行设计。 - 验证需求:验证方案是否可行。(同前述评审验收,补充A/B测试)