topic★★★★★난이도
테슬러의 법칙 — 복잡도는 사라지지 않고 이동한다
모든 시스템에는 줄일 수 없는 본질적 복잡도가 있다. 누군가는 반드시 감당해야 한다.
#테슬러법칙#복잡도보존#본질적복잡도#자동화
왜 배우는가
Apple의 전설적 UX 엔지니어 Larry Tesler가 남긴 이 법칙은 '단순하게 만들어라'는 조언의 한계를 알려준다. 사용자에게서 복잡도를 덜어내면 그만큼 시스템(개발자)이 떠안는다. 공짜 단순함은 없다.
테슬러의 법칙은 복잡도 보존의 법칙(Law of Conservation of Complexity)이라고도 불린다. 핵심 주장은 이렇다 — 어떤 프로세스든 더 이상 줄일 수 없는 본질적 복잡도(Inherent Complexity)가 존재한다. 이 복잡도는 사라지는 것이 아니라 사용자 → 시스템 또는 시스템 → 사용자로 이동할 뿐이다.
| 사례 | 사용자 부담 (전) | 시스템 부담 (후) |
|---|---|---|
| 주소 입력 | 우편번호+시+구+동+번지 직접 입력 | 우편번호 검색 API로 자동 완성 |
| 결제 | 카드번호 16자리 수동 입력 | 카메라 OCR 인식 또는 간편결제 |
| 날짜 선택 | YYYY-MM-DD 텍스트 입력 | 달력 위젯(Date Picker) 제공 |
| 파일 변환 | 사용자가 포맷·코덱 직접 선택 | 시스템이 용도에 맞게 자동 변환 |
좋은 디자인이란 복잡도를 없애는 것이 아니라, 복잡도를 '누가 감당할지' 올바르게 선택하는 것이다. 대부분의 경우 사용자보다 시스템이 감당하는 편이 낫다 — 시스템은 피로를 느끼지 않으니까.
그러나 시스템이 지나치게 많은 복잡도를 떠안으면 부작용이 생긴다. 과도한 자동화는 사용자의 통제감을 빼앗고, 예측 불가능한 동작으로 오히려 혼란을 준다. 이메일 앱이 '중요 메일'을 자동 분류해주지만 가끔 중요한 메일을 스팸으로 보내는 것이 대표적 사례다.
테슬러의 법칙 적용 기준 — ① 해당 복잡도가 본질적인가, 우발적인가를 먼저 구분하라. 우발적 복잡도(기술적 제약으로 인한 것)는 제거할 수 있다. 본질적 복잡도만 남겨두고, 그것을 시스템과 사용자 사이에서 최적으로 분배하라.