今天要聊的内容是关于“预测用户需求”的交互;

先来一个很常见的例子:

如图所示,当我们通过百度搜索“天气”时,百度就会向我们展示当前地理位置的天气信息,而不是展示“天气”的相关网站信息;

这是百度对用户需求进行预测的结果,将用户可能需要的结果,合理的展示出来,提高用户的使用效率。

那么,怎么设计好“预测用户需求”的交互呢?
 
 

一、完整流程

在交互设计时,将操作的流程,完整的罗列展示出来;

这里要思考的操作流程,不仅仅停留在自家APP上,来个例子:


比如淘宝这个例子,在你浏览商品,并截图的时候。淘宝就会自动出现这样的提醒,自动帮你生成分享链接,并复制好链接;

我们反向思考下,将商品截图后,我们可能会进行什么操作?同时哪一种操作是有利于产品的?

在这里,合理的答案为:分享。

我们进行截图后,很有可能是因为我们需要分享给别人。

虽然这里也存在其他操作的可能性,但是相比之下,分享这种操作方式,即符合了用户未来的操作,也有利于产品的传播。

这样一个预测流程是合理的,有效提高用户操作效率的;

小结:将一个操作流程,完整的罗列展示出来,预测用户下一步可能的操作流程,并进一步筛选出有利于产品的操作;
 
 

二、触发点

有了第一步的分析后,我们可以得到一个模糊的结果,即用户可能进行的操作行为;

而这一步,我们需要寻找出该操作行为的“触发点”,而触发点就是触发“预测结果”的开关;

先来个例子:

当你手机相册存在“新增图片”的情况;同时,在聊天截图,你点击“+”号按钮,这时,微信就会将新增的图片,快捷的展示出来,让你快速完成分享图片的操作;

在这个例子中,触发点为点击“+”号按钮,同时存在一个触发的前提条件;

当你地理位置发现变化时,打开大众点评应用,会自动进入“旅游版”界面,将当地的特色信息快捷展示在首页;

在这个例子中,触发点是手机GPS位置信息,而且是被动触发的;

当主动选择某个词语时,kindle会自动将“选中的词语”含义展示出来,左右滑动,还可以展示“选中的词语”的翻译结果;

在这个例子中,触发点是选择词语的操作,而且触发的结果是多样性的;

通过QQ发送多张图片时,当你先好图片后,QQ会自动将相册内容左移,把下一张图片的信息展示出来;这里省去了用户手动滑动展示下一张图片的操作;

在这个例子中,触发点是选中一张图片的操作;

小结:触发点可以是主动的,也可以是被动的;同时合理的触发点,应该“隐藏”在操作流程中,让用户流畅高效的完成操作;
 
 

三、变量元素

接下来,就是确认“变量元素”,顾名思义,就是通过这个变量元素,来控制展示的结果;

还是先来个例子:

使用易信聊天时,当你聊天的信息内容包含“类电话号的数字”时,对应的内容会以下划线的方式提醒用户有额外操作可选;点击对应的内容,可以进行快速呼叫,添加到通讯录等快捷操作;

在这个例子中,变量元素为“类电话号的数字”;换句话说,就是很有可能是电话号码的数字字符;

使用DailyCost进行“餐饮”类型的记账时,会根据当前记账的时间,自动将未命名的账单名称,命名为“早餐”、“午餐”和“晚餐”;

在这个例子中,变量元素为“当前记账的时间”;

回到刚刚谈“触发点”时,大众点评的例子;可以发现,变量元素跟触发点的关系很密切,“被动的触发点”也承担着“变量元素”的作用;

小结:变量元素是预测用户需求的核心元素之一,它跟触发点的关系很密切;

 
 

四、回归场景

其实通过前面三步,从完整流程的挖掘,到寻找触发点,最后确认变量元素;可以基本完成“预测用户需求“的交互方案;

但有一个核心元素,不能忽视,不然很可能会让这个方案显得“无意义”;

这个元素就是“回归用户的真实操作场景去思考”;

还是先来一个例子

京东跟淘宝在“截图分享”这个设计上大同小异,都是在用户截图时,给予分享的提醒;

不同的是,淘宝是生成链接,并自动复制好链接;并提供“微信”和“QQ”两个快捷入口;

而京东没有生成连接,而是提供了几个分享的快捷入口;

为什么呢?因为微信对淘宝分享的支持不友善,无法从微信中,直接打开淘宝商品的链接;

淘宝生成的分享链接,也不是普通的网站链接,而是经过特殊处理的“淘口令”链接;

但是京东不存在这个分享问题啊。

如果这里忽略了这个展示的场景限制,那本来想实现一个预测用户需求的高端设计,就变成了干扰用户操作的“反设计”了……

小结:认真思考每个场景/环节,从哪里来,回哪里去;
 
 

五、总结

预测用户需求的交互,其实挺常见的,各种搜索引擎/广告推送等,都在做着这件事;这次主要针对“交互设计”这个环节进行分析;

总的来说,整个设计构思流程大概分为四步:整理完整的流程,寻找触发点,确定变量元素,回归场景检查设计。

最后还有一句话:如果这个预测用户操作的交互是合理的,那么给产品带来的就会是正面效应;反之,如果没有合理的设计这个过程,会给用户正常操作带来不必要的干扰,形成负面效应。