写需求文档是产品经理最基础的能力之一了,但每个行业、每个公司的产品需求文档格式都不相同,但在网上百度却很少有适用的模板。一篇好的需求文档,能提高研发效率,减少沟通成本,自己也是踩了不少坑,和做产品的朋友也交流了很多,现在总结出了一份相对比较完善的需求文档,希望能帮助到有需要的小伙伴。01为什么需要需求文档?对于产品经理而言,就是一份约束手册,所有的需求都是经过再三推导和验证得出的,不是拍脑袋决定的。对于研发而言,就是开发范畴的范围手册,避免后续产品变卦,之前我出的需求,一旦涉及变更,研发要求一定要更新在文档上,他们只认文档,不认产品。对于测试人员而言,作为后续验收测试的标准。当然一份好的需求文档,也是为了方便后续查阅。人的记忆总是会随着时间的推移而逐渐消退。对于后续新接手这个项目的相关人员也是大大有益的。02需求文档有哪些结构?1.文件名:项目名称+版本号关于版本号的定义,这里我说明一下。通常情况下,版本号采用X.Y.Z格式,X、Y和Z为非负整数。X是主要版本号,Y是次要版本号,Z是修订版本号,每个版本号按数字增加,如:v1.8.0 --> v1.9.0 --> v1.10.0X代表的是:主版本号如产品的主要功能有较大变动、产品的整体结构改变等重大的改动情况,则在X的数字基础上+1。Y代表的是:次要版本号当在产品原有的基础上增加部分功能,且并不影响产品的整体流程或业务,则更新后会在B的数字基础上+1。Z代表的是:修订版本号在解决缺陷或者细微功能的扩充时,则在Z的数字基础上+1。2.文档要素1)需要变更记录需求虽然评审确认了,以为不会再有什么差错了,但是会发现研发过程中,还是会遇到各种各样的问题,可能导致需求的变更,这时,需要变更的需求要被一一记录,并再次评审确认,如果影响上线时间,也需要跟相关业务或者业主同步上线时间。2)研发时间及人员需要罗列出产品、UI/UE、前端、后端、测试、部署(预发、生产)对应的人员名称和所需要的时间,如开始时间、结束时间,如果时间有延迟,需要添加实际开始时间、实际结束时间。3)工时评估将需求功能清单罗列,将功能点尽量罗列清楚,罗列的越清楚,研发评估工时越准确,后面分为UI、前端、后端、测试,等需求评审通过后,让相关负责人填写相应工时,产品经理再根据工时,就可以确认提测和上线时间了。4)需求背景和列表每个版本里面的需求,有些需求满足项目交付,有些需求提升用户体验,有些需求丰富产品功能,提高产品竞争力,将版本需求描述清楚,方便研发人员对需求的理解。需求列表,内容有一级模块和二级模块名称和描述,方便研发人员对这个版本有个大致的了解。5)名词解释如果此版本需求里面有些比较晦涩的名词,可将这些名词加以介绍,方便研发对业务和需求的理解。6)产品总逻辑图、细分业务的时序图如果设计的软件或平台,里面的功能和流程相对比较复杂,需求涉及的人员角色和流程比较多,最好用流程图梳理一下,有利于产品经理对业务的梳理,防止某些流程和场景的遗漏,也方便业务对产品需求的理解。除了产品总的逻辑图,遇到一些状态变化较多的需求可以用时序图,比如登录流程、用户交易流程等等。电商网站用户购买业务流程v1.9.0 --> v1.10.0","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"udjZ-1667813062758","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"gDB8-1667813062757","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"PPQe-1667813062760","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"cIST-1667813062759","leaves":[{"text":"X代表的是:主版本号","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"yn80-1667813062762","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"W4D6-1667813062761","leaves":[{"text":"如产品的主要功能有较大变动、产品的整体结构改变等重大的改动情况,则在X的数字基础上+1。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"a87s-1667813062768","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"5DAu-1667813062767","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"2BSK-1667813062770","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"AdHM-1667813062769","leaves":[{"text":"Y代表的是:次要版本号","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"yeRX-1667813062772","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"k69O-1667813062771","leaves":[{"text":"当在产品原有的基础上增加部分功能,且并不影响产品的整体流程或业务,则更新后会在B的数字基础上+1。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"eB5E-1667813062774","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"MreZ-1667813062773","leaves":[{"text":"","marks":[]}]}],"state":{}},{"type":"block","id":"0kcQ-1667813062778","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"io61-1667813062777","leaves":[{"text":"Z代表的是:修订版本号","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"0WnP-1667813111044","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"53nv-1667813111043","leaves":[{"text":"在解决缺陷或者细微功能的扩充时,则在Z的数字基础上+1。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ubJs-1667813195442","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"CTJW-1667813195439","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"11wz-1667813195626","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"95u7-1667813195624","leaves":[{"text":"2.文档要素","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"YENr-1667813222988","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"2zoc-1667813222987","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"Kq3j-1667813224017","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"hyFI-1667813224015","leaves":[{"text":"1)需要变更记录","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"BXdO-1667814729307","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"GF4r-1667814729302","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"BNqg-1667814729494","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"LK8G-1667814729492","leaves":[{"text":"需求虽然评审确认了,以为不会再有什么差错了,但是会发现研发过程中,还是会遇到各种各样的问题,可能导致需求的变更,这时,需要变更的需求要被一一记录,并再次评审确认,如果影响上线时间,也需要跟相关业务或者业主同步上线时间。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"klM4-1667813274410","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"zvh7-1667813274389","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"eNFn-1667813274602","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"Vpeq-1667813274601","leaves":[{"text":"2)研发时间及人员","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"AhMC-1667814974225","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"jEiV-1667814974206","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"M772-1667814974340","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"mzNh-1667814974339","leaves":[{"text":"需要罗列出产品、UI/UE、前端、后端、测试、部署(预发、生产)对应的人员名称和所需要的时间,如开始时间、结束时间,如果时间有延迟,需要添加实际开始时间、实际结束时间。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"6SuT-1667813291154","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"umGg-1667813291152","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"4Jvv-1667813291607","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"ts7Q-1667813291605","leaves":[{"text":"3)工时评估","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"sjFJ-1668039660508","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"ZSVY-1668039660501","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"M2S1-1668039660648","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"KpgF-1668039660645","leaves":[{"text":"将需求功能清单罗列,将功能点尽量罗列清楚,罗列的越清楚,研发评估工时越准确,后面分为UI、前端、后端、测试,等需求评审通过后,让相关负责人填写相应工时,产品经理再根据工时,就可以确认提测和上线时间了。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"RCiL-1667813303058","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"xy0j-1667813303056","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"FCdW-1667813303311","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"z9LM-1667813303309","leaves":[{"text":"4)需求背景和列表","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"C3BI-1668040002665","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"meXv-1668040002659","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"sMqU-1668040058653","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"2cR8-1668040058649","leaves":[{"text":"每个版本里面的需求,有些需求满足项目交付,有些需求提升用户体验,有些需求丰富产品功能,提高产品竞争力,将版本需求描述清楚,方便研发人员对需求的理解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"JXn1-1668040382560","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"VRcx-1668040382557","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"oJKj-1668040383805","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"f26j-1668040383802","leaves":[{"text":"需求列表,内容有一级模块和二级模块名称和描述,方便研发人员对这个版本有个大致的了解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"1IPI-1667813515172","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"5BSo-1667813515169","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"8Y0b-1667813515799","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"11E3-1667813515797","leaves":[{"text":"5)名词解释","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"jkFD-1668040494132","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"60Yy-1668040494128","leaves":[{"text":"如果此版本需求里面有些比较晦涩的名词,可将这些名词加以介绍,方便研发对业务和需求的理解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"UG7Y-1667813402354","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"UUea-1667813402352","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"uRcJ-1667813402860","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"aj5d-1667813402858","leaves":[{"text":"6)产品总逻辑图、细分业务的时序图","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"zFuv-1667813470942","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"qJWJ-1667813470940","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ZmUJ-1668040588505","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"PHsC-1668040588501","leaves":[{"text":"如果设计的软件或平台,里面的功能和流程相对比较复杂,需求涉及的人员角色和流程比较多,最好用流程图梳理一下,有利于产品经理对业务的梳理,防止某些流程和场景的遗漏,也方便业务对产品需求的理解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"GFbI-1668040859081","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"96cS-1668040859077","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"tccC-1668040859246","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"qJIF-1668040859243","leaves":[{"text":"除了产品总的逻辑图,遇到一些状态变化较多的需求可以用时序图,比如登录流程、用户交易流程等等。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"km4w-1668261800512","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"XdfB-1668261800508","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ZSsJ-1668261800669","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"Z0AU-1668261800667","leaves":[{"text":"电商网站用户购买业务流程","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"YxOV-1668261801887","name":"image","data":{"version":1,"width":841,"url":"https://note.youdao.com/yws/res/27491/WEBRESOURCEb63be02d55b0b1979777cda2bedaaa93","height":1661},"nodes":[],"state":{}},{"type":"block","id":"5Rqq-1668040580766","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"4Evq-1668040580763","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"1c5r-1668261887264","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"TCFI-1668261887260","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"htMr-1668261887425","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"KEAU-1668261887424","leaves":[{"text":"话费充值app流程","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"aD3I-1668261888054","name":"image","data":{"version":1,"width":1194,"url":"https://note.youdao.com/yws/res/27493/WEBRESOURCE9ac9b38383cab5df0d5edf0edb8a54a1","height":1445},"nodes":[],"state":{}},{"type":"block","id":"bQfi-1667813471495","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"AX9Z-1667813471493","leaves":[{"text":"7)页面原型及说明","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"NrYU-1667812427658","name":"paragraph","data":{},"nodes":[{"type":"text","id":"PMKV-1667812427656","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"zNS1-1668040967610","name":"paragraph","data":{},"nodes":[{"type":"text","id":"sUPt-1668040967607","leaves":[{"text":"分不同模块,将原型页面贴到需求文档上,可以分为需求说明和功能说明,需求说明就是总体介绍一下这个需求,有哪些模块,用户能用来做什么,解决了用户什么痛点;","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"IUeW-1668261515626","name":"paragraph","data":{},"nodes":[{"type":"text","id":"Kbl8-1668261515625","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"aTFV-1668261503225","name":"paragraph","data":{},"nodes":[{"type":"text","id":"Zxu7-1668261503222","leaves":[{"text":"功能说明大致有以下内容:","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"O7U3-1668261469121","name":"list-item","data":{"listId":"gNLI-1668261524934","listLevel":1,"listType":"unordered"},"nodes":[{"type":"text","id":"OcWK-1668261469118","leaves":[{"text":"前端展示元素:用户登录进到页面会看到什么内容","marks":[{"type":"fontSize","value":18}]}]}],"state":{"index":1}},{"type":"block","id":"XsPl-1668261470118","name":"list-item","data":{"listId":"gNLI-1668261524934","listLevel":1,"listType":"unordered"},"nodes":[{"type":"text","id":"MoyS-1668261470117","leaves":[{"text":"用户操作反馈:可点、不可点,点了之后页面的反馈是什么?Toast、弹窗、按钮变化等等。","marks":[{"type":"fontSize","value":18}]}]}],"state":{"index":2}},{"type":"block","id":"XaLU-1668261470120","name":"list-item","data":{"listId":"gNLI-1668261524934","listLevel":1,"listType":"unordered"},"nodes":[{"type":"text","id":"CGhB-1668261470119","leaves":[{"text":"异常极值考虑:网络异常、用户状态异常、数据反馈异常,遇到极值场景如何处理等等。","marks":[{"type":"fontSize","value":18}]}]}],"state":{"index":3}},{"type":"block","id":"sefD-1667812563502","name":"paragraph","data":{},"nodes":[{"type":"text","id":"x8gs-1667812563435","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"Lddy-1667812563691","name":"paragraph","data":{},"nodes":[{"type":"text","id":"qA1L-1667812563688","leaves":[{"text":"三、注意事项","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"fSYI-1667812736972","name":"paragraph","data":{},"nodes":[{"type":"text","id":"a1PW-1667812736966","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"XOZe-1667812737554","name":"paragraph","data":{},"nodes":[{"type":"text","id":"kqzC-1667812737552","leaves":[{"text":"1.需求场景遗漏","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"38qJ-1668257850676","name":"paragraph","data":{},"nodes":[{"type":"text","id":"LyRx-1668257850675","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"6G5E-1668257850838","name":"paragraph","data":{},"nodes":[{"type":"text","id":"Puy4-1668257850837","leaves":[{"text":"关于这一点,我的看法是再牛叉的产品也做不到能考虑到全部的用户使用场景,做到滴水不漏。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"umVY-1668257929061","name":"paragraph","data":{},"nodes":[{"type":"text","id":"IHgG-1668257929049","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ZAgx-1668257929241","name":"paragraph","data":{},"nodes":[{"type":"text","id":"dmU9-1668257929239","leaves":[{"text":"我们能做到的就是尽可能的模拟用户的使用场景,将可能的场景全部罗列出来,按照不同的场景去梳理流程和需求,尽量做到整个业务逻辑完整能闭环、需求表达清晰无误解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"YLPV-1668257538839","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"OWBZ-1668257538838","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"MikY-1668257539305","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"dD1W-1668257539304","leaves":[{"text":"文档前后逻辑能形成闭环,不自相矛盾,覆盖的场景要尽可能的全,不存在较大逻辑缺陷。多问几个为什么,考虑问题更深层点。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"r7C8-1668257560252","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"6Sa4-1668257560250","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"xPlw-1668257560412","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"1AXk-1668257560410","leaves":[{"text":"整个需求文档表达中,无论是文字标注还是图形呈现,需要做到让研发和测试不会产生歧义和误解。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"YNCy-1668041169705","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"6T6s-1668041169701","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ST3y-1668041591848","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"XeTw-1668041591845","leaves":[{"text":"需求文档撰写完成,会进行需求评审,但不要想着等着需求评审,研发测试会帮你找到一些逻辑漏洞或需求没有考虑清楚的地方,会议上研发不会听的那么详细,评审只会暴露出一些大的流程问题,很多小问题只有在真正研发过程中才能被发现。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"2pQI-1668307534048","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"8Cup-1668307534043","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"KMLz-1668307538294","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"Y44h-1668307538291","leaves":[{"text":"但在研发过程中如果暴露出很多问题,会让研发觉得产品经理没有想清楚,这样的事情发生多次,会影响产品经理的公信度,让研发觉得这个产品不靠谱。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"YAkA-1668257824464","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"zYDS-1668257824461","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"rHXA-1668257824657","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"KDXZ-1668257824656","leaves":[{"text":"所以产品经理思考需求和流程时,尽量考虑全面,撰写完成后,自己模拟用户走一遍流程,不然会因为需求文档描述的不清晰,会极大的增加沟通成本,严重的会使得研发返工,影响版本上线时间。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"cPg6-1668041335821","name":"paragraph","data":{"version":1},"nodes":[{"type":"text","id":"x7OW-1668041335817","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"KC8c-1667812741570","name":"paragraph","data":{},"nodes":[{"type":"text","id":"aNQg-1667812741568","leaves":[{"text":"2.写需求过早陷入交互细节","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"xPBC-1668258477869","name":"paragraph","data":{},"nodes":[{"type":"text","id":"WMOF-1668258477867","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"6Egq-1668258511047","name":"paragraph","data":{},"nodes":[{"type":"text","id":"ouD8-1668258511045","leaves":[{"text":"产品拿到需求,很多刚入行的产品经理,有想法之后会直接开始绘制原型,绘制页面跳转和交互,页面色彩使用丰富,交互设计的很炫酷。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"IgBU-1668307831226","name":"paragraph","data":{},"nodes":[{"type":"text","id":"DMi0-1668307831223","leaves":[{"text":"但最后发现原型绘制完了,因为对需求的业务场景、用户群体没有详细深入的了解,发现原型并不能解决用户的需求,导致之前的工作要整改甚至推到全来,之前的努力全部白费。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"eKYt-1668258898339","name":"paragraph","data":{},"nodes":[{"type":"text","id":"Nze3-1668258898337","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"LXfP-1668258912201","name":"paragraph","data":{},"nodes":[{"type":"text","id":"6qcZ-1668258912199","leaves":[{"text":"我发现,确实很多转行或者刚入行的产品经理都把重心放在原型和交互上,其实是本末倒置了,原型这种基础的能力小白也可以做,但产品经理最核心的工作是什么呢?是需求的收集和调研,加强对业务和用户的理解才是最重要的。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"Y588-1668261957100","name":"paragraph","data":{},"nodes":[{"type":"text","id":"erGD-1668261957099","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"yGN8-1667812756875","name":"paragraph","data":{},"nodes":[{"type":"text","id":"QSk0-1667812756873","leaves":[{"text":"3.写需求的视角从阅读者出发","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"M91a-1668259060666","name":"paragraph","data":{},"nodes":[{"type":"text","id":"SwnE-1668259060664","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"oQC0-1668259060828","name":"paragraph","data":{},"nodes":[{"type":"text","id":"2EIN-1668259060827","leaves":[{"text":"要知道需求文档是给谁写的,主要服务于谁,不要产品经理自己写嗨了,看的人一脸懵逼。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"gubo-1668259254701","name":"paragraph","data":{},"nodes":[{"type":"text","id":"q9tS-1668259254689","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"zQce-1668259270332","name":"paragraph","data":{},"nodes":[{"type":"text","id":"nZ95-1668259270330","leaves":[{"text":"产品经理写需求的过程中,大多数都是从自己的视角出发,其实一个好的需求描述,需要从阅读者的视角出发,需要有同理心,有时候一句需求描述,用自己的视角看,觉得没什么问题,因为自己是功能的设计者,会自然而然的代入一部分自己的想法,但是从用户、研发、测试视角看,就觉得会有歧义,会导致最终开发的功能与产品设计会有出入。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"RnQU-1668259499398","name":"paragraph","data":{},"nodes":[{"type":"text","id":"gzO5-1668259499395","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"ppsL-1668258489983","name":"paragraph","data":{},"nodes":[{"type":"text","id":"poet-1668258489981","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"UTaV-1668258490115","name":"paragraph","data":{},"nodes":[{"type":"text","id":"vsu7-1668258490113","leaves":[{"text":"四、最后","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"aPUy-1668258499347","name":"paragraph","data":{},"nodes":[{"type":"text","id":"hPJ9-1668258499346","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"qW8y-1668258499480","name":"paragraph","data":{},"nodes":[{"type":"text","id":"8oV9-1668258499479","leaves":[{"text":"其实以上所说的,说起来容易做起来还是非常难得,说实话,我也没有做的非常好,因为业务场景和需求描述的问题,也经常会被研发怼,但是我相信,只要不断的写,不断的总结,那些错误和遗漏的场景就会越来越少。","marks":[{"type":"fontSize","value":18}]}]}],"state":{}},{"type":"block","id":"40RE-1668258499644","name":"paragraph","data":{},"nodes":[{"type":"text","id":"gFso-1668258499643","leaves":[{"text":"","marks":[{"type":"fontSize","value":18}]}]}],"state":{}}]">话费充值app时序图7)页面原型及说明分不同模块,将原型页面贴到需求文档上,可以分为需求说明和功能说明,需求说明就是总体介绍一下这个需求,有哪些模块,用户能用来做什么,解决了用户什么痛点;功能说明大致有以下内容:前端展示元素:用户登录进到页面会看到什么内容?用户操作反馈:可点、不可点,点了之后页面的反馈是什么?Toast、弹窗、按钮变化等等。异常极值考虑:网络异常、用户状态异常、数据反馈异常,遇到极值场景如何处理等等。03注意事项1.需求场景遗漏关于这一点,我的看法是再牛叉的产品也做不到能考虑到全部的用户使用场景,做到滴水不漏。我们能做到的就是尽可能的模拟用户的使用场景,将可能的场景全部罗列出来,按照不同的场景去梳理流程和需求,尽量做到整个业务逻辑完整能闭环、需求表达清晰无误解。文档前后逻辑能形成闭环,不自相矛盾,覆盖的场景要尽可能的全,不存在较大逻辑缺陷。多问几个为什么,考虑问题更深层点。整个需求文档表达中,无论是文字标注还是图形呈现,需要做到让研发和测试不会产生歧义和误解。需求文档撰写完成,会进行需求评审,但不要想着等着需求评审,研发测试会帮你找到一些逻辑漏洞或需求没有考虑清楚的地方,会议上研发不会听的那么详细,评审只会暴露出一些大的流程问题,很多小问题只有在真正研发过程中才能被发现。但在研发过程中如果暴露出很多问题,会让研发觉得产品经理没有想清楚,这样的事情发生多次,会影响产品经理的公信度,让研发觉得这个产品不靠谱。所以产品经理思考需求和流程时,尽量考虑全面,撰写完成后,自己模拟用户走一遍流程,不然会因为需求文档描述的不清晰,会极大的增加沟通成本,严重的会使得研发返工,影响版本上线时间。2.写需求过早陷入交互细节产品拿到需求,很多刚入行的产品经理,有想法之后会直接开始绘制原型,绘制页面跳转和交互,页面色彩使用丰富,交互设计的很炫酷。但最后发现原型绘制完了,因为对需求的业务场景、用户群体没有详细深入的了解,发现原型并不能解决用户的需求,导致之前的工作要整改甚至推到全来,之前的努力全部白费。我发现,确实很多转行或者刚入行的产品经理都把重心放在原型和交互上,其实是本末倒置了,原型这种基础的能力小白也可以做,但产品经理最核心的工作是什么呢?是需求的收集和调研,加强对业务和用户的理解才是最重要的。3.写需求的视角从阅读者出发要知道需求文档是给谁写的,主要服务于谁,不要产品经理自己写嗨了,看的人一脸懵逼。产品经理写需求的过程中,大多数都是从自己的视角出发,其实一个好的需求描述,需要从阅读者的视角出发,需要有同理心。有时候一句需求描述,用自己的视角看,觉得没什么问题,因为自己是功能的设计者,会自然而然的代入一部分自己的想法,但是从用户、研发、测试视角看,就觉得会有歧义,会导致最终开发的功能与产品设计会有出入。04最后其实以上所说的,说起来容易做起来还是非常难得,说实话,我也没有做的非常好,因为业务场景和需求描述的问题,也经常会被研发怼。但是我相信,只要不断的写,不断的总结,那些错误和遗漏的场景就会越来越少。">

《来自阿里的一份需求文档(PRD)》是一个鸟哥笔记作者:晨阳产品笔记 发布时间:2022-11-17

标签:

相关导航