五、预防错误(Error prevention)
比起提供用户明确易懂的错误讯息,更重要的是如何防止使用者发生错误。
像是消除容易出错的条件或是自动检查确认选项。或是让使用者确认他们接下来要做的行动。越是让使用者自行输入的字段越容易出现错误,明明只能输入数字的地方就是有人会想打英文字母。摆明说了账号只能使用英文或数字,还是会有人用上特殊符号。比起使用者填完所有字段按了送出后再告诉他哪些地方有误,不如在输入错误时就挡住他、在输入正确数据前无法进入下个步骤。如果能在字段旁边实时反应验证状态是再好不过的。
在 iPhone 上最方便的就是内建数种键盘。在输入电话号码的字段时只跳出数字键盘、输入日期时使用 Picker。(App:联络信息,输入只有数字的字段时,就跳出数字键盘。)
在小小的手机屏幕上打字是非常辛苦的一件事,按钮小不好按、又容易出错,最好也最贴心的作法是连输入都简化了,最好点点手指就解决。像是 Google 的实时搜寻,打入第一个字时就将热门选项列出来供用户选择,但有可能不是使用者需要的。或像是 Facebook,输入一个关键词就将所有包含这个关键词的朋友列出。(App:App Store,在使用者边输入时实时搜寻有可能的关键词。)
六、辨识而非记忆(Recognition rather than recall)
尽量减少用户需要记忆的事情、行动以及可见的选项。
使用者没办法记住太多步骤。App 如果有使用说明介绍,应该放在显眼且可轻易使用的位置。如果软件把数据当作讯息,把数据都丢给用户,要用户自己查看数据代表他们的注意力会被分散,产生错误的机会就会增加。软件应该将用户的注意力集中到重要的数据上,并帮助用户从中取得讯息,而不是未经过筛选要使用者花时间思考。
像是为了酷炫而特别设计的操作接口,与众不同让人眼睛一亮,但使用者在初次接触后再度使用,要花多少时间才能找到上次操作过的功能?相信很多人都有边自言自语「我记得这个 App 有 xxx 功能啊,在哪里呢…」边将某个 App 所有按钮选单翻一遍的经验。(App:Yoritsuki,非常漂亮精致的 App,下方选单与上方提示一目了然。)
七、弹性与使用效率(Flexibility and efficiency of use)
功能与易用性之间通常存在一个平衡,对于软件中的每个特性、功能、或能力,都必须提供一种途径让使用者调用或控制。如果用户的目标是可预测而且常用的,使用者不应该为了实现这个目标而必须做很多工作。
做少量的工作、得到很多结果,才是使用者想要的。简单来说就是要思考「有多少用户」和「使用频率如何」的问题。越频繁使用的功能,需要点击的次数应该要越少。越多用户使用某功能,它就应该越明显。且要为核心情况设计,不要为「边缘」情况付出太多。
快捷键就是这个易用性准则的最佳代表,在 App 上没有快捷键的设计,可以透过手势来完成各式各样的操作。例如浏览列表页,已卷到最下方后想回到顶端不需要一直滑动手指、只需轻点一下 StatusBar,列表会自动卷回最顶端。(App:Day One,对撰写日记来说,拍照和新增是最常用的功能。)
八、美观与简化设计(Aesthetic and minimalist design)
为了防止用户出错,可以在软件设计上就尽量减少用户的记忆负担。将功能、操作及选项设计得显而易见。对于不相关或是很少需要的讯息或功能要隐藏起来,仅突出重点在软件设计上非常重要。
像是注册新会员,如果一开始就要使用者填写一长串的个人资料,相信许多人在这个阶段就打退堂鼓。简化注册流程就可以增加用户成为会员的意愿,最好只要一个按钮就能完成注册。有的 App 会串接 Facebook,使用者只要同意授权就完成注册手续。或者是只让用户填写必备的数据如账号密码等,其他非必备资料如生日、所在城市等,使用者可以在登入后去个人设定页自行填写。 (App:Pose,使用 Facebook 登入,或是输入账号密码。)
九、帮助使用者认识、侦错并从错误中恢复(Help users recognize, diagnose, and recover from errors)
帮助使用者识别、诊断、并从错误中恢复,将损失降到最低。如果无法自动挽回,则提供详尽的说明文字和指导方向,而非难以理解的代码。最好能在告知使用者发生错误的同时一并提供解决方法。
使用者不会想知道「404」代表什么意思,直接说明「找不到网页」比简短的错误代号更能理解。比起找不到网页的文字,如果能说明找不到网页的原因、并加上如何解决更能帮助使用者排除错误。就以网络断线这个例子来说,iOS 可以侦测用户目前对于网络的设定,是因为没有开启网络功能、还是网络联机质量不佳所以无法开启网页。前者可以请使用者去设定将 Wifi 或 3G 功能开启,后者能告知使用者换个联机环境或是稍后再试。(App:书报摊,删除数据时会提示将删除所有数据。)
十、帮助与说明文件(Help and documentation)
一个软件在完美的情形下不需要任何说明文件使用者就能够操作,但就算是最好的软件也需要提供帮助与说明文件。
当用户寻求帮助时,此类讯息应该容易被搜索查询。完美的接口即使没有任何说明提示下,使用者仍然能够流畅操作。为了预防还是有少数使用者搞不清楚状况,常见的作法除了设制说明页之外,初次开启 App 直接进入说明教学,强迫使用者阅读完毕后才可开始操作。(App:i Track My Time,永远出现在首页的操作方式说明。)
以上文章是我根据 Jakob Nielsen 的十大易用性原则翻译(不怎么精准)加上个人经验所写(其实写完很久了,截图有点旧。),有兴趣的人建议去看原文。
这10条讲起来很简单,真要实行却非常困难。iOS 和 Android 平台特性不同,若很坚持要根据这10条原则将接口设计到好,Guideline 应该要熟到掰碎吃到肚子里的程度吧。像是第一条的「反应」,iOS 能透过 RD 设定按钮按下去时颜色会变得较黑,所以按钮切图出 1 张未点击时就好。Android 没有内建这种功能只好乖乖出 2 张图,诸如此类。偏偏 RD 对 Guideline 通常都比 UI 熟,科科。(理工生很习惯是字的厚砖书,念设计的有大半不喜欢看没几张图又生硬难啃的文章。)这 10 条原则都是 UI 在规划接口时应该考虑进去的部份,不只 UI 需要劳记,RD 多多少少心里有个底,如果看 UI 不顺眼,在讨论会议上慢条斯理把接口各个组件拆分出来一项项比对原则,捅死 UI 效果奇佳…