mcpField
N
nielsen-usability-heuristics

nielsen-usability-heuristics

github.com/dembrandt设计与 UI174997 次安装1 周前更新
代码仓库

关于 nielsen-usability-heuristics

Nielsen's 10 Usability Heuristics 是用于评估界面可用性的设计与审查技能,将十项基础原则整理为实践建议和检查清单。

主要功能

  1. 01十项可用性原则
  2. 02界面设计实践建议
  3. 03各原则的审查问题
  4. 04可用性审查清单

适用场景

  1. 01审查现有界面
  2. 02在设计阶段应用可用性原则
  3. 03检查错误预防与恢复
  4. 04评估一致性和用户控制

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dembrandt/dembrandt-skills --skill nielsen-usability-heuristics

安装后在 Claude Code 中输入/nielsen-usability-heuristics确认已加载。

详细介绍

Nielsen 的 10 条可用性启发式原则

评估和设计易用界面的基础原则。从一开始就将这些原则用作评审清单和设计约束,而不仅仅是事后审查工具。


1. 系统状态的可见性

设计应始终通过适当的反馈,在合理的时间内让用户了解当前情况。

不了解系统当前状态,用户就无法做出明智的决定。清晰、及时的反馈能够建立信任。

实际应用:

  • 显示加载状态、进度指示器和完成确认
  • 指明用户在多步骤流程中所处的位置
  • 立即反映状态变化(乐观 UI 或加载动画)
  • 绝不让用户疑惑操作是否已生效

**评审问题:**用户执行任何操作后,能否在 1 秒内看到结果?


2. 系统与现实世界的匹配

设计应使用用户的语言——用户熟悉的词语、短语和概念,而非内部行话或系统术语。

遵循现实世界的惯例和自然映射,让界面直观易懂,无需用户费力理解。

实际应用:

  • 使用目标受众惯用的术语,而非工程团队使用的术语
  • 图标应对应现实世界中的物品或广泛认可的 Web 惯例
  • 空间隐喻应符合现实世界的预期(例如,用“垃圾桶”表示删除)
  • 避免向最终用户暴露内部系统概念(ID、错误代码、进程名称)

**评审问题:**不熟悉本产品的用户能否理解每个标签和术语?


3. 用户控制权与自由

用户常常会误操作。他们需要一个醒目明确的紧急出口,以便无需经历冗长流程就能离开不想要的状态。

便捷的撤销和退出途径有助于建立信心,避免用户感到无路可退。

实际应用:

  • 对破坏性或不可逆操作始终提供撤销功能
  • 模态框和对话框需要醒目的关闭或取消操作
  • 多步骤流程需要提供返回方式
  • 破坏性操作(删除、发布、发送)应尽可能支持撤销,或要求用户明确确认

**评审问题:**用户能否在不丢失工作或联系支持人员的情况下退出任何状态?


4. 一致性与标准

用户不应疑惑不同的词语、情境或操作是否表达相同的意思。应遵循平台和行业惯例。

一致性能够满足用户从其他产品中形成的预期,从而减少认知负担。

实际应用:

  • 在整个产品中,同一操作始终使用相同的标签
  • 遵循平台惯例(例如,在移动设备上向左滑动以删除,使用 Cmd+Z 撤销)
  • 设计系统组件无论出现在哪里,外观和行为都应一致
  • 不要给标准 Web 模式重新命名(例如,不要把“面包屑导航”称为“路径轨迹”)

**评审问题:**同一操作在整个产品中是否始终具有相同的外观和行为?


5. 错误预防

好的错误消息很重要,但最好的设计会从一开始就防止错误发生。

错误预防既要应对失误(无意的操作),也要应对错误(误解设计意图)。

实际应用:

  • 使用限制条件,让错误输入无法提交(例如,在必填字段填写完成前禁用“提交”按钮)
  • 在执行破坏性或不可逆操作前要求确认
  • 使用输入掩码、验证和合理的默认值,引导用户正确输入
  • 设计表单,让顺利完成任务的路径一目了然

**评审问题:**每项破坏性或不可逆操作是否都有确认步骤或撤销途径?


6. 识别,而非回忆

通过让元素、操作和选项清晰可见,尽量减轻用户的记忆负担。用户不应该需要记住界面某一处的信息,再到另一处使用。

识别所需的认知努力少于回忆。清晰可见的操作提示能减少使用产品所需的精力。

实践建议:

  • 在适当的情境中展示相关选项,而不是要求用户记住命令
  • 在相关情境中显示之前输入的数据(例如,预填已知字段)
  • 图标应搭配标签使用;对许多用户来说,单独的图标含义不明确
  • 导航应始终可见,而不是隐藏在手势或悬停操作之后

评审问题: 回访用户需要记住什么,才能从上次中断处继续?


7. 灵活性与使用效率

对新手用户隐藏的快捷方式,可能会加快专家用户的操作。设计应同时服务这两类用户。

加速器、自定义和个性化功能可以让有经验的用户更快完成工作,同时不增加新手用户的使用复杂度。

实践建议:

  • 为常用操作提供键盘快捷键
  • 同时支持引导式流程(面向新用户)和直接操作路径(面向专家)
  • 允许用户自定义经常使用的视图、筛选器或布局
  • 根据使用模式,将常用操作醒目地呈现出来

评审问题: 高级用户能否比首次使用的用户显著更快地完成最常执行的任务?


8. 美观与简约设计

界面中不应包含无关或很少用到的信息。每增加一项信息,都会与相关信息争夺注意力,降低后者的相对可见度。

内容和视觉设计应聚焦于支持用户主要目标的关键要素。少即是多,但前提是删减得当。

实践建议:

  • 移除没有实际意义的装饰元素
  • 次要和第三级操作的视觉权重应低于主要操作
  • 避免同时展示所有功能;渐进式披露只在需要时呈现复杂内容
  • 空状态、错误状态和加载状态应获得与内容状态同等的设计关注

评审问题: 屏幕上的每个元素都有存在的必要吗?还是有些元素只是“以防万一”?


9. 帮助用户识别、诊断并从错误中恢复

错误消息应使用通俗易懂的语言,准确指出问题,并以建设性的方式给出解决建议。

错误消息是用户体验的一部分,应像其他任何界面文案一样认真设计。

实践建议:

  • 切勿向最终用户显示原始错误代码或堆栈跟踪
  • 用通俗易懂的语言清楚说明出了什么问题
  • 告诉用户接下来该怎么做,而不只是说明哪里失败了
  • 使用恰当的视觉样式:错误用红色,警告或信息提示则不要用红色
  • 行内验证错误应显示在出问题的字段旁边

评审问题: 每条错误消息是否都告诉了用户发生了什么、为什么发生,以及接下来该怎么做?


10. 帮助与文档

最好让系统无需额外说明也能被理解。不过,有时仍需要提供文档来帮助用户完成任务。

帮助内容应与情境相关、可搜索且可执行,而不应成为埋在页脚中的最后手段。

实践建议:

  • 优先采用不言自明的界面,而不是工具提示;优先采用工具提示,而不是文档
  • 行内帮助(占位文本、辅助文本、工具提示)应出现在用户需要的地方
  • 文档应以任务为导向(“如何……?”),而不是以功能为导向(“设置面板介绍”)
  • 空状态是提供情境化帮助的机会,而不应只是一块空白屏幕

评审问题: 困惑的用户能否不离开当前屏幕就找到帮助?


启发式评审清单

#启发式原则检查项
1系统状态每项操作都能在 1s 内提供可见反馈
2贴近现实语言不使用行话,术语符合用户的用语习惯
3用户控制权提供撤销功能,始终显示退出路径
4一致性相同操作在任何地方都使用相同标签和行为
5防错不可逆操作需提供确认或撤销选项
6识别优于回忆在上下文中显示选项,不隐藏命令
7灵活性为高级用户提供更快捷的常用任务操作路径
8极简设计每个元素都应有其存在价值
9错误恢复错误消息应通俗、具体且可操作
10帮助和文档在需要时提供上下文相关的帮助

评论

支持 Markdown