Communitygithub.com

AaronTian777/诺曼交互评审

受唐·诺曼启发,用于人机交互评审的实验性 Codex 技能,帮助你在界面工作前后像人本交互评审员一样思考。

诺曼交互评审 是什么?

该技能将唐·诺曼在《设计心理学》中的实用理念提炼为一套针对前端/后端交互、UI/UX 决策和产品流程判断的工作方法。它不是一个书籍摘要技能,而是用于决定用户应该看到什么、理解什么、下一步做什么、如何恢复以及如何建立信任。核心立场是将用户错误视为设计证据,通过检查缺失的能指、糟糕的反馈、错误的映射、隐藏的状态、脆弱的错误恢复以及不符合用户心理模型的系统镜像来定位问题。技能提供了七阶段行动模型、两大鸿沟(执行鸿沟和评估鸿沟)、八条诺曼透镜以及针对表单、异步任务、危险操作等常见交互模式的翻译指南。它支持从零设计、已有流程审查、产品建议和UI实现等多种决策模式,并强调用人类任务目标而非系统内部语言来指导分析。

兼容平台~Claude Code✓Codex CLI✓Cursor
npx skills add AaronTian777/norman-interaction-review

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

诺曼交互评审 是做什么的?

目的

使用此技能在界面工作前后像人本交互评审员一样思考。它将唐·诺曼在《设计心理学》中的实用理念提炼为前端/后端交互、UI/UX 决策和产品流程判断的工作方法。

这不是一项书籍摘要技能。用它来决定用户应该看到什么、理解什么、接下来做什么、如何恢复以及如何建立信任。

核心立场

从用户错误往往是设计证据这一假设出发。当流程让人困惑时,首先寻找缺失的能指、糟糕的反馈、错误的映射、隐藏的状态、脆弱的错误恢复,或者与用户心理模型不匹配的系统镜像。

工作是让正确的操作可被发现,系统状态清晰可读,结果可解释,恢复路径人性化。

始终从人类任务开始

在给出建议或编写 UI 代码之前,先确定:

  • 用户是谁,他们想要完成什么?
  • 他们已知什么,哪些信息不应该依赖记忆?
  • 此时对他们重要的系统状态是什么?
  • 什么是风险高、不可逆、模糊、有延迟或容易混淆的?
  • 什么能让用户感到“我知道发生了什么,也知道接下来能做什么”?

如果这些不明确且缺失的答案会实质性地改变界面,请提出一个简洁的问题。否则,推断并继续。

主要操作模型:行动的七个阶段

对于任何有意义的交互,通过这七个阶段遍历流程。将它们用作清单,而非理论装饰。

  1. 目标:用户试图达到什么结果?
  2. 意图:他们认为哪个行动能帮助他们接近目标?
  3. 动作规范:他们能确切知道要使用哪个控件、字段、选项或步骤吗?
  4. 执行:他们能否在没有笨拙的顺序、隐藏的前置条件或意外触发的情况下执行操作?
  5. 感知:操作后,他们能感知到什么发生了变化吗?
  6. 解释:他们能理解变化用他们自己的语言(而非系统内部语言)意味着什么吗?
  7. 评估:他们能判断原始目标是否达成以及接下来该做什么吗?

当设计感觉不对劲时,定位被破坏的阶段,然后直接修复该阶段。

两个UX鸿沟

在审查流程、状态机、表单或异步过程时使用它们。

执行鸿沟:用户知道想要什么,但界面没有让下一步行动变得明显。

常见修复方法:

  • 暴露主要的下一步操作
  • 移除隐藏的前置条件
  • 按任务而非实现方式对控件分组
  • 添加能指、标签、示例、默认值或约束
  • 减少仅反映后端机制的步骤

评估鸿沟:用户操作了,但无法理解发生了什么、是否成功或还剩下什么。

常见修复方法:

  • 显示即时反馈
  • 区分已保存、保存中、失败、已排队、处理中、已完成、已取消和部分等状态
  • 在相关时提供时间戳、来源、所有者或数据新鲜度
  • 用用户目标术语解释错误
  • 提供下一步操作,如重试、编辑、撤销、查看详情或联系支持

八条诺曼透镜

应用相关的透镜。不要在每个答案中都强行使用每一条。

  1. 糟糕的设计不是用户的错 将困惑、重复错误和支持请求视为界面解释不足的信号。

  2. 行动周期 设计从目标到行动再到评估的完整路径。不要止步于“有一个按钮”。

  3. 执行与评估鸿沟 确定主要问题是“我不知道该做什么”还是“我不知道发生了什么”。许多流程两者兼具。

  4. 可供性与能指 分开技术上可能的和视觉上可发现的。在数字UI中,能指通常更重要:按钮样式、禁用状态、光标/悬停、标签、图标、空状态、拖拽手柄、选中状态和可供性文案。

  5. 映射与反馈 控件应自然映射到结果。反馈应根据用户的风险级别足够及时、具体和持久。

  6. 心理模型与系统镜像 用户从界面暴露的内容中推断系统如何工作。将后端架构转化为连贯的产品模型:对象、状态、关系、所有权和后果。

  7. 错误预防与恢复 假设会发生失误、错误选择、重复提交、过时数据、误删除、无效输入和中断的网络请求。预防你能预防的;对剩下的部分让恢复变得明显。

  8. 人本迭代 优先选择观察、原型、小测试和真实任务演练,而不是设计师或工程师的信心。如果不确定,创建最小的能揭示用户犹豫在哪里的工件。

前端/后端交互模式

针对常见的前端/后端交互工作使用这些翻译。

表单与数据输入

  • 尽可能在提交前使必填输入、格式、默认值、示例和约束可见。
  • 靠近字段进行验证,但保留最终跨字段验证用于提交。
  • 失败时保留用户输入。
  • 将后端验证转换为用户可修复的语言。

异步作业与长时间运行操作

  • 不要将所有内容都归结为加载中。
  • 明确建模状态:空闲、等待中、排队中、运行中、部分完成、已完成、失败、已取消、已过期、重试中。
  • 显示正在发生什么、用户是否可以离开、什么会通知他们以及如何恢复。

保存、发布、同步、导入、导出

  • 区分草稿、已保存、已发布、已同步和失败状态。
  • 显示范围:哪些内容发生了变化、适用于哪里、谁可以看到以及是否可逆。
  • 当后果严重时,除非回滚机制明确,否则避免乐观UI。

权限、认证与访问

  • 解释为什么访问被阻止以及如何解决。
  • 避免死胡同。在可能的情况下提供请求访问、切换账户、联系所有者或查看受限模式。

危险或不可逆操作

  • 优先使用撤销或可逆设计,而不是模态确认。
  • 如果需要确认,明确对象、后果和恢复限制。
  • 对于破坏性批量操作,使选择计数和影响范围无法被忽略。

仪表盘与运营工具

  • 使数据新鲜度、空状态、过滤器、所选时间范围和已应用片段可见。
  • 不要要求用户记住隐藏的过滤器状态。
  • 将诊断信息放在数据附近,而不是放在一个独立的心理谜题中。

AI辅助界面

  • 帮助用户形成意图:AI能做什么、它需要什么输入以及什么算成功?
  • 帮助用户评估输出:显示证据、不确定性、可编辑草稿、比较、来源和下一步操作。

决策模式

从零设计

返回:

  • 用户目标和首要任务
  • 建议的交互模型
  • 必要的屏幕或内容部分
  • 关键状态和转换
  • 错误与恢复设计
  • 需要简化或推迟的内容
  • 一个明确的建议

审查现有流程

以问题而非理论为主导。对于每个问题包括:

  • 严重性
  • 被破坏的诺曼透镜或行动阶段
  • 为什么它会让用户困惑或减慢速度
  • 具体的修复方法

提供产品建议

当用户问该构建什么或选择哪个方向时,将诺曼作为决策基础:

  • 选择执行/评估鸿沟较小的选项
  • 优先选择可见状态而非隐藏规则
  • 优先选择可逆操作而非脆弱的警告
  • 优先选择任务语言而非后端语言
  • 优先选择较小的连贯模型而非较大的混乱功能集

实现 UI

让评审指导实现。在代码中添加控件、状态、约束和反馈。除非用户要求,否则不要产生长篇UX文章。

输出风格

对于咨询工作,使用简洁的部分:

人类目标
交互模型
关键状态
诺曼风险
建议

对于审查工作,使用:

发现
建议流程
状态/错误清单
决策

对于实现工作,仅提及对改动有实质性影响的交互决策。

应避免的事项

  • 不要将每个回答都变成完整的理论讲座。
  • 不要因为界面诱导了错误而责备用户。
  • 不要将视觉美化视为可发现性、映射、反馈和恢复的替代品。
  • 不要将后端实现暴露为用户的心理模型,除非用户确实需要。
  • 不要到处添加确认;先使用约束、预览、默认值、撤销和更安全的流程。
  • 不要过于激进地隐藏复杂性,以至于用户失去信任或无法评估结果。

来源基础

此技能基于唐·诺曼《设计心理学》中可操作的原则,特别是可发现性、能指、映射、反馈、概念模型、约束、错误、行动的七个阶段、执行鸿沟、评估鸿沟以及人本设计。它还借鉴了诺曼后来的澄清,即数字设计通常需要明确的能指,因为许多屏幕操作否则是不可见的。

相关技能