T2.04.1Diagnostic and recoverable error message设计研究
说明发生了什么、为什么、怎么办
别名: 错误诊断 · 恢复路径 · what why next step
概念解释
诊断与恢复型错误消息(diagnostic and recoverable error message)回答用户当前最需要的三件事:发生了什么结果、在可安全说明时为什么发生、下一步如何恢复目标。它还应说明关键状态,如草稿是否保存、是否扣费、操作是否已部分完成。三项不是固定句式;若真实原因未知,应明确未知并提供仍然有效的行动,不能用猜测填满“为什么”。
机制
错误打断了用户对系统状态和任务路径的预测。what 修正当前状态,why 排除无效尝试,next step 把人送回可行路径。若只说“出错了”,用户不知道是否要重做;若无依据地归因为网络,用户会修错对象;若一味“重试”而故障不可重试,就形成循环。恢复必须与错误类型、当前数据状态、用户权限和服务可用性匹配。
怎么研究
按瞬时/持续、用户可修复/需系统处理、完整/部分成功和数据风险注入真实故障,让用户复述状态并尝试恢复。测首次正确恢复、重复失败、目标恢复时间、放弃与求助,同时核对日志中的真实结果。对 unknown state 单独测试,确认消息既不虚构原因,也能帮助用户保存工作、稍后尝试或携带参考编号求助。
边界
不是每条消息都要逐句包含三项:自动恢复且无用户影响的故障可安静处理,显而易见的低风险瞬时失败可简化。原因说明只到支持决策且可安全披露的层级,不泄漏内部架构或安全规则。下一步必须可用、可达且与权限一致;无法恢复时应诚实说明限制和支持路径,而不是承诺成功。
怎么落地
- 为错误定义 outcome、safe cause、data/transaction state、recovery action、action availability 和 escalation path;unknown 作为显式状态。
- 用“结果—原因/未知—下一步”生成完整消息,并把真实可执行操作做成邻近按钮;部分成功时列明已完成与未完成范围。
- 对重试设置前提、进度和失败出口;不可重试的配额、权限或永久状态直接指向正确解决路径。
- 在故障矩阵中回归消息与真实状态,任何错误归因、不可用按钮或未说明的数据/扣费状态都阻断发布。