尼尔森的十大可用性原则是于1995年1月1日发表,来自交互设计的一位web易用性大师——Jakob Nielsen人机交互学博士(Technical University of Denmark in Copenhagen)。

一、Visibility of system status 系统可见性原则(状态可见)

系统应该让用户知道发生了什么,在适当的时间内做出适当的反馈。用户在网页上的任何操作,不论是单击、滚动还是按下键盘,页面应即时给出反馈。“即时”是指,页面响应时间小于用户能忍受的等待时间。

IDEA:我们在表单中对用户填写的信息进行实时校验;提供数据加载提示、数据加载进度;点击按钮按钮状态改变等等

二、Match between system and the real world 匹配系统与真实世界(环境贴切)

系统应该用用户的语言,用词,短语和用户熟悉的概念,而不是系统术语。遵循现实世界的惯例,让信息符合自然思考逻辑。大多数流通的翻译是针对网页的:网页的一切表现和表述,应该尽可能贴近用户所在的环境(年龄、学历、文化、时代背景),而不要使用第二世界的语言。

IDEA:对于按钮图标我们使用用户一眼就能看出其作用的图标,也就是尽可能的模拟真实世界,对用户反馈的信息使用用户熟悉的表述和名字,如错误提醒等。早前看深泽值人的提出的“无意识设计”,这对可供性设计有很好的阐述。可供性是物体或环境与生物体之间的一种关系,通过刺激的收集,提供给生物体表现出动作的机会。作为一种关系,可供性是动作的可能性,既不是环境也不是生物体单独的性质。当人们与环境发生无意识关联时,是处于最自然的状态的,这会降低用户的学习成本,如看到“垃圾桶”图标自然就知道这是删除类操作等。另外的就是根据用户群体,产生与用户的共鸣,多些情感化的东西,使其更贴近用户的生活,人机关系总是感性大于理性。

三、User control and freedom用户的控制性和自由度(撤销重作原则)

用户经常错误地选择系统功能而且需要明确标识离开这个的“出口”,而不需要通过一个扩展的对话框。要支持撤销和重做的功能。大多数流通的翻译是针对网页的:为了避免用户的误用和误击,网页应提供撤销和重做功能。

IDEA:之前写的笔记系统,添加了回收站功能,用户可去回收站去复原删除的数据,当时的设计思路是对表结构的更改,增加一个标识列区分正常、删除、永久删除三个状态,这确实也是一种方法。后来发现并不是所有系统都具有回收站功能,或者基于已有表结构是难以走这条路的,并且真实的删除操作需要用户去自己去操作才可以,这就不合适了。看过一些不错的网站他们会在用户删除时会有一个小的悬浮框,用户可在短时间内选择撤销,为选择则在框消失后真实删除,我没有去查证他们怎么去实现的,自己想了一个法子。对于网页来说,我们可以去在用户删除的时候做一个悬浮框在其消失时去删除这并不难,但考虑用户如果在提示框消失之前点击了刷新或其他操作导致页面中心加载,那在前端的这个操作可能就失效了,或许可以去监听页面刷新的操作,在操作之前提前执行真实删除就能够达到目的。对于可以修改表结构,用户也希望不用自己收到去清空,我们可以添加标识列,在后台执行定时操作,删除在某一时间范围内的数据,这些只是目前的想法不保证正确性,回头去写个DEMO来测试。

四、Consistency and standards一致性和标准化(一致性原则)

用户不必怀疑是否不同的语言,不同的情景,或者不同的操作产生的结果实际上是同一件事情。遵循平台的惯例。也就是,同一用语、功能、操作保持一致。

IDEA:这个是极其常见的了,节目风格的一致性,引导用户操作的一致性。

五、Error prevention 防错原则

比出现错误信息提示更好的是更用心的设计防止这类问题发生。在用户选择动作发生之前,就要防止用户容易混淆或者错误的选择。对于网页来说:通过网页的设计、重组或特别安排,防止用户出错。

IDEA:经常会说把用户当小白,将用户可能犯的错都考虑到,通过我们的设计使其避免,比如,删除时给出确认提示框,提示框按钮位置的编排,按钮样式的突出,多重防止误操作。

六、Recognition rather than recall 识别比记忆好(易取原则)

尽量减少用户对操作目标的记忆负荷,动作和选项都应该是可见的。用户不必记住一个页面到另一个页面的信息。系统的使用说明应该是可见的或者是容易获取的。尽可能减少用户回忆负担,把需要记忆的内容摆上台面。

IDEA:还是说删除提示,删除提示应当给出必要的提示信息,告诉用户他刚刚做了什么操作,现在需要他确认什么,用户不必去回想刚刚点了啥操作。

七、Flexibility and efficiency of use使用的灵活高效(灵活高效原则)

中级用户的数量远高于初级和高级用户数。为大多数用户设计,不要低估,也不可轻视,保持灵活高效。

IDEA:对于一些博客网站,提供Markdown编辑器,一般用户只需记住语法就可以写作,我觉得这是属于中级用户的,但也提供XHTML语言以及富文本编辑器,这样就满足了不同层次用户的需求,为大多数用户设计,兼容少部分特殊用户,如果只有Markdown,那用户会流失很多。

八、Aesthetic and minimalist design 审美和简约的设计(易扫原则)

对话中不应该包含无关紧要的信息。在段落中每增加一个单位的重要信息,就意味着要减少相应的弱化一些其他信息。互联网用户浏览网页的动作不是读,不是看,而是扫。易扫,意味着突出重点,弱化和剔除无关信息。

IDEA:看过一个广告行业的研究:人类的平均注意力时长从2000年的12秒下将到现在为8妙。这是个快节奏的时代,适应这些变化自然要做些改变,突出有用的内容,用户可快速捕获到重点信息,另外对于用户不关心的,我们能够帮用户完成的就不劳烦他大驾了,给个间断的提示就行。

九、Help users recognize, diagnose, and recover from errors 帮助用户识别,诊断,并从错误中恢复(容错原则)

错误信息应该用语言表达(不要用代码),较准确地反应问题所在,并且提出一个建设性的解决方案。大多数流通的翻译是针对网页的:帮助用户从错误中恢复,将损失降到最低。如果无法自动挽回,则提供详尽的说明文字和指导方向,而非代码,比如404。

IDEA:当页面发生错误时,不提供报错信息,采用友好的故障界面,并提供用户能够明白的说明,告诉用户现在可以做什么,如回到首页,返回上一步等。我们的系统对404页面确实做了调整。

十、Help and documentation 帮助文档(人性化帮助原则)

如果系统不使用文档是最好的,但是有必要提供帮助和文档。任何信息应容易去搜索,专注于用户的任务,列出具体的步骤来进行。帮助性提示最好的方式是:1、无需提示;2、一次性提示;3、常驻提示;4;帮助文档。

IDEA:上文说到一个好的系统应当是无意识设计,是具备可供性的,但有时确实有必要提供一些提示帮助用户去理解。我们的系统中有一个工具模块,目前还是一个页面里面的嵌入功能,这个模块用户的学习成本较高,想达到想要的效果确实有难度,用户在使用时定会不知所措,未来缓解这部分的尴尬,目前采取常驻提示作为临时处理方案,用户可查看当前工具可以做什么,可以去进行哪些操作、如何操作。对于系统层面,部门对未使用过我们系统的人提供帮助文档。其他方面如表单填写是使用placeholder或其他的提示信息对用户容易产生困惑的敏感信息进行提醒。

总结

牢记这些可用性原则,在实现功能是在尽可能的情况下去遵循这些原则,任务时间充裕的情况下根据系统实际情况调整并执行,对旧模块进行微调。同样,在代码层面规范代码,参考阿里巴巴规约,优化逻辑,提高响应。


2017.12.28 23:46完