---
title: 人为差错？不，拙劣的设计
summary: 《设计心理学 1》第五章——设计师经常严重误解人心理的局限性，要求人像机器一样工作
created: 2021-10-27T20:22:17+08:00
math: falase
categories:
  - 设计心理学
tags:
  - 设计心理学1
  - 读书笔记
draft: false
lastmod: 2022-04-16T12:55:20.101Z
# layout: post
---

- 当事故发生时，人们往往会将设计问题归因在操作的人身上，但这并不能解决问题
- 解决问题的方法：找到根本原因，重新设计系统

## 1.何以出错

### 出错的原因

- 要求人们在任务和流程中做违背自然规律的事情。
- 将系统问题归因为人的问题
- 设计重点放在系统和设备上，忽略了使用者的需求。不了解人的身心特性，按对机器的标准要求人。
- 时间压力

### 解决错误的方法

- 不要苛责用户，承认存在问题
- 对问题进行**根本原因分析**
  - 调查事故，直到发现单一的、潜在的根本原因。
  - 确定是什么致使人们犯错
  - 方法：5 个为什么分析法

### 差错之外：故意犯错

- 有时人们会故意犯错以达到目标
- 不恰当的规则和流程是违规行为的一个主要原因，它不仅诱使且鼓励了违规，因为没有违规行为就不能完成工作。

本章主要讨论的是“无意识的犯错”

## 2.差错的两种类型：失误和错误

### 差错

- 定义：与普遍接受的正确或合理的行为有所偏离
- 是所有错误行为的总称
- 两种类型：**失误** 和 **错误**

### 差错和行动的七个阶段

![](https://uneorange.oss-cn-guangzhou.aliyuncs.com/202110232335757.png)

- 错误发生在高水平的认知（有意）
- 失误发生在较低层次（无意）
- 记忆失效可能发生在每个阶段之间的八个转换过程中

### 失误

- 目标、计划正确 ‣ <mark>行动出错</mark>
- 分类
  1. 行动失误
  2. 记忆失误

#### 行动失误

- 执行了错误的动作
- 分类：
  1. 撷取性失误（capture slips）
  2. 描述相似性失误（description-similarity slips）
  3. 功能状态失误（mode errors）

##### 1. 撷取性失误

- **如何发生的**
  - 某个曾经的动作挤占了需要完成的动作（陌生--更换成->熟悉）
  - 有经验和技巧的人比初学者更容易犯
- **如何避免**
  - 避免有相同的起始步骤，然后再发散的流程。

##### 2. 描述相似性失误

- **如何发生的**
  - 差错发生在与目标相似的对象上，在错误的对象上执行正确的动作
  - 如果对目标的描述含糊不清，就会发生描述
- **如何避免**
  - 在设计不同目的的控制和显示设备时，设计师需要确认它们之间具有明显差异

##### 3. 功能状态失误

- **如何发生的**
  - 在错误的模式/功能/状态下执行操作
  - 当设备有不同的状态，而相同的控件具有不同的含义，就可能发生
  - 设备不能显示可见模式时，尤其容易发生
- **如何避免**
  - 避免模式控制的设计
  - 若无法避免，使设备能够明显地显示所激活的功能模式。
  - 设计可以抵消干扰活动对已设定模式带来影响的系统。

#### 记忆失误

原文又称：记忆失效性失误

- **如何发生的**
  - 原打算做的行动没有做，或者没有及时评估其行动结果
  - 因记忆问题引起的差错
- **如何避免**
  - 使用最少的步骤
  - 对需要完成的步骤提供生动有效的提醒
  - 使用的强制功能

## 3.错误的分类

### 错误

- <mark>目标/计划出错</mark> ‣ 行动随之偏离目的。
- 分类
  1. 违反规则：基于正确知识->正确分析情况->_遵循错误规则_->错误行动
  2. 缺乏知识：基于不正确或不完善的知识->_错误分析情况_->错误行动
  3. 记忆失效：在目标、计划或评价阶段有所遗漏

#### 1. 基于规则的错误（违反规则）

- **如何发生的**
  - 错误地理解了问题，从而采用错误的目标或计划，导致遵循不恰当的规则。
  - 采用了正确的规则，但规则本身就有问题
  - 采用了正确的规则，但不正确地评估行为的结果。

> 在复杂的情况下，太多的信息就是问题所在：信息，既支持决策，也会排斥它

- **如何避免**
  - 将当前系统状态的信息，以易于理解和阐释的方式呈现出来，以及提供必要的说明和解释。

#### 2. 基于知识的错误（缺乏知识）

- 处理问题时，人类过度依赖储存在记忆中的经验，而对事物并不进行系统地分析。
- **如何发生的**
  - 当碰到异常情况，没有足够的技能或规则去处理它，人们就会采取基于知识的行为
  - 人们缺乏应对相应情境操作所需知识
- **如何避免**
  - 深入地了解状况，提供程序手册指引
  - 借助适当的概念模型来解决问题。
  - 提供良好的合作解决问题的技能和工具，如机器辅助

#### 3. 记忆失效的错误

- 记忆倾向于对一般事物进行过度概括和规范，并且过度强调事物之间的差异。
- **如何发生的**
  - 记忆出错导致*遗忘*了目标或行动计划，记忆的失误就会导致错误。
  - 某个*中断*导致人们忘记正在对目前环境状况所做的评判
- **如何避免**
  - 确保所有相关的信息连续可用，如目标、计划和对当前系统的评价
  - 假设人们在行动中可能被打断，在恢复操作时为他们提供需要的帮助。

## 4.社会和习俗压力

### 压力

社会和习俗压力影响大，但却难观测。好的方法是“奖励安全“、培训等等

> 永远不要低估社会压力对个人行为的影响力量，它可能促使原本理智的人们去做他们即使知道是错误或可能危险的事情。

> 社会压力不断出现。它们通常很难被记录下来，因为大多数人和组织都不愿承认这些因素，所以即使在事故调查中发现有社会压力的因素，其结果也往往隐匿不见，得不到公众的仔细监督

> 我们需要不同的培训；我们需要**奖励安全**，并将其置于经济压力之上

### 检查清单

> 检查清单是个功能强大的工具，经过验证，它可以增加行为的准确性和减少差错，特别是失误和记忆失效

- **如何使用**
  - 人数：通常有两人一起作为一个团队使用检查单：一个人阅读指令，同时另外一个执行命令。
  - 清单设计：不断调整列表直到它涵盖了基本的项目，却不会额外增加负担
- **隐患**
  - 增加更多的人来检查任务 ‣ 增加了出错的机会。
  - 一些专业人士将其被视为对自己专业能力的侮辱
  - 打印清单将顺序结构强加于任务实施->增加了记忆失效的几率 (利用电子清单解决)

## 5、差错报告

减少差错的唯一方法就是直面差错，承认差错存在，并为减少差错而作出改变。
三个案例：

### 自动化（JIDOKA）

来源于汽车生产系统

- 具体：
  - **立即报告差错**：当生产线上发现事情出错时->工人立即报告
  - **持续关注**：如果有故障的零件要继续移动到下一个工序->通过"安灯"停止装配线,并"报警"
  - **确定原因**：技术专家聚集到问题发生区域，探寻差错发生的根本原因

### 防呆（POKA-YOKE）

- 措施之一是添加简单的工具、夹具或设备来**限制**操作，避免犯错。（简单的示意）
- 需要遵循的原则：示能，意符，映射和约束，最重要的是**强迫**功能。

### 航空安全报告体系

主要是讲如何降低人们报告差错时的心理负担

1. 匿名提交差错报告
2. 差错真实则豁免处罚
3. 通过第三方机构提交差错报告检查

## 6.甄别差错

### 为什么甄别差错是困难的

#### 甄别失误

- 缺少反馈
- 难以检测 （如记忆失效）

#### 甄别错误

- 难以识别不恰当的目标->持续行动->行动和目标一致（增加信心）->接近不恰当的目标
- 所处情境复杂

#### 记忆失效性（失误/错误）

**区别：**

- 失误：只有计划中的单一部分被漏掉 （做了不该做的）
- 错误：整个计划都被遗忘了（没有做该做的）

### 为错误辩解

人们常常**忽略单一的异常情况**，并试图为其**辩解**。但他们的辩解是基于过去经验的，可能已**不适用于现状**，这些“简单处理”的辩解会让他们错失挽救错误的良机。

### 事故分析要置身于真实情境

#### 事故发生时

- 人们常常情绪波动、压力大
- 所处的情境是复杂多变的
- 没有明确的线索可以分辨关键的信息

#### 事故发生后

- 知道到底发生了什么事，遂将重点放在相关的信息上并忽略不相关的信息。

#### 事故分析应

- 调查人员应当想象自己置身于事故的参与者之中
- 考虑操作者的所有信息，曾经接受的所有培训，以及类似的历史事件

## 7.为差错设计

### 基本原则

> 1. 了解差错的根本原因，通过设计以尽量减少这些诱因。
> 2. 进行合理性检验。检查操作行为是否能够通过“一般性常识”的测试
> 3. 设计出可以“撤销”操作的功能——“返回”以前操作，或者如果操作不能“返回”，则增加该操作的难度。
> 4. 让人们易于发现一定会出的差错，以便容易纠正。
> 5. 不要把操作看成是一种差错；相反，帮助操作者正确地完成动作。应该将操作认为近似于预期目的。

### 记忆中断

- 是差错的主要来源，尤其是记忆失效性差错
- **恢复成本大**：必须记得准确的活动被打断之前的状态，目标是什么，被打断的活动处于行为周期的哪个阶段，以及当时系统的状态
- **多任务处理**：效率低，差错更多
- 可能的方法：设置屏蔽期、自动保存、编辑记录（足迹）等

### 警示信号存在的问题

- 设备间缺乏协同，信号互相影响，让用户分神，从而干扰问题的解决
- 语音播报：
  - 在用户视觉注意被占用时间，可以传递清楚的信息
  - 环境嘈杂时，很难听清楚
  - 干扰使用者之间的对话

### 为差错设计的方法

#### 研究差错

- 在差错发生前：研究如何设计预防措施
- 是差错发生时：研究如何检测并纠正

#### 增加约束

- 对操作行为施加特殊的约束。
- 如：约束条件、强迫性功能和防呆措施、隔离操控、使用分离模块等。

#### 撤销

- 减少差错带来的进一步影响
- 应留有多步撤销

#### 差错信息确认

- **突出显示所有即将采取的行动和对象.**
- **突出行动的后果**
- **方法**
  - 使正在操作的对象更加显眼。
  - 让操作可逆

#### 合理性检查

电子系统可以更方便的定位和确认不合理的操作，但用户并不一定能即时发现错误，在用户进行不合常规的操作时，给用户提醒、确认。

如：大额转账金额确认

#### 减小失误

- **撷取性失误**
  - 避免中断
  - 提供恢复帮助（撤销机制）
  - 尽可能让操作流程前面几步不要相似
- **描述相似性失误**
  - 保证操作及其控制尽可能不同
  - 若相似，则在物理距离上越远越好
- **功能状态失误**
  - 去掉多余功能
  - 或 ：让功能彼此容易区分和明确可见

> 防范失误最好的办法是对正在实施的动作的特性，提供可以感受到的*反馈*，越是灵敏的反馈越能体现新的结果和状态，再伴之以能够*撤销*差错的机制

### 从差错到事故——瑞士奶酪模型

![](https://raw.githubusercontent.com/norevi/image/main/img202110260102695.png)

- 事故的发生往往有很多诱因，任何其中一个原因不出现，事故就不会发生。
- 如何让系统更加有弹性的方法：**冗余设计和多重保护措施**：
  - 设计额外的差错预防机制，减少失误、错误或设备失效的机会（奶酪上更少的孔），
  - 为系统中不同的零部件设计完全不同的运行机制（努力使奶酪上的孔不要排列起来）。

> 我们应该好好思考系统，思考所有可能导致人为失误，进而酿成事故的交互因素，然后，策划出从总体上改进系统，使之更加可靠的方案。

## 8.良好的设计还不够

良好的设计还是难以防范人们故意犯错，差错并不全都因为设计

## 9.修补回复工程

<span class="passive">resilience engineering</span>

### 是什么

- 一种应用于工业的系统管理方式
- 目标是遇到外部冲击时，能以最小的破坏和损失恢复运转
- 将安全视为核心价值
- 关注于帮助人们在压力下成功应付复杂的环境以取得成功。

### 如何做

- 设置漏洞、测试工厂的反应水平
- 反复评估，测试和改进。
- 要持续关注于预测故障的潜在变化

## 10.自动化的悖论

### 故障时结果难以估计

原因：

> 当自动化系统发生故障时，经常没有警告，人需要时间去注意问题、评估分析、解决问题。

### 悖论

> 能够执行那些枯燥乏味、令人厌烦的工作，但是不能做太复杂的工作。

## 11.应对差错的设计原则

### 人和机器协同应工作

> “人为差错”，往往只是一种人类特性与技术需求不相符的行动

- **人和机器擅长的工作不同**。人类是灵活的，多才多艺且具有创造力。机器是死板的，需要精密设置且相对局限于规定的操作。
- **人类的能力和技术要求之间存在不匹配**，差错不可避免。
- 设计**应正视人和机器之间的差异**，考虑到有可能出现的每一个差错，然后想办法避免这些差错，
- 设法**使操作具有可逆性**，以尽量减少差错可能造成的损失。

### 关键设计原则

- **将所需的操作知识储存在外部世界**，而不是全部储存在人的头脑中，但是如果用户已经把操作步骤熟记在心，应该能够提高操作效率。
- **利用自然和非自然的约束因素**，例如物理约束、逻辑约束、语义约束和文化约束；利用强迫性功能和自然匹配的原则。
- **缩小动作执行阶段和评估阶段的鸿沟**。在执行方面，要让用户很容易看到哪些操作是可行的。在评估方面，要把每一个操作的结果显示出来，使用户能够方便、迅速、准确地判断系统的工作状态。
