Human Computer Interface 简明教程

Guidelines in HCI

Shneiderman’s Eight Golden Rules

美国计算机科学家 Ben Shneiderman 巩固了一些关于设计的隐含事实,并提出了以下八条一般准则−

  1. Strive for Consistency.

  2. Cater to Universal Usability.

  3. Offer Informative feedback.

  4. 设计对话以产生闭合。

  5. Prevent Errors.

  6. 允许轻松地逆转操作。

  7. 支持控制的内部轨迹。

  8. 减少短期记忆负荷。

这些准则对普通设计师和界面设计师都有利。使用这八条准则,可以将好的界面设计与不好的界面设计区分开来。它们有利于在实验评估中识别更好的 GUI。

Norman’s Seven Principles

为了评估人与计算机之间的交互,唐纳德·诺曼于 1988 年提出了七项原则。他提出了七个阶段,可以用来转换困难的任务。以下是诺曼的七项原则−

  1. 同时利用世界中的知识和头脑中的知识。

  2. Simplify task structures.

  3. Make things visible.

  4. 正确获取映射(用户心智模型=概念模型=设计模型)。

  5. 将限制转化为优势(物理限制、文化限制、技术限制)。

  6. Design for Error.

  7. 当所有其他方法都失败时−标准化。

Heuristic Evaluation

启发式评估是一种检查用户界面可用性问题的系统方法。一旦在设计中检测到可用性问题,它们将作为持续设计过程的组成部分得到处理。启发式评估方法包括一些可用性原则,例如尼尔森的十项可用性原则。

Nielsen’s Ten Heuristic Principles

  1. Visibility of system status.

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

  3. User control and freedom.

  4. Consistency and standards.

  5. Error prevention.

  6. Recognition rather than Recall.

  7. 灵活性和使用效率。

  8. Aesthetic and minimalist design.

  9. 错误的救助、诊断和恢复。

  10. Documentation and Help

上文提到的尼尔森十大原则在启发式评估员审计界面或产品时,可用作评估和解释问题的一个检查清单。

Interface Design Guidelines

本节介绍了一些更为重要的 HCI 设计准则。以下解释了 HCI 设计准则的三种类别:通用交互、信息显示和数据输入。

General Interaction

通用交互准则是一些全面建议,其关注于通用指令,例如:

  1. Be consistent.

  2. Offer significant feedback.

  3. 询问任何非关键性严重动作的认证。

  4. 授权轻松撤销大多数动作。

  5. 减少动作中必须记住的信息量。

  6. 在对话、动作和思考中追求能力。

  7. Excuse mistakes.

  8. 按功能对活动分类并相应地建立屏幕地理。

  9. 提供语境相关的帮助服务。

  10. 使用简单的动作动词或短语动词来为命令命名。

Information Display

HCI 提供的信息不应不完整或不明确,否则该程序将无法满足用户的要求。为提供更好的界面显示,准备了以下准则:

  1. 仅显示适用于当前语境的信息。

  2. 不要用数据给用户带来负担,请使用允许快速集成信息的展示布局。

  3. 使用标准标签、标准缩写和可预测颜色。

  4. 允许用户保持视觉语境。

  5. Generate meaningful error messages.

  6. 使用大小写、缩进和文本文档编组来帮助理解。

  7. 使用窗口(如可用)对不同类型的信息进行分类。

  8. 使用模拟显示来表征信息,这种信息能更容易与此表达形式集成。

  9. 考虑显示屏的可操作地理,并高效使用它。

Data Entry

以下准则着重于作为 HCI 的另一个重要方面的数据录入——

  1. 降低用户所需输入操作的次数。

  2. 维持信息显示和数据输入之间的稳定性。

  3. 允许用户自定义输入。

  4. 交互应该灵活,但也需要调整到用户的首选输入模式。

  5. 停用在当前操作环境中不合适的指令。

  6. 允许用户控制交互流程。

  7. 提供帮助以协助所有输入操作。

  8. Remove "mickey mouse" input.