首先从业务流程开始说起了,我在设计产品的时候常常从业务流程开始。我们要做一个叫“我要订餐”的产品。
现在我们需要一个流程将业务跑通,假象一下我们的产品是个第三方订餐平台,平台上有很多餐馆,用户通过我们的平台点餐付款,我们通知餐馆做饭,送餐等等。我们首先要做的就是理清产品中有多少种角色,在脑子里想象下如果一个用户下单,需要穿梭过多少种角色才能完成它的下单流程,然后用软件或是纸笔来将流程画出。
画业务流程通常会用到“泳道图”这个是专门来表示多角色配合的一种流程。如下图,我随手画的,示意一下。
角色有三,用户,系统(后台),厨房(第三方商家)。
我们来跑一下这个短短的流程,如果「用户」选好了今天的饭菜,提交订单了,这时就将订单信息推送给了「系统」,「系统」在后台生成订单,用户的订单状态变为「等待付款」。(其实系统这部分用户是看不到的,但是产品经理需要想清楚。)用户会来到支付页面,这时候做一个判断,用户是否为这个订单支付了费用呢?如果是,那么「系统」就会受理这个订单,将信息推送给第三方「厨房」,如果不是,那么用户就是取消了订单,订单状态变为「订单失败」。接受到订单的第三方厨房也会做一次判断,这个订单接还是不接呢?这是个问题~
我眼中的业务流程是个大局的东西,在思考他的时候也是着眼于整个系统的,你不在是一个用户,因为用户是不必知道后台的一些判断细节或是操作过程的,但如果你是产品经理的话是一定要清楚的。流程中总是由一个动作展开,那么思考时,我们要对每一步都带着一个“如果……不……”会怎么样的心态,就会发现很多可以做判断的地方。如果支付不成功呢?如果厨房不接单呢?如果退款不成功呢?这样想下去你的流程细节就会越来越完善。
OK,回顾一下,业务流程的重点是:设定角色,跑通流程、用“如果……不……”穷尽判断,思考产品背后的判断逻辑。
沿用这个栗子,说说操作流程。
操作流程,顾名思义,就是用户对产品的一个操作流程,这个流程是为了完成某个任务。比如成功下单,比如登陆注册,比如退款等等。我又很简单的画了下面的图,这就是“用户下单”的操作流程。
他完全是以一个用户的操作角度来写,你也可以去画一下系统后台某种操作流程等等,他并不限于所谓的消费者用户。在初画操作流程的时候,不要早早的去过分在意细节与逆流程,逆流程便是那些需要判断是否的那个“否”的流程。第一次我往往都会用最理想的状态,将流程跑通,再去思考这里面会不会有那些“如果……不……”的细节。
最后是页面流程图
他算是比较好理解的了,这个流程我通常会在完成原型图完成后来制作,通常会用Axure来绘制,再加上一些文字上的注解。业务流程与操作流程都在他之上完成,当建立起来操作流程,页面跳转的流程也就跃然纸上了,只是在做某些交互行为时要多加注意页面之间的逻辑、层级关系,做到跳转不歧义。
比如前几天我一个上了些年纪的亲戚来请教我手机网购的事情,我一步步教他如何选商品、注册、下单、支付,当订单提交后,页面定格在了。“恭喜您,下单成功”页面中,并给了一个查看订单和联系客服的按钮。他问我:“下一步怎么办,我还想买别的”。
这是页面跳转流程的问题呢?或是叫他用户体验,交互问题都可吧。已经完成购物的用户,真的在那一刻想看“订单详情”吗?还是引导他去买更多的东西?这便是页面跳转引导流程上的思考了。
透过上面的案例,不难看出流程实际上就是“开始,结束,行动,状态与判断”的组合。一切流程都有启示的位置与结束的位置,我们在其中行动(与之交互),有时候一个行动我们需要判断是否要做,做完了又会变成一种什么状态。如此反复,就形成了所谓的流程。