美文网首页
交互中的响应时间

交互中的响应时间

作者: 是hoho呀 | 来源:发表于2020-09-04 16:56 被阅读0次

响应时间指从用户执行操作到反馈出现的间隔时间。

Robert B. Miller在他的研究《人机对话的响应时间》中,定义了用户可以从计算机中得到多达17种的反馈,其中一种称为“控件操作响应”时间,即按下按钮到得到视觉反馈的时间。规定了它不应该超过0.1-0.2秒。对于熟练的用户来说,100毫秒(1 秒=1000 毫秒)的延迟都可能太慢了,这就意味着,理想情况下,用户应当在100毫秒内获得操作的反馈。

微博按下点赞图标到视觉响应示例

100毫秒是什么概念呢?就人体最快的潜意识动作眨眼来说,根据伦敦城市学院神经学创立者Davina Bristow的说法,“多数人每分钟眨眼大约15次,一次眨眼平均持续100到150毫秒”。

那么系统在不同时长的响应时,我们需要给用户怎样不同的反馈呢?在NNG上有一篇文章《Response Times: The 3 Important Limits》是关于操作响应时间的基准,总结如下:

1)0.1秒是用户瞬间感受的界限,这意味着不需要任何提示(feedback)可直接显示结果。

2)1秒:即使用户感觉到了延迟,但仍然感觉流畅并保持连续的操作,一般来讲,延迟在0.1秒~1秒之间,是不需要特殊提示的, 但用户仍然会失去直响应的感觉。

3)对于2~10秒的操作,如果使用百分比进度条显得有些大材小用,并且过快的显示也会让用户有种闪烁的不好效果。这时可以仅使用一个“忙碌”的动画,并且在合适的位置配上一个变化的数字提示进度,效果更好。 

4)10秒是用户专注于单一任务的极限。对于超过10s延迟,在计算机执行的过程中应当给用户提示,用户将会进行其它的操作,而不会等待计算机执行完毕。

补充知识

1、关于“乐观派”UI设计

通常的服务器响应时间为1s左右,对于由用户直接触发的操作反馈而言不能达到理想的响应速度。因此乐观派UI的设计让用户产生一种幻觉,让他认为成功反馈的获得是瞬间的。

乐观派UI仅仅是处理人机交互的一种方式。它指无论成功与否,都给用户一个正向的反馈,比如一些应用中的点赞行为。无论当前有没网络,点击“赞”,都会给予用户点赞成功的反馈。如微博断网时,点赞会成功,并且计数器+1。而知乎在断网时,点赞失败并提示未连接网络。

乐观派UI的设计主要基于以下3个条件:

1)用户的操作在97%-99%的情况下服务器返回结果都是成功;

2)在1%~3%的出错场景下服务器能够在2s内给予错误反馈;

3)操作的结果只是简单的“成功”和“失败”两种情况,不存在其他中间状态。

2、关于“进度指示器”的设计

通常进度指示器适用于等待超过10s的场景,但在某些场景下等待时间小于10s时也试用,比如涉及到处理一系列的表单和文档,进度指示器显示已处理3/50的文件。在等待时间较长时,给予用户停止进程的选择。关于进度志气的动效设计有如下建议:

1)开始时进展移动速度慢,越接近结束时越快(超出用户预期);

2)提供大致的时间预期,不需要太精准,否则会让用户失去信任。“至少需要1分钟”;

3)如果时间不容易预估,使用已经完成的步数来替代时间百分比,“已下载4/30”。

2、计算机的响应时间并不是越快越好,在有些场景下过快的响应会给用户的操作带来困扰。例如,滚动列表的滚动速度太快到让用户无法及时停止目标内容。

在之前的一些书籍中提到过一个案例:iPhone自带计算器在计算“2500÷50=”,很容易结果显示“1”,因为显示器在输出结果“50”时变化太快,以至于用户没有察觉,会多点击一下“=”,这样就成了“2500÷50÷50=1”了。不过现在的iPhone计算器在输出结果时,可以看到会有延迟,结果“50”会闪一下,这么做不是因为系统性能跟不上,而是故意为了让用户有察觉。

3、对于无法计算进度的操作,也应当给予用户适当的反馈。例如:扫描未知大小的数据库时,可以打印出已扫描的表。另外替代方案是提供一个简单的等待动画,提示用户程序在运行中。

结合实例

1、增加触发延迟案例

在网页中有许多的选项卡或相册轮翻,这些大都是使用mouseover事件触发。这就会出现一个问题,鼠标无意之中划过触发区域进行切换,瞬间响应会给人以闪烁的感觉。具体的解决方法:既然100毫秒内的延迟,用户都不会有所察觉,那就增加触发延迟。

chrome浏览器的标签鼠标悬浮不会马上提示

2、减少提交服务器次数案例

如果每点击一次按钮都会触发一次请求,那么在第一次点击到得到反馈的这段时间里用户可能会多次点击提交,这将会有许多无效请求,对服务器造成一定压力。因此多数应用会在一段时间内减少提交次数,时间一般控制在200~250毫秒内,也就是,多次点击只提交一次请求。

3、时间界限的研究

在NNP上有一篇文章关于用户体验的时间界限,《Powers of 10: Time Scales in User Experience》,从0.1秒到1个月,1年(网站1年的老用户才会对产品熟识),10年(一个复杂的系统需要10年才能发展沉淀出一份专业的理论知识),100年……

相关文章

  • 交互中的响应时间

    响应时间指从用户执行操作到反馈出现的间隔时间。 Robert B. Miller在他的研究《人机对话的响应时间》中...

  • 探索 SwiftUI 基本手势

    前言 在 SwiftUI 中,我们可以通过添加不同的交互来使我们的应用程序更具交互性,这些交互可以响应我们的点击,...

  • tti-polyfill实现原理

    可交互时间可交互时间 (TTI) 指标用于标记应用已进行视觉渲染并能可靠响应用户输入的时间点。 应用可能会因为多种...

  • 转载:响应者链工作原理

    响应者链 响应者链是由一个一个响应者组成的长链;响应者链定义了iOS中触摸事件的交互规则;如果hit-test检测...

  • 微服务间的通信异步交互模式

    异步交互模式 理想情况是所有交互都使用异步交互,但是实际中不太可能。 优化方式 1.复制数据 2.先返回响应,再完成处理

  • 基于ResponderChain的事件传递

    ResponderChain对象交互方式本质 响应者链简介 Responder Chain也就是响应链,响应者链是...

  • 前端jsp与后端servlet传值(java web)

    jsp中js使用jQuery封装好的 $.ajax()方法与服务器进行交互 servlet接收 处理 响应 j...

  • 响应者链

    1.1 响应者链 当与某控件交互时,该控件将作为"第一响应者 (First Responder)",作为响应者链的...

  • 产品分析97-交互的响应时间

    周四坐地铁,站在站台线外等待,我突然盯着头上的灯光看着。 地铁快到站了,之前一直一般亮的灯,突然增加亮度了。 地铁...

  • PostMan:接口响应断言

    断言响应状态码 断言响应时间 断言响应中的字段值等于某个值,如:“error_code” = 2 断言响应中包含某...

网友评论

      本文标题:交互中的响应时间

      本文链接:https://www.haomeiwen.com/subject/eusosktx.html