正在读取本机记录…
拓展产品判断◷ 55 分钟

默认、加载、空、错误、无权限与离线状态

补齐主流程之外决定产品可靠感的关键状态。

学完你能做到
  • 用自己的话解释“默认、加载、空、错误、无权限与离线状态”及其核心术语。
  • 在真实 AI 产品场景中识别何时应该使用本课方法。
  • 完成一份可沉淀进“功能流程图、交互原型与可验收 PRD”阶段任务的实践产出。
前置与关联课程

完成阶段 1 的能力检查,或先预览相关基础课

01

REAL SCENE

先从一个真实场景开始

!

用户上传 200 页文档后只看到旋转图标。文件格式不支持时页面仍然转,权限过期后无解释,网络恢复后任务被重复提交。主成功路径设计得很顺,但真实产品的大部分信任来自加载、空、错误、无权限和离线状态。

02

PLAIN EXPLANATION

说人话:它到底是什么?

状态设计描述系统在不同时间和条件下向用户呈现什么、允许什么动作以及如何恢复。基本状态包括初始、空、输入、校验、加载、部分成功、成功、错误、无权限、离线和过期。每个状态应映射后台真实状态,提供发生了什么、为什么、影响什么和下一步能做什么。高风险操作还要防止重复、保留已输入内容并提供撤销或申诉。

01

建立状态机而非页面列表

用状态、触发事件、允许转移和禁止转移描述行为。异步 AI 任务尤其需要 queued、processing、partial、completed、failed、cancelled 和 expired,避免前端自己猜测。

  • 状态名称前后端一致
  • 每次转移有时间与原因
  • 终止状态明确能否重试
02

反馈四要素

有效状态反馈回答:当前发生什么、可能为什么、用户数据是否保留、下一步能做什么。错误码面向系统,用户文案面向任务;不能直接展示堆栈,也不能只说“出错了”。

  • 明确影响范围
  • 保留可恢复输入
  • 提供主行动和替代行动
03

设计安全恢复

重试要考虑幂等,取消要说明是否已产生费用或副作用,离线恢复要避免重复提交。权限错误区分未登录、无角色、资源不存在和授权过期,不能为方便统一返回空白。

  • 高风险操作二次确认
  • 重复请求使用幂等键
  • 不可恢复时提供导出、申诉或联系渠道
01

用状态机连接前后台真实状态,不让界面凭时间猜测。

02

每个状态说明发生、原因、数据影响和可执行下一步。

03

恢复设计同时考虑幂等、费用、权限和不可逆副作用。

03

KEY POINT

这节课最重要的结论

核心重点
每个异步功能至少要设计开始、进行、成功、失败和恢复。
为什么重要
这决定了把需求转化为团队能开发、能测试、能验收的完整方案时,团队是否拥有一致、可验证的判断标准。
适用边界
当问题目标、数据来源或失败成本发生变化时,不要机械套用;先重新确认假设和风险等级。
04

EXAMPLES

正确案例与常见反例

✓ 正确做法

文档处理显示“排队中—解析 35%—建立索引—可问答”,每个状态来自后台任务事件。格式错误在上传前校验并保留其他文件;超时后用户可继续等待、取消或稍后通知。重试复用任务 ID,避免重复计费。

× 常见误区

所有异步任务只用一个 loading 布尔值,30 秒后前端自行显示失败。后台其实仍在处理,用户点击重试产生两个任务和两次费用。权限失效时页面清空,用户误以为资料被删除。

和工程师这样沟通

“请把任务状态定义成枚举并返回 reason、progress、updatedAt 和 retryable。前端不会用固定 30 秒猜失败。重试必须带原任务幂等键;权限过期保留草稿并引导重新授权。”

05

HANDS-ON

必做实操任务

本节产出:“功能流程图、交互原型与可验收 PRD”阶段任务中的《默认、加载、空、错误、无权限与离线状态》一页实践卡

  1. 步骤 1选择一个异步 AI 功能,列出初始到终止的全部状态和触发事件。

  2. 步骤 2画状态转移图,标出允许、禁止和需要确认的转移。

  3. 步骤 3为加载、部分成功、三类错误、无权限和离线分别写用户反馈。

  4. 步骤 4定义每个失败是否可重试、如何幂等、是否计费以及数据如何保留。

○
实践完成度 0/4

实践结果会自动保存在本机,并进入项目工坊的任务来源。

功能状态机与恢复矩阵功能:____ 权威状态来源:____ 状态|进入事件|用户看到|允许动作|退出事件 initial|____|____|____|____ validating|____|____|____|____ queued/processing|____|____|____|____ partial|____|____|____|____ completed|____|____|____|____ failed|____|____|____|____ permission/offline/expired|____|____|____|____ 错误类型|reason|可重试|幂等键|计费|数据保留|替代动作 ____|____|____|____|____|____|____
06

CHECKLIST

产品经理工作检查表

07

MASTERY QUIZ

掌握测验

达到 60% 即可完成本课。

1异步任务为什么不应只有 loading 布尔值?
2好的错误反馈至少应包含什么?
3重试高成本生成任务时最重要的技术产品要求之一是?
08

INTERVIEW

常见面试题

你会如何设计一个 AI 长任务的加载和失败体验?
展开参考回答

先与工程定义权威状态机和事件,展示有意义进度与预计时间;为每个状态说明影响与动作;区分可重试、需修改输入和不可恢复失败;保留用户数据,使用幂等防重复;支持取消、后台通知和人工渠道;同时埋点监控各状态耗时与失败原因。

09

RECAP & FURTHER READING

重点回顾、延伸阅读与下一步

一句话回顾每个异步功能至少要设计开始、进行、成功、失败和恢复。
  1. 1

    围绕“默认、加载、空、错误、无权限与离线状态”继续阅读:选择一篇真实用户研究或产品决策复盘,识别其中的问题证据、方案取舍与验证闭环。

  2. 2

    用“空状态、错误恢复、离线状态”作为检索词,分别写下一条定义、一条适用边界和一个反例。

  3. 3

    对照本课正确案例与反例,寻找一个公开案例并记录其中可复用的判断与不能照搬的条件。