2020-09-21 16:50:17
阅读 3211
编辑导读:产品需求文档作为从需求到功能的具体实现指南,是所有开发、测试人员在产品开发过程中的必备文档。关于产品需求文档,怎么写,写什么,写到什么程度,是产品人员们不断探索的重要问题。本文作者从自身工作实践出发,分享了自己撰写产品需求文档的几点思考,希望对你有用。
有个交互转产品的同学私信问我,之前做交互的时候,看产品做需求真的是很简单的,也真的是觉得不会开发、不会设计、不会用研的就都去做产品了。但是自己转岗开始写需求的时候,其实发现,一份好的需求文档其实也没那么容易。
产品需求文档是不是可以有一个模板呢?一个好的需求文档的模板应该是什么样的呢?
相信很多“老”产品人都会遇到被索要“需求模板”的问题
模板可以有吗?
当然!格式化、标准化本身是一个很好的思维工具和工作方法,能够在输出(编写)文档和输入(接收)文档的双方中建立一种“标准”的沟通机制和预先定义的沟通基础,减少额外的沟通成本,提高效率是一件非常有益的事情。
同时,一个经过实际工作检验、经历过“质疑”、“挑战”和“斗争”之后沉淀下来的模板,肯定是已经吸收了各类“干系人”的偏好、意见,固化了很多符合实际业务必须的内容要求,能够起到很好的业务承接作用。
因此,模板的有效使用可以提升工作的效率和效果,不同的公司、团队也都形成了自己定义的标准文档模板。剩下的,“躺”就可以了。
不过,在享用前人智慧和经验梳理好的模板进行需求编写的同时,还是应该了解模板形成的原因,并在此过程中形成自己对于模板的理解,进而形成对于产品需求文档的理解,在理解中使用,裁剪和优化。
要理解和分析模板,理解和分析产品需求文档,可以运用研究自然科学和社会科学问题的最基本的逻辑和方法:描述-解释-预测-监控,并同时可以作为在进行需求准备、需求编写、需求检查过程中的思维线索。
一、描述-解释-预测-监控
作为基本的自然科学和社会科学研究问题的方法,对于一个问题、现象的研究和解读往往是遵循着:描述——解释——预测——监控,这样的行为过程和研究过程。
其中:
- 描述,是对观察过程和观察结果的描述。观察的对象因不同的研究而有差异,其目标是尽可能完整地将观察者根据自己的观察得到的现象、由此现象所产生的思想和感觉,以及在观察过程中选择纳入的过程参与者对现象的反应等信息进行描述。
- 解释,是回答 “为什么”,是对于描述的理解、归类、定义和解释。其目标是将描述内容背后的成因、原理、动机,内容中各部分之间的相关,依存、依赖和影响关系等进行说明,以便对于描述内容有更清晰、更细致、全面的了解。
- 预测,根据以因果关系为内容的内在联系,相互影响来推导未来的发展或者将要发生的事情。通过研究解释内在的联系,准确地表达内在联系,从中推导出正确的预测。
- 监控,是对于预测行为、现象的观察和监督,包括了观察到的预测中的行为、现象的发生或者预测以外的行为、现象的外发生,以及因此而采取的对应的反映动作;这些反映动作是预测过程中根据内在联系制定的“响应”机制,并任其自然发生或者通过提供“系统”的自制能力来实现。
我们举例说明,比如我们在研究一个自然现象(比如雷电)的过程中,在研究的过程中,会采用如下的顺序,这个顺序同时又是及描述研究的过程的结构:
- 描述:雷电这个现象是什么,和其他现象有什么区别,它是在什么情况和环境下出现,有哪些表现和特征,当前以及过去人们是怎么认知它,记录它;
- 解释:雷电这个现象形成的原因是什么,它出现的必要条件是什么,在哪些环境下这种条件会具备,这些条件和环境里哪一些是核心条件,是起到决定性做用的,这个自然现象的出现对于人们的生产生活是会产生帮助还是会造成危害;可能还包括了过去、当前人们对于它认知存在偏差的原因;
- 预测:在什么样的条件下,雷电这个现象会出现,在不同的环境和条件下,这个自然现象的出现会有哪些差别,在人们的生产生活中,哪些行为或者选择会增加或者减少这个现象的出现;这个现象出现的时候,人们会有怎样的反应,在不同的条件和环境下,这种反应又会有什么样的差别,哪些反应是值得提倡的,哪些反应是应该制止的,提倡的和制止的反应如果不进行干预,有可能会产生什么样的结果;
- 监控:雷电这个现象出现的条件和环境是否同之前的预测一致,现象出现的剧烈程度、人们对该现象的反应是否和之前预测的一致、现象出现时,人们在应对现象过程中有怎么样行为,以及这些行为对现象的影响。
二、需求准备、编写和检查
回归到产品经理的日常工作中,在时间占比上较为集中的就是产品需求管理了,包括了需求的准备、分析、编写和检查过程。
在这个过程中,描述——解释——预测——监控这个通用的科学分析过程也同样使用,且可以贯穿其中,并可以帮助理解、形成并固化成我们前文提到的需求文档的模板。
这个科学分析的过程、方法在不同阶段运用的侧重点会有所不同。
1. 描述
描述的过程是客观的进行“需求向”描述的过程,是一个“背景”信息的补充,用来说明,这个需求文档的源出是什么,是针对什么问题,这个问题是在具体什么领域,在怎样的范围内,涉及到的是那些人;
在需求相应的功能设计实现之前,当前的解决方案存在的问题是什么,参与者是怎么解决的,解决的情况怎么样,是好,还是不好,还是勉强可以,对于新的需求的紧迫性是什么样的。
此外,描述的过程还需提供一个基础的概念和流程的解释,用来统一作为背景去理解一个现实的业务场景和“沟通字典”,避免在沟通中因为误解而产生不必要的偏差。
- 需求准备的过程:了解需求来源(管理部门、市场部门、运营部门等),需求背景(行业、同业规则现状等);
- 需求分析的过程:了解需求目标、预期效果(时间、结果等)、使用者习惯、相关人影响;
- 需求编写的过程:描述需求目的、背景、时间和结果要求、业务流程、交互过程、系统架构、干系人角色和影响范围;
- 需求检查的过程:需求的背景、目标、过程、干系人、结果预测和预防的完整性检查;
2. 解释
解释在需求来源的基础上描述了 “为什么”接下来这个需求可以解决遇到的问题,同时还加入了“是什么”和“怎么样”的部分。
就是这个需求是通过怎么样的方法解决了“描述”过程中提到的问题,这个新的解决方法需要要做什么,对于原有的业务过程有哪些改变,会提升什么,会降低什么,会影响哪些人、哪些业务部分、哪些业务系统以及哪些数据的产生。
这个部分,是需求文档的最主要、最核心的内容部分,也是在内容上占比最大的一部分。
这里的解释根据产品需求面向的要解决的问题不同,而可能存在多个层面,多个维度的层面,比如对于运营的影响,对于前端市场的影响,对于用户的影响,对于财务、法务的影响;从技术开发、技术实现维度,比如对于前端开发的影响、对于服务端开发的影响、对于数据平台的影响,还可能涉及到对于运维资源的影响等;因此对应到实际的产品需求工作中:
- 需求准备的过程:了解需求可能涉及的相关业务系统及系统对应的数据流程和逻辑、了解需求可能涉及的外部服务的数据流程和逻辑;了解面向的内外部用户的产品使用水平、学习能力和使用习惯;
- 需求分析的过程:选择和制定最有效的,满足时间、资源投入等要求的方案;
- 需求编写的过程:详细描述需求的业务流程,通过各种图表格式说明新的解决方法在各服务系统之间、各业务部门之间、用户与产品,产品与后服务之间的数据、文件和行为的交互过程、详细的信息输入、信息处理和信息输出;每个业务节点明确的输出物和节点标志,重要性和优先级;系统架构、干系人角色和影响范围;
- 需求检查的过程:需求的流程、用户交互动作、系统信息交互等完整性检查;
3. 预测与监控
预测与监控在产品需求文档的管理上是联动的,是对于预测的事件发生的时候,进行管理的机制,监控=预测+干预。在产品需求文档的管理上,对于设计好的业务流程、使用功能,在实际过程中可能会出现这样或者那样的 “非规划”的使用,也就是我们通常说的“用户并不总是按照产品设计的方式来使用产品,而且,往往相反。”
因此,这部分内容很大的比例需要来对于用户的行为进行预测和监控,并提供“预防”或者“解决”方案。其中:
预防在于,预测产品的用户在使用的过程中,可能会进行的一些超过产品使用半径的操作,一旦进行这些操作,操作的任务流程会中断,掉出,进入其他业务流程中且无法回滚,从而使得操作无法进行下去,功能使用失败,使用者会感觉产品、功能没有包容性,缺乏引导性,导致了最后操作的失败,预想的结果没有实现,而且造成了一定的挫败感,甚至造成了一定的损失。预防的具体方法多采用导航、提示等,不同的系统都有各自标准化的控价,我们在这里不做展开。
解决在于,预测产品的用户在使用产品的过程中,因误解、操作手误而进行了“非标”、“超规”使用“掉出”原本设计的业务流程和操作流程的情况下,需要提供额外的流程和控制来“回转”用户的操作,来帮助用户回到预先设定和他所需要的流程上来。
解决的具体方法多通过“导航”引导“跳转”和“返回”、“回退”来实现。对应到实际的产品需求工作中:
- 需求准备的过程:了解用户特征和使用水平、评估、比较不同方式实现需求对于用户行为的可控性和“非常规”操作的危害程度;
- 需求分析的过程:选择和确定需求实现方案,评估行为管理方式和管理机制;
- 需求编写的过程:详细描述需求的业务流程和交互过程中可能出现的用户异常操作,相应异常操作中系统反应,系统对应的控制和引导;
- 需求检查的过程:需求“异常”流程和相应引导、控制地完整性检查;
在需求管理的过程中,就可以按照这个 描述——解释——预测——监控流程来进行。这四个既是步骤,是需求文档内容的组成部分,也是需求编写完成之后的检查。
四个模块构成了需求文档的完整性,且同时有各自独立,有对应的说明,引导、要求和标准。所谓标准文档,就可以按照这四个模块作为框架、内容和格式。
写在最后
产品需求文档作为产品经理同视觉设计、交互设计以及技术开发人员进行需求沟通的一个载体,在某些项目管理的理论和实践上可能并不是必须的产出物(比如敏捷项目可能通过用户操作地图就可以)。
但是一个完整的、充分沟通确认,并最终达成多方理解和共识的产品需求文档,能够最大限度的还原产品、功能的设计,保证产品、功能的实现,最大限度的减少因为各方理解的偏差而造成的时间、人力和经济资源的浪费及复工。
#专栏作家#
大侠,人人都是产品经理专栏作家。混过文青的支付出道的产品人,长期以支付厮混,关注支付、O2O、社交领域,擅长行业、业务需求分析,产品设计和用户体验。
本文原创发布于人人都是产品经理,未经许可,不得转载。
题图来自Unsplash,基于CC0协议