Communitygithub.com

AaronTian777/norman-interaction-review

實驗性的 Codex 技能,用於進行唐·諾曼風格的互動審查

norman-interaction-review 是什麼?

這項技能旨在協助開發者與設計師,在進行前端、後端互動、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. 以人為本的迭代 比起設計師或工程師的信心,更偏好觀察、原型、小型測試和真實任務的走查。如果不確定,建立一個能揭示使用者在何處猶豫的最小成品。

前端/後端互動模式

針對常見的前端/後端互動工作使用這些轉譯。

表單與資料輸入

  • 盡可能在提交前,讓必要輸入、格式、預設值、範例和約束條件可見。
  • 在欄位附近進行驗證,但保留最終的跨欄位驗證用於提交。
  • 在失敗時保留使用者輸入。
  • 將後端驗證轉換為使用者可修正的語言。

非同步任務與長時間運行的操作

  • 不要把所有東西都簡化成載入中。
  • 明確地建模狀態:閒置、待處理、排隊中、執行中、部分完成、已完成、失敗、已取消、已過期、重試中。
  • 顯示正在發生什麼事、使用者是否可以離開、什麼會通知他們,以及如何復原。

儲存、發布、同步、匯入、匯出

  • 區分草稿、已儲存、已發布、已同步和失敗的狀態。
  • 顯示範圍:變更了什麼、適用於何處、誰可以看到,以及是否可逆。
  • 當後果嚴重時,避免樂觀更新,除非有明確的回退機制。

權限、驗證與存取

  • 解釋為什麼存取被阻止,以及如何解決。
  • 避免死胡同。在可能時,提供請求存取、切換帳戶、聯絡擁有者或檢視受限模式。
  • 使用特定於使用者的欄位名稱或動作,而非泛泛的通知。

危險或不可逆的行動

  • 在可行時,優先採用復原或可逆設計,而非模態確認對話框。
  • 如果需要確認,請指名物件、後果和復原限制。
  • 對於破壞性的批次操作,確保選取計數和受影響的範圍是不可能被忽略的。

儀表板與營運工具

  • 讓資料新鮮度、空狀態、篩選器、選取的時間範圍和應用的區段可見。
  • 不要求使用者記住隱藏的篩選狀態。
  • 將診斷資訊放在資料旁邊,而不是放在一個獨立的心智謎題中。

AI 輔助介面

  • 幫助使用者形成意圖:AI 能做什麼、需要什麼輸入、什麼算成功?
  • 幫助使用者評估輸出:顯示證據、不確定性、可編輯的草稿、比較、來源和後續動作。

決策模式

從頭設計

回傳:

  • 使用者目標與首要任務
  • 建議的互動模型
  • 必要的畫面或內容區塊
  • 關鍵狀態與轉換
  • 錯誤與復原設計
  • 應簡化或延後的事項
  • 一個明確的建議

審查現有流程

以問題為主導,而非理論。每個問題需包含:

  • 嚴重性
  • 故障的諾曼透鏡或行動階段
  • 為何這會讓使用者困惑或變慢
  • 具體的修復方式

提供產品建議

當使用者詢問該建置什麼或選擇哪個方向時,使用諾曼作為決策基礎:

  • 選擇執行/評估鴻溝較小的選項
  • 偏好可見的狀態而非隱藏規則
  • 偏好可逆的動作而非脆弱的警告
  • 偏好任務語言而非後端語言
  • 偏好較小連貫的模型而非較大且令人困惑的功能集

實作 UI

讓審查結果指導實作。當任務需要時,在程式碼中加入控制項、狀態、約束條件和回饋。除非使用者要求,否則不要產出一篇冗長的 UX 論文。

輸出風格

對於顧問工作,使用簡潔的章節:

人類目標
互動模型
關鍵狀態
諾曼風險
建議

對於審查工作,使用:

發現
建議流程
狀態/錯誤檢查清單
決策

對於實作工作,僅提及實質上影響變更的互動決策。

應避免的事項

  • 不要將每個回應都變成完整的理論講座。
  • 不要因為介面誘發了錯誤而責怪使用者。
  • 不要將視覺修飾視為可發現性、對應關係、回饋和復原的替代品。
  • 除非使用者真的需要,否則不要將後端實作暴露為使用者的心理模型。
  • 不要到處添加確認對話框;優先使用約束條件、預覽、預設值、復原和更安全的流程。
  • 不要太激進地隱藏複雜性,以至於使用者失去信任或無法評估結果。

來源基礎

此技能基於唐·諾曼《設計的心理學》中的實用原則,特別是可發現性、示意符號、對應關係、回饋、概念模型、約束條件、錯誤、行動七階段、執行鴻溝、評估鴻溝以及以人為本的設計。它還借鑒了諾曼後來的澄清,即數位設計通常需要明確的示意符號,因為許多螢幕上的動作是看不見的。

相關技能