交互思考:怎么设计任务流程
2022年第42篇原创
任务,到底是怎么来的?
是原本就存在的?还是人为设计而来的?
游戏中npc会交给你一个任务,完成任务获得奖励。每一个任务都会有一个目标,比如你要帮助农夫艾尔赶跑正在破坏农田的地精,你的任务就是杀死100只地精,这是农夫给你的任务。你现在有点内急,你想去厕所解决这个燃眉之急,所以你的目标是去解决内急这个问题,任务是找到厕所,进入包厢,进行“作业”。你会觉得前者是农夫设计好的任务让你来完成,而后者是自发的,是自己安排的任务?
不对,其实后者也是经营者安排好的任务。当用户有需要的时候才会进入这个任务。
再举个例子,在家里吃饭、喝水、洗衣服,其实每一个都是任务,设计师会根据用户需求去设计“任务”流程,比如你在卫生间洗完澡,你的脏衣服放在哪里,如果你要洗衣服需要把衣服从卫生间拿到哪里去洗,中间要经过哪些空间,洗完的时候衣服晾晒在哪里,晾晒完后又要收入到哪里,比如我现在的工作间外就是一个阳台,阳台上放着洗衣机,每当我开始码字的时候,就会有人用洗衣机洗衣服…...但是这个对于任务的执行者而言是最好的方案,洗衣机没有其他可放置的空间。
再说个例子,还是上厕所的,有点俗大家不要见怪。你们是否有想过,为什么厕所里的洗手池不放在小隔间里面?如果根据就近原则,上完厕所直接洗手不应该更快吗?显然,场景不是这么单一的,大家来厕所不仅仅是为了上号,可能只是洗个手、抽个烟、补个妆,如果隔间里放洗手池,那对于这部分人而言只能等别人上完号才能洗手了?显然是不行的,如果不考虑成本和空间的话,里外都放一个会更好吗?显然也不行,对于经营者而言,还要考虑效率、利用率等
以上两则是多人空间中的任务设计,任务是人为设计的,根据不同的目标,任务的效率、体验都会有一定变化。
那么任务该怎么设计才能让效率和体验都更好呢?效率并不意味着步骤少,比如现在有一个把大象放进冰箱的任务,大家都知道只需要三步就可以把它放进去,但是如果塞不进怎么办呢?那是不是要切块或者切块后放到两个冰箱。
所以当我们在设计任务的时候首先需要设定任务的关键节点,比如开门-塞象-关门,然后每个节点会出现更多的子节点,比如门锁上了需要先解锁,大象塞不进要先切块等等。
同理我们用一个买电影票的任务流程来解释一下,用户的目标是想在线上预定电影票去线下看电影,所以他在线上需要购买一张票。那么为了让用户能够成功买到票,我们针对这个目标来设定几个关键的节点:1.选择电影 2.选择日期 3.选择影院 4.选择时间 5.选择座位6.确认订单 7.支付。
有同学一定想问,这些关键节点是怎么列出来的?为什么一定是这样的顺序呢?首先关键节点在一开始列的时候顺序可以是打乱的,所以第一步需要大家头脑风暴,先列出关键节点,关键节点也可以理解为用户的关键行为,行为的颗粒度可以大一点。
之后再根据用户场景进行排序。比如可能我们在列的时候会先列出选择影院再列选择时间,当我们分析过用户场景和真实需求后,选择日期就会排在影院之前。也有同学会说,我一般是先选择电影院再考虑看什么电影的,确实,但这种场景一定是少数,比如你在外地出差,你突然想看电影,你会先找附近有什么电影院,但是用户大多数情况都是先想好要看什么电影,再考虑什么时候看,去哪里看。
那又有同学要说了,选择日期和选择电影院很难说谁先谁后,那怎么判断呢?我们可以给这些关键行为一个具像化呈现
这样就能很清楚判断谁先谁后了,选择影院需要有一个影院列表,选择日期需要有日期的控制器,可以用tab、双联picker、展开式布局,所以通过分析影院的类型,用户需要进行筛选和浏览,这样属性的内容就要放在界面的下方,同时日期单独处理成一个界面也显得效率很低,所以日期在前影院在后是比较合理的,而日期选择的方式也是考虑用户看电影不像买飞机或酒店票需要非常大的时间跨度,所以一周内的tab时间选择就可以了。
到目前为止,我们只是对关键行为节点进行了梳理,还没有呈现到界面上去,所以根据这些关键行为我们再进行页面维度的填充。
1.选择电影,怎么选择?这里又要区分场景了,场景1:我知道自己要看哪本电影,也知道电影的基本内容,只要让我找到那本电影在哪里就可以了。场景2:我不知道要看什么电影,最近电影荒。满足场景1的需求我们需要一个所有电影的列表,满足场景2的需求我们需要一个电影详情介绍,并且电影详情介绍也会部分存在于场景1中。
列表和详情,显然不能做在一个界面中,那么这里就可以拆成两个界面了。
2.选择日期和影院,刚才解释过了,那么就放在一个界面中。
3.选择时间,每个影院的排片时间不同,所以时间需要单独选择。也独立成一个界面。
4.选择座位,如果你要硬塞,其实是可以把选择座位和时间放在一张界面中的,因为像现在很多线上购票软件在选择座位的时候也能够选择时间。在选择时间的时候也能选择日期和影片。
所以这里又要提到线性任务,如果一个任务是线性的,并且任务节点中的用户场景有重复,那么需要让用户在当前页面就可以进行直接操作,比如我在选择完影院之后又想看其他电影了怎么办,那我是不是要返回到最开始的列表,这显然效率是很低的。那么正确的做法就是当用户确定好要在哪家影院看之后,让用户可以同步修改影片和日期。
然后在选择座位的时候又可以同步修改时间,大家发现没有,这两个界面中,每个界面里的信息都会和之前界面中有重复,显然,也是和场景有关。
那为什么不干脆都做在一个界面中呢?我们来看下,web端是怎么做的:
web端的空间充裕,所以他将影片介绍、选择影院、选择日期、选择时间都放在了一个界面中,选座也是另起一个界面。所以,只要空间够大,其实这些内容都可以放在一起,但是也要考虑单个界面的复杂度。
我们也来尝试一下,能不能把信息都塞到一个界面中,我分别在移动端和web端给大家演示一下:
显然太复杂了,同时也会出现一个问题,那就是在一个界面中出现过个核心任务按钮,像选座购票、确认选座这样的按钮是不能出现在同一个界面中的
来总结一下,想要规划好一个任务流程,需要做注意以下几点:
1.根据任务目标列出关键行为节点
2.根据用户核心场景将行为节点进行排序
3.根据核心场景将行为节点以页面维度进行合并
4.补充其他支线场景
看看自己有没有学会,咱们布置一道题目来练习一下,大家可以设计一个线上预定早餐,线下取货的流程,通过这个方法来规划关键行为节点,并设计任务及原型。