The Design of Everyday Things 2회차 - 클릭은 행동의 끝이 아니라 해석의 시작이다
The Design of Everyday Things는 문손잡이와 스위치 이야기로 유명하지만, UX/UI를 다루는 개발자에게는 훨씬 실질적인 책이다. 이 책은 “사용자가 왜 헤매는가”를 심리학, 제품 구조, 피드백, 오류 회복, 조직 의사결정의 문제로 나누어 보게 한다.
이번 글의 질문은 이것이다. 사용자가 버튼을 누른 뒤에도 왜 계속 불안해하는가?
이 글은 5회로 읽는 The Design of Everyday Things 시리즈의 2회차다. 범위는 2장 The Psychology of Everyday Actions이다.
포착 -> 증류 -> 연결 -> 표현 4단계 깔때기로 UX 원칙을 개발자의 설계 판단으로 바꾼다. 핵심 원칙은 같다. 책 노트는 창고, 인사이트 카드는 화폐.
L0 · 서지 & 진입
- 한 문장 핵심: 좋은 인터페이스는 사용자의 목표 형성부터 결과 해석까지 행동의 전체 루프를 안내한다.
- 이 책을 든 이유 / 기대한 질문: UX/UI 개발을 “디자인 전달받기”가 아니라 제품의 행동 문법을 구현하는 일로 보기 위해 읽는다.
- 읽기 전 가설: 개발자는 클릭 이벤트를 기능 호출로 보기 쉽다. 이 회차는 클릭 전후의 심리적 간극까지 설계 대상으로 보게 한다.
- 저자 한 줄 컨텍스트: Don Norman은 인지과학, 인간-컴퓨터 상호작용, 사용자 중심 설계 분야를 대중적 언어로 연결한 연구자이자 설계 사상가다.
- 이번 회차 범위: 2장 The Psychology of Everyday Actions
- 관련 도서 / 계보: A Philosophy of Software Design · The Pragmatic Programmer · A Theory of Fun for Game Design · Design System
L1 · 포착함
“seven stages of action”
- 왜 표시했나: 목표에서 결과 평가까지 이어지는 행동 루프다. ^q01
- 개발자 반응: 화면 하나가 아니라 사용자 여정 전체를 설계 단위로 보게 한다.
“gulf of execution”
- 왜 표시했나: 무엇을 어떻게 해야 할지 모르는 간극이다. ^q02
- 개발자 반응: CTA, 입력 순서, 기본값, 제약 조건이 이 간극을 줄인다.
“gulf of evaluation”
- 왜 표시했나: 방금 한 행동이 어떤 결과를 냈는지 모르는 간극이다. ^q03
- 개발자 반응: toast, inline status, progress, history, undo가 이 간극을 줄인다.
이 공개 노트는 책의 장문 문장을 재현하지 않는다. 장 제목과 짧은 핵심어만 단서로 삼고, 내용은 UX/UI 개발자의 실무 해석과 적용 중심으로 재구성한다.
L2 · 챕터 지도
| 단위 | 내가 붙인 이름 | 핵심 주장 | 개발자 적용 |
|---|---|---|---|
| 목표 | 사용자는 기능이 아니라 목적을 가진다 | 드릴이 아니라 구멍, 더 나아가 선반을 원한다 | 사용자 스토리는 기능명보다 달성하려는 상태로 써야 한다 |
| 계획 | 사용자는 가능한 행동을 고른다 | 선택지가 너무 많거나 숨어 있으면 행동이 늦어진다 | 주요 행동과 보조 행동의 위계를 분명히 한다 |
| 실행 | 사용자는 실제 조작을 한다 | 입력·클릭·드래그는 시스템 규칙을 시험하는 순간이다 | 입력 마스크와 즉시 검증을 신중하게 설계한다 |
| 평가 | 사용자는 결과를 해석한다 | 피드백이 없으면 사용자는 같은 행동을 반복한다 | 성공·실패·대기 상태를 화면 안에서 설명한다 |
이번 회차 논증 한 단락:
2장은 UX를 화면의 문제가 아니라 시간의 문제로 바꾼다. 사용자는 목표를 만들고, 행동을 계획하고, 실행하고, 결과를 해석한다. 개발자는 보통 실행 단계, 즉 버튼 클릭이나 API 호출에 집중한다. 하지만 실제 사용성은 그 앞뒤에서 무너진다. 실행의 간극은 “무엇을 해야 하지?”라는 막힘이다. 평가의 간극은 “이게 된 건가?”라는 불안이다. 둘 다 코드로 해결할 수 있다. 버튼 라벨을 구체화하고, 위험한 행동에는 확인을 두고, 저장 중 상태를 보여주고, 실패한 입력을 어디서 어떻게 고쳐야 하는지 알려주는 일은 모두 개발자의 책임 안에 있다.
L3 · 인사이트 카드 색인
- The Design of Everyday Things - I2.1 이벤트 핸들러는 행동 루프의 한 지점일 뿐이다 — 클릭이 발생했다고 UX가 끝나는 것이 아니다. 사용자는 그 결과를 보고 다음 판단을 해야 한다.
- The Design of Everyday Things - I2.2 좋은 피드백은 장식이 아니라 신뢰의 인프라다 — 시스템이 침묵하면 사용자는 불안해지고, 불안은 중복 제출과 이탈로 나타난다.
- The Design of Everyday Things - I2.3 목표를 기능명으로 번역하는 순간 사용자 맥락이 사라진다 — “파일 업로드”보다 “과제를 제출했다는 확신을 얻는다”가 더 좋은 UX 질문이다.
L4 · 생산 보드
- 블로그 초안: 2회차를 UX/UI 개발자 관점으로 정리
- 코드 리뷰 질문: 사용자가 버튼을 누른 뒤에도 왜 계속 불안해하는가?
- 디자인 시스템 카드: The Design of Everyday Things - I2.1 이벤트 핸들러는 행동 루프의 한 지점일 뿐이다
- 적용 실험: 최근 만든 화면 하나에 이 회차의 기준을 적용해 보기
바로 적용할 체크리스트
- 모든 비동기 액션에
idle/loading/success/error/retry상태를 명시한다. - 성공 toast만 넣지 말고, 사용자가 다음에 해야 할 행동까지 연결한다.
- 폼 제출 후 중복 클릭 방지, optimistic update, rollback, undo 정책을 기능별로 문서화한다.
L5 · 연결 & 복습
- 다른 책/아이디어와의 연결: 이 회차는 A Philosophy of Software Design의 인지 부하 관점과 이어진다. 차이는 코드 내부 복잡성보다 사용자의 행동 복잡성을 다룬다는 점이다.
- 미해결 질문:
- 우리 제품에서 사용자가 가장 자주 “멈추는” 화면은 어디인가?
- 그 문제는 교육, 문서, CS로 해결할 일인가, 아니면 화면의 단서와 피드백을 고칠 일인가?
- 디자인 시스템에 이 회차의 원칙을 어떤 컴포넌트 계약으로 넣을 수 있을까?
- 복습 일정: 1주 □ / 1개월 □ / 3개월 □
- 한 문장 최종 정리: 클릭은 사용자의 행동이 끝나는 지점이 아니라 시스템이 사용자의 신뢰를 얻기 시작하는 지점이다.
댓글
GitHub 계정으로 의견을 남길 수 있습니다. 댓글은 GitHub Discussions에 저장됩니다.