需求分析
作为一个系统/产品的设计者,需求分析是一件非常重要的事情,正确的更是一个功能实现的起点,如何识别需求,需求分析的方法有哪些,这些问题的答案需要在工作过程中逐渐丰富。
1. 识别真伪需求
一般来讲,伪需求来自于客户/用户的描述,在工作中,用户的反馈非常重要,我们要仔细倾听用户的需求,但是大部分用户在描述的是他所期待的解决方案,而不是在讲他的实际需求。这时,我们需要做的是深究用户的动机,可以通过用户访谈、调查问卷的方式。
-> 针对该需求,准确描述什么用户在什么场景下有什么样的行为
-> 具体分析该用户是否为产品的目标用户,此需求的价值和实现难度,对产品定位是否有影响
-> 需求价值分析包括需求强度、广度、频率、时机等
-> 明确真伪需求,将真实需求转化为产品需求,将产品需求转化为产品功能
相关理论参考:
马斯洛需求层次理论
用户动机
需求分析Y理论-苏杰
在圣经中,人类有七宗罪:淫欲、贪食、贪婪、懒惰、暴怒、妒忌、 傲慢,马斯洛认为人有生理、安全、社交、尊重、价值五类逐级跃迁的需求,在设计产品的过程中,辅以人性理论可能会有意想不到的效果。
2. 需求分析过程
需求分析一般需求经过问题识别、分析与综合、制定规格说明、评审
问题识别:从系统角度来理解软件,明确对系统的综合要求,系统需具备的功能,需达到的标准,及实现这些需求的条件。这些需求包括:功能需求(做什么)、性能需求(要达到什么指标)、环境需求(如机型、操作系统等)、可靠性需求(不发生故障的概率)、安全保密需求、用户界面需求、资源使用需求(软件运行是所需的内存、CPU等)、软件成本消耗与开发进度需求、预先估计以后系统可能达到的目标。
分析与综合:将系统所需提供的功能细化,确定系统流程,与其他相关系统的接口,系统需要实现的增强。
制定规格说明:也称为蓝图,汇总系统需求,提供实现方法,辅以流程图、原型图等进行说明,通常会按照流程进行编排。此说明文件为交付文档,决定了系统实现的方向。
评审:所有相关方需参与规格说明的评审,确保系统设计方案中没有遗漏重要流程,各模块的设计没有冲突,符合系统的需求。准确、完整、清晰的规格说明会为后续的工作带来很多便利。
3. 需求分析方法
常用的为功能分析法和数据分析法。
功能分析法:将大功能拆成小功能,小功能再细化为更小的子功能,功能之间的联系接口,以此来得到系统雏形。
数据分析法,又称为结构化分析法,基本策略为跟踪数据流,确定数据在各功能节点的处理、存储、流动,从而发现数据的流动和加工过程。
4. 需求分析的难点
问题难确定 - 原因可能是业务复杂且变化快,或者涉及的因素多,例如功能、性能、集成、接口、可靠性等。
需求变化 - 在系统实现的过程中,由于业务变化或者用户的原因经常会有需求变更产生,这时需要明确进行变更的必要性,如果会影响到重要业务的关键功能,需要走需求变更流程来进行有效管理,评审、跟踪、比较分析。
用户交流障碍 - 用户的背景、经验、知识水平、业务熟悉程度,甚至性格都影响着交流成果,创造一个友爱且认真的环境将有利于提升交流效率。
需求不一致 - 不同岗位的人对需求的描述都可能不一致,应尽量多访谈,需求矛盾点需要着重处理。
需求不够深入 - 业务变化、市场趋势、客户环境变化等都会导致需求变化,随着分析、设计、实现的进行,需求将不断深入并完善。期间的变更有可能跟到项目的最后一刻,必要的心理准备和心理承受能力是要有的。