产品需求文档(PRD)那点事
说到产品需求文档(PRD)我想大家都不陌生,一个包括产品概要、业务逻辑、功能需求等内容并给UI、前端、开发和测试看的文档,大家肯定都写过,而且我也相信大家的写法都大有不同!一般情况下,这份文档有几个基本的特点:(我自己的体会)
1)word文档
2)一般都是产品写的
3)以产品交互为主,site map、业务逻辑描述为辅
4)里面总是缺斤少两,要依靠后期的沟通来实现完整的交互
最近在写一些app的需求文档的时候,发现了自己在文档撰写方面存在一些问题,而且自己之前都没有发现这些问题的严重性,其中最突出的两个问题:1、交互过程中的后置条件思考的不够健全。2、用户操作提醒机制的缺乏。3、交互细节的把握。
一、交互过程中的后置条件
或许这是一个很2的问题,但在写文档过程中确实会经常碰到!比方说在一个弹窗上点击“确定”按钮后,弹窗的状态变化、页面的状态变化、相关数据的变更等内容。
如下图所示,在交友应用中,点击“打招呼”按钮后弹出对话框,点击“发送”按钮后,弹窗会消失,页面是停留在当前页面还是到消息汇总页面,如果停留在当前页面,用户是否可以无限次的跟同一个人打招呼,打招呼按钮是否有状态变化。如果跳到消息汇总页面,用户是否可以一键返回当前页面。
还有,有些交互的后置条件为空,比方说点击“我的好友”tab,如果我没有好友,这个页面将怎么处理,看似简单的问题,实际上很多人会不经意间忽略。
可能因为自己的能力不足,在写文档过程中经常会出现这个问题,考虑不足导致沟通成本加大,甚至造成项目延期。而针对这个问题,我的想法是:1、一定要对整个产品的IA了如指掌,熟悉每个模版的功能。这里可以考虑使用MM或者直接手绘。2、站在用户的角度,去走完整个业务流程,不能允许用户走到一半走不动的情况发生。这里也可以建立几个任务,让同事在原型上完成,看看他们的操作是怎样的。
二、提醒机制
这里我重点讲两个方面,一个是文字提醒,一个是弹窗提醒。文字提醒,即用户完成一个操作后会用文字的形式在用户看得到的位置提醒用户操作完成。弹窗提醒则是将提示的文字以弹窗的形式呈现出来了。
比较典型的问题提醒就是注册和登录页面,如下图:
当用户填写的注册邮箱有误、用户名已经被注册过、密码前后不一致时都会在输入框的后方有句话,提示用户输入有误。
另外一种提醒机制就是弹窗。比较典型的,在用户退出站点的时候, 会有弹窗提示用户是否确定退出。
在不影响用户体验的前提下,弹窗的形式更明显,直接。
而我在处理这个问题上就做的不够好,你会看到,当你没有想到这个地方要用弹窗提醒用户完成了操作时,开发人员极有可能不做任何提醒机制,或者做了也是系统弹窗,这会大大降低用户的体验度
实际上在处理好第一个问题之后,第二个问题是顺理成章的事情,只是要考虑下是用文字提醒还是用弹窗就好。
三、交互细节的把握
这里涉及到的内容就比较多、杂,下面举几个例子:
Radio button是否有默认值:
用户进来后检索框有无默认值:
按钮划过、点击前和点击后的效果:
输入框有无字数限制:
输入非法字符时的后置条件:
选择年龄时,年龄段的划分:
点击按钮时,是在当前页面刷新还是弹出新的页面;tab设计是否用框架结构;浏览器的兼容性要求等
这些内容在文档中都应该有所体现,但在现实中,最起码我在写文档时都会忽略这些内容,严重的情况下产品有可能会出现致命的BUG。
总结:上面这三个问题是我在写文档过程中容易出现的问题,在总结的同时也在加强自己在这方面的能力,如果你没有这些问题,那么恭喜你,你的文档撰写能力不错,如果你跟我一样也有这些问题,希望我写的这些内容有助于你避免这些问题。
实际上呢,PRD只是一个工具,其目的是想让项目相关人员了解到这个产品的全部细节。有些童鞋可能会选择用高保真的原型来实现这个目的。其实都是有利有弊,我理解的最理想的状态是:细节的文档+大概的原型+高效率的沟通!