Sign In
⚖️

테슬러의 법칙 (Tesler's Law)

어떤 시스템이든 더 이상 줄일 수 없는 최소한의 복잡성이 반드시 존재한다

정의

모든 시스템에는 더 이상 단순화할 수 없는 일정 수준의 복잡성이 존재하며, 이를 복잡성 보존의 법칙(Law of Conservation of Complexity)이라고 부른다.
디자인이나 개발을 단순하게 할수록 그 복잡성이 사라지는 것이 아니라 사용자의 몫으로 넘어가거나 시스템 내부로 이동하게 된다

복잡성 이동의 원리

1.
복잡성 인지 : 서비스가 제공하는 핵심 기능 수행에 필요한 최소한의 정보 파악
2.
설계자 부담 : 디자이너가 인터페이스를 자동화, 단순화하여 복잡성을 시스템 내부로 흡수
3.
사용자 부담 : 시스템이 처리하지 못한 나머지 복잡성은 사용자가 직접 학습하거나 입력해야하는 영역으로 남게됨
4.
최적점 도달 : 시스템과 사용자 사이 복잡성 배분이 가장 효율적인 지점을 찾는 것이 설계의 핵심임

유래

1980년대 중반, 컴퓨터 과학자 래리 테슬러(Larry Tesler)가 제안했다
상황 : 사용자가 컴퓨터와 상호작용하는 방식을 연구하던 중, 인터페이스를 아무리 단순하게 만들어도 특정 작업을 수행하기 위해 필요한 '본질적 복잡성'은 변하지 않는다는 점을 발견
주장 : 복잡성을 어마나 제거하느냐가 아니라 그 복잡성을 누가 처리하게 하느냐에 서비스의 성공이 달려있다
결론 : 사용자의 고통을 줄이기 위해 가능한 한 많은 복잡성을 시스템(디자이너와 개발자)이 대신 짊어져야한다는 철학으로 발전

예시

이메일 작성 자동완성 기능
간편결제 시스템으로 매번 카드 번호와 주소를 입력하는 복잡성을 시스템이 처리하도록 함

활용

디자이너는 사용자의 인지 부하를 줄여주면서도, 지나친 단순화로 인해 기능을 제어하지 못하는 부작용을 막아야한다
복잡성의 위임 : 사용자가 반복적으로 수행하거나 학습하기 힘든 부분은 알고리즘 자동화로 해결해 시스템 내부로 숨긴다
본질적 기능 유지 : 무조건 옮기는 것이 정답은 아니다. 사용자가 직접 결정해야 할 핵심적인 선택권(ex) 결제 금액 확인)까지 숨기면 사용자는 불확실성과 불안함을 느끼게 된다
점진적 노출 : 처음에는 꼭 필요한 정보만 보여주고 심화기능은 단계적으로 노출해 사용자가 복잡성을 감당할 수 있도록 한다
👩🏻‍💻
단순함은 복잡성을 잘 숨긴 결과물이다.
좋은 디자이너는 서비스 뒤편에서 복잡한 구조를 묵묵히 처리하면서도, 사용자가 보는 모습은 마법처럼 쉽고 단순하게 사용자 경험을 누리도록 만들어야한다