B3.01.3Progress Feedback设计
长任务需要进度而非仅忙碌指示
别名: 进度条 · 长任务 · 不确定进度
概念解释
忙碌指示(busy indicator)只说“系统没死”;进度(progress feedback)要说处理到哪一步、完成了多少、还剩多少、能否取消或继续其他事。上传、导入、渲染、批处理和模型任务超过短暂等待后,需要阶段、数量或百分比等信息,而不只是一个旋转符号。
机制
进度把不可见的后台工作映射到可计划的时间与行动。用户根据剩余量决定等待、切换任务、稍后回来或取消;阶段信息还能把长任务分成可理解的子目标。单纯忙碌动画不含时间信息,超过几秒后无法区分短暂卡顿与无限等待,也容易让用户怀疑进度倒退或系统挂起。
边界
不是所有任务都能准确量化。未知总量的扫描或模型推理应显示阶段、已处理数量或活动迹象,不应伪造精确百分比。进度也常非线性:某个阶段可能突然变慢,估算剩余时间要谨慎并允许更新。可取消性需要真正清理资源并说明已生效部分。
怎么落地
- 将长任务拆成命名阶段,例如上传、校验、转换、写入;每阶段显示对象数量或比例。
- 能计算总量时显示确定进度和估算剩余;不能时显示已处理/未知总量和最近活动时间。
- 提供最小化、后台继续、取消和失败恢复,并在完成后给出结果入口。
- 用慢网络和大数据集测试进度是否更新、估算是否稳定、取消是否能停止处理。