다크 패턴과 윤리
5월 시범 운영이 끝난 날, 작은 숲 주인이 두 가지를 부탁했다. 맡기기 화면의 "신간 소식 문자 받기"를 처음부터 체크해 두면 좋겠다는 것, 그리고 "3일이 지나면 다음 손님에게 넘어가요"라는 문장은 너무 딱딱하니 작게 줄이거나 빼자는 것. 둘 다 악의는 없었다. 아이를 키우는 부모들에게 새 그림책 소식을 꼭 전하고 싶었고, 손님을 재촉하는 것처럼 보이기 싫었다. 그러나 두 부탁을 그대로 들어주면 손님은 원하지 않은 문자를 받고, 모르는 규칙 때문에 맡긴 책을 잃는다. 이 장은 화면이 사람의 선택을 어떻게 몰래 기울이는지, 그것을 어떻게 알아보고 고치는지, 그리고 손님의 전화번호처럼 맡겨진 것을 얼마나, 얼마 동안 가질지를 본다.
- 다크 패턴(기만적 설계)의 뜻과 출처를 알고, 설득과 조작을 가르는 기준(숨김, 속임, 강요, 불리한 기본값)으로 화면을 판단한다.
- 미리 선택, 확인 수치심, 숨은 비용, 가짜 긴급, 속임 문구, 해지 미로를 전후 화면으로 알아보고 고친다.
- 동의가 자유롭고 구체적이며 분명한 행동으로 이루어지도록 동의 화면을 짜고, 기본값이 결과를 얼마나 바꾸는지 안다.
- 목적에 필요한 항목만, 필요한 기간만 모은다는 원칙을 보관 중인 정보의 양으로 계산해 본다.
- 시간 제한 같은 설계가 누구를 떨어뜨리는지 보고, 한 지표만 끌어올리는 최적화가 사람을 해치는 과정을 모형으로 따라간다.
속이는 설계
영국의 UX 디자이너 해리 브리그널(Harry Brignull)은 2010년, 사용자가 원하지 않는 일을 하도록 일부러 짠 인터페이스에 다크 패턴(Dark pattern)이라는 이름을 붙이고 사례를 모으는 웹사이트를 열었다. 이름이 붙자 흩어져 있던 불평들이 하나의 문제로 보이기 시작했다. 자동으로 넘어가는 유료 구독, 찾을 수 없는 탈퇴 버튼, 결제 직전에 붙는 수수료. 브리그널은 뒤에 이 말을 기만적 패턴(Deceptive pattern)으로 바꿔 부르기 시작했고, 2023년에 그동안의 사례와 분류를 『기만적 패턴』(Deceptive Patterns: Exposing the Tricks Tech Companies Use to Control You)이라는 책으로 냈다. 이름을 바꾼 이유로 그는 "다크"라는 말이 문제의 본질(속임)을 정확히 말하지 못하고 불필요한 연상을 남긴다는 점을 들었다. 이 장에서는 널리 쓰이는 "다크 패턴"과 "기만적 설계"를 함께 쓴다.
학계도 이 주제를 다룬다. 콜린 그레이(Colin M. Gray) 등은 「UX 디자인의 어두운 (패턴) 면」(The Dark (Patterns) Side of UX Design, CHI 2018)에서 실무자들이 모은 사례를 분석해 유형을 다시 묶었고, 아루니시 마투르(Arunesh Mathur) 등은 「대규모로 본 다크 패턴」(Dark Patterns at Scale, CSCW 2019)에서 쇼핑 웹사이트 약 1만 1천 곳을 자동으로 훑어 이런 설계가 드물지 않다는 것을 보였다. 이 장은 그 연구들의 수치를 옮기지 않는다. 대신 그들이 공통으로 쓰는 판단 기준을 빌린다.
다크 패턴을 판단할 때 흔히 빠지는 함정은 의도를 묻는 것이다. "속이려던 게 아니에요." 작은 숲 주인도 그랬다. 그러나 손님이 보는 것은 의도가 아니라 화면이다. 미리 체크된 칸은 체크한 사람의 마음과 상관없이 "가만있으면 동의"라는 구조를 만든다. 그래서 이 장은 의도 대신 구조를 묻는다. 그 화면에서 사용자가 알아야 할 것이 보이는가, 사실인가, 다른 선택이 같은 무게로 열려 있는가, 아무것도 안 하면 누구에게 유리한 쪽으로 가는가.
다섯 가지 얼굴
브리그널의 분류에는 열몇 가지 유형이 있고, 연구자마다 묶는 방식이 조금씩 다르다. 아래 표는 그 가운데 "맡아 두기" 같은 작은 서비스에서도 쉽게 생길 수 있는 것들을 골랐다. 이름은 브리그널의 영어 이름을 이 책이 옮긴 것이다.
| 유형 | 무엇을 하나 | 무엇을 이용하나 |
|---|---|---|
| 미리 선택(Preselection) | 사용자에게 불리한 선택지를 기본으로 골라 둔다 | 기본값을 바꾸지 않는 경향 |
| 확인 수치심(Confirmshaming) | 거절 문구를 부끄럽게 만든다("아니요, 저는 손해 볼래요") | 죄책감, 체면 |
| 숨은 비용(Hidden costs) | 마지막 단계에서야 수수료를 붙인다 | 이미 들인 시간과 노력 |
| 가짜 긴급(Fake urgency) | 사실이 아닌 마감, 다시 시작되는 타이머 | 놓칠까 하는 두려움 |
| 가짜 희소성·사회적 증거(Fake scarcity, Fake social proof) | "3개 남음", "5명이 보는 중"을 지어낸다 | 남들의 행동을 따르는 경향 |
| 속임 문구(Trick wording) | 이중 부정, 헷갈리는 문장으로 반대로 고르게 한다 | 훑어 읽기 |
| 해지 방해(Hard to cancel, Obstruction) | 가입은 한 번에, 해지는 미로로 | 지침, 포기 |
| 시각 방해(Visual interference) | 거절 버튼을 흐린 글자로, 수락은 크고 밝게 | 위계를 따르는 눈 |
해지 방해는 다음 절에서 따로 다룬다. 아래 시뮬레이터는 나머지 가운데 다섯 가지를 "맡아 두기"(가짜 긴급, 미리 선택, 확인 수치심, 속임 문구)와 가상의 북토크 예매 화면(숨은 비용, "맡아 두기"에는 결제가 없으므로)에 입혀 본 것이다. 왼쪽이 기만적인 화면, 오른쪽이 고친 화면이다. 유형을 바꾸며 두 화면에서 무엇이 달라졌는지 찾아본다.
다크 패턴 전후 비교
다섯 화면을 고치는 방법에는 공통점이 있다. 고친 화면은 더 화려하지도, 더 친절한 말투를 쓰지도 않는다. 그저 같은 무게를 돌려준다. 수락과 거절이 같은 크기의 버튼이 되고, 마지막에 붙던 수수료가 처음부터 보이고, 지어낸 숫자 대신 실제 재고가 적힌다. CompositionBook 12장에서 본 시각적 위계가 정보의 순서를 돕는 데 쓰이면 디자인이고, 사용자가 원하지 않는 쪽으로 눈을 끌고 가는 데 쓰이면 시각 방해다. 같은 도구다.
들어가기는 쉽게, 나가기는 어렵게
브리그널이 초기에 바퀴벌레 덫(Roach motel)이라고 불렀던 유형이 있다. 들어가기는 쉬운데 나오기는 어렵게 만든 구조다. 지금은 "해지 방해", "방해"로 부른다. 가입은 버튼 한 번으로 되는데 해지하려면 설정 메뉴 깊숙이 들어가야 하고, 이유를 길게 써야 하고, 혜택 안내를 몇 번 넘겨야 하고, 마지막에는 전화를 걸어야 하는 식이다. 이 구조는 비대칭으로 알아볼 수 있다. 같은 사람이 같은 서비스에서 반대 방향으로 가는 데 드는 수고를 세어 비교한다.
"맡아 두기"에는 구독이 없지만 같은 문제가 있다. 맡기기는 5장에서 정한 다섯 단계로 끝나는데, 취소는 어디서 하는가? 시범 운영 화면에서는 "내 맡김" 화면의 오른쪽 위 메뉴 안에 "취소"가 있었고, 누르면 확인 대화상자가 한 번 더 떴다. 아래에서 취소 흐름에 장애물을 하나씩 더해 본다. 장애물마다 취소하려던 손님의 일부가 포기한다고 가정한다.
맡기기 탭 수와 취소 탭 수
해지 방해는 보통 "떠나는 손님을 붙잡는" 장치로 정당화된다. 그러나 "맡아 두기"에서 취소를 어렵게 만들면 손해를 보는 것은 손님만이 아니다. 취소하지 못한 손님의 책은 3일 동안 서가에서 빠져 있고, 그 책을 찾던 다른 손님은 헛걸음을 한다. 3장에서 이 서비스가 풀려고 했던 바로 그 문제다. 숫자로 보면 붙잡은 것처럼 보이지만(취소 건수가 준다), 실제로는 아무도 찾아가지 않을 맡김이 늘어날 뿐이다. 이 이야기는 이 장의 마지막 절에서 지표의 문제로 다시 만난다.
규제도 이 비대칭에 주목한다. 한국의 「전자상거래 등에서의 소비자보호에 관한 법률」(전자상거래법)은 온라인 거래에서 소비자를 속이거나 선택을 방해하는 행위를 다루며, 최근의 개정으로 숨은 갱신이나 취소·해지 방해 같은 일부 다크 패턴 유형을 직접 다루게 되었다. 유럽연합의 디지털 서비스법(Digital Services Act, 2022)도 온라인 플랫폼이 이용자의 자율적 선택을 왜곡하는 인터페이스를 쓰지 못하게 한다. 이 책은 법률 해설서가 아니므로 조항을 옮기지 않는다. 실제 서비스를 만든다면 그때의 법령 원문과 전문가의 확인을 거친다. 다만 방향은 분명하다. 들어오는 문과 나가는 문의 크기를 같게.
동의는 고르는 것이다
"맡아 두기"는 전화번호로 본인을 확인하고, 책이 준비되면 문자를 보낸다. 여기까지는 서비스를 위해 꼭 필요한 일이다. 작은 숲 주인이 원한 "신간 소식 문자"는 다르다. 맡기기와 상관없는 광고성 연락이므로 손님이 따로, 스스로 골라야 한다. 이렇게 필요한 처리와 선택적인 처리를 나누고, 선택적인 것은 사용자가 분명히 고르게 하는 것이 동의 설계(Consent design)의 출발점이다.
유럽연합의 일반 개인정보 보호법(GDPR)은 동의를 "자유롭게 주어지고, 구체적이며, 충분히 알고, 모호하지 않은" 의사 표시로 정의한다(제4조 제11호). 유럽연합 사법재판소는 2019년 Planet49 판결에서 미리 체크된 칸은 유효한 동의가 될 수 없다고 판단했다. 한국의 「개인정보 보호법」도 정보를 모을 때 무엇을 왜 모으는지 알리고, 꼭 필요한 정보와 선택적인 정보를 구분해 동의를 받게 하며, 선택 항목에 동의하지 않았다는 이유로 서비스를 거부하지 못하게 하는 원칙을 두고 있다(조항과 세부 요건은 법령 원문을 확인한다). 법의 말은 달라도 화면에 요구하는 것은 비슷하다.
- 자유롭게: 거절해도 서비스를 쓸 수 있어야 한다. 필수와 선택을 한 칸에 묶으면 자유롭지 않다.
- 구체적으로: 목적마다 따로 묻는다. "서비스 이용과 혜택 안내에 동의"는 두 가지를 한 번에 묻는다.
- 분명한 행동으로: 사용자가 직접 체크하거나 눌러야 한다. 미리 체크된 칸, "계속하면 동의한 것으로 봅니다"는 행동이 아니다.
- 같은 무게로: 거절이 수락만큼 쉽고 눈에 띄어야 한다. 이것은 법의 말이라기보다 앞 절의 시각 방해를 피하는 디자인 원칙이다.
아래에서 "맡아 두기"의 전화번호 확인 화면에 붙은 동의 칸을 직접 짜 본다. 세 장치를 켜고 끌 때마다 네 조건이 어떻게 바뀌는지, 그리고 가상의 손님 100명 가운데 몇 명이 "동의"로 집계되고 그중 몇 명이 정말 원해서 동의했는지를 본다.
동의 화면 짜기
기본값의 힘은 오래 연구된 주제다. 사람들은 여러 이유로 기본값을 바꾸지 않는 경향이 있다. 귀찮아서, 기본값이 권장안이라고 믿어서, 그런 칸이 있는 줄 몰라서. 행동경제학자 리처드 세일러(Richard Thaler)와 법학자 캐스 선스타인(Cass Sunstein)은 『넛지』(Nudge, 2008)에서 이런 경향을 사람에게 이로운 쪽으로 쓰자고 했고, 이것이 옳은지에 대해서는 지금도 논쟁이 있다. 이 장의 입장은 단순하다. 기본값이 사용자에게 이로운 쪽이라면(예: 개인정보는 기본으로 덜 공개) 괜찮고, 서비스에게만 이로운 쪽이라면 사용자가 직접 고르게 한다.
필요한 만큼만, 필요한 동안만
주인들이 처음 내민 기능 목록(1장)에는 모을 정보도 길게 적혀 있었다. 이름, 전화번호, 이메일, 생년월일(생일 쿠폰), 주소(배달할지도 몰라서), 성별, 관심 분야(추천에 쓰려고), 지금 위치. 하나하나는 "있으면 언젠가 쓸모 있을" 정보다. 그러나 모은 정보는 그 자체로 책임이다. 지켜야 하고, 유출되면 손님이 피해를 입고, 모은 목적이 사라진 뒤에도 남아 있으면 쓸모없이 위험만 남는다.
그래서 개인정보를 다루는 법과 지침은 거의 공통으로 최소 수집(Data minimization)을 원칙으로 둔다. 목적에 필요한 항목만, 그 목적에 필요한 기간만 모으고 가진다. 한국의 「개인정보 보호법」도 목적에 필요한 최소한의 정보를 모으고, 목적을 이루면 지체 없이 파기하는 원칙을 두고 있다. 아래 그림은 정보 한 조각의 일생이다.
아래 시뮬레이터에서 주인들이 원한 여덟 항목 가운데 무엇을 모을지 화면 위의 칸을 눌러 고르고, 맡김이 끝난(찾아감·취소·기한 지남) 뒤 며칠 동안 보관할지 정한다. "맡아 두기"에는 하루 평균 10건의 맡김이 들어온다고 가정한다(가상 값).
수집 항목과 보관 기간
보관 기간을 정하는 일은 두 위험 사이에서 고르는 일이다. 너무 길면 쓸모없는 정보가 쌓여 유출 때의 피해가 커지고, 너무 짧으면 "맡겼는데 가게에 책이 없었다" 같은 다툼을 확인할 수 없다. 서윤은 다툼이 생기면 대개 일주일 안에 연락이 온다는 시범 운영의 경험(가상)을 근거로, 맡김이 끝난 뒤 30일 보관을 제안했다. 법이 따로 보관을 요구하는 기록이 있는지는 실제 서비스라면 확인해야 한다. 그리고 지우는 것도 설계해야 한다. "30일 뒤 지운다"는 문장은 자동으로 지우는 기능이 있어야 사실이 된다. 지후는 매일 밤 한 번, 끝난 지 30일이 지난 기록의 전화번호를 지우는 작업을 만들기로 했다. 통계에는 전화번호 없는 집계만 남긴다.
포용적 설계: 시간과 사람
속이려는 의도가 전혀 없어도 화면은 누군가를 떨어뜨릴 수 있다. "맡아 두기"의 전화번호 확인에는 문자로 받은 여섯 자리 번호를 3분 안에 넣어야 하는 제한이 있었다. 보안을 위한 흔한 설계다. 그런데 시범 운영에서 이 화면을 끝내지 못한 손님들이 있었다. 문자 앱과 브라우저를 오가는 것이 익숙하지 않은 사람, 글자를 크게 키워 쓰는 사람, 화면 낭독기로 쓰는 사람, 아이를 안고 한 손으로 쓰던 사람.
포용적 설계(Inclusive design)는 "평균적인 사용자"를 기준으로 삼지 않고, 제외되기 쉬운 사람에서 출발해 설계하는 태도다. 마이크로소프트의 포용적 디자인 지침(Inclusive Design, 2016)은 장애를 영구적인 것(한쪽 팔이 없는 사람), 일시적인 것(팔을 다친 사람), 상황적인 것(아이를 안고 있는 사람)으로 이어서 보는 그림으로 이 생각을 널리 알렸다. 한 손으로 쓰기 어려운 사람을 위해 고친 화면은 아이를 안은 부모에게도 쓸모 있다.
시간 제한에 대해서는 웹 접근성 지침이 분명한 기준을 둔다. WCAG 2.2의 2.2.1(시간 조절 가능)은 시간 제한이 있으면 사용자가 그것을 끄거나, 조절하거나, 끝나기 전에 알림을 받고 간단한 동작으로(최소 20초의 여유를 두고) 연장할 수 있어야 한다고 한다. 실시간 경매처럼 시간이 본질인 경우 등은 예외로 둔다. 같은 지침의 3.3.8(접근 가능한 인증, 최소)은 인증 과정에서 기억하거나 옮겨 적는 일 같은 인지 기능 시험을 요구할 때 붙여 넣기나 자동 입력 같은 다른 길을 함께 두라고 한다. 아래 모형에서 제한 시간과 연장 알림을 바꾸며, 손님 무리마다 몇 명이 시간 안에 끝내지 못하는지 본다.
인증번호 시간 제한은 누구를 떨어뜨리나
모형의 수치는 지어낸 것이지만, 모양은 사용성 테스트에서 자주 보는 것이다(8장). 평균에 맞춘 제한은 꼬리에 있는 사람들을 잘라 낸다. 그리고 그 꼬리에는 늘 같은 사람들이 있다. 나이 든 손님, 장애가 있는 손님, 바쁜 상황에 있는 손님. WebBook의 첫 시험 사용자였던 도경은 휴대폰 글자를 가장 크게 키워 쓴다. 도경이 문자 앱에서 번호를 외워 돌아오는 사이 3분이 지나면, 그것은 도경의 실수가 아니라 화면의 설계다.
지표가 사람을 해칠 때
9장에서 서윤은 "맡긴 뒤 실제로 찾아간 비율"을 지표로, "주인 확인 지연"을 가드레일로 정했다. 왜 더 단순한 숫자, 예를 들어 "맡아 두기 버튼을 누른 수"를 쓰지 않았을까. 버튼을 누른 수는 재기도 쉽고 매일 오르내려 보기에도 좋다. 문제는 그 숫자를 올리는 가장 쉬운 방법들이 이 장에서 본 장치들이라는 데 있다. 가짜 긴급 배너를 띄우고, 버튼을 깜빡이게 하고, 알림을 미리 체크해 다시 불러들이면 누른 수는 오른다. 그러나 찾아갈 생각이 없던 사람들의 맡김도 함께 늘어, 책은 서가에서 빠진 채 묶이고 다른 손님은 헛걸음을 한다.
경제학자 찰스 굿하트(Charles Goodhart)의 이름이 붙은 굿하트의 법칙(Goodhart's law)은 이 현상을 가리킨다. 1975년 굿하트가 통화 정책에 관해 지적한 것을, 인류학자 메릴린 스트래선(Marilyn Strathern)이 1997년 글에서 "측정값이 목표가 되면 좋은 측정값이기를 멈춘다"는 뜻으로 일반화한 표현이 널리 퍼졌다. 아래 모형에서 화면의 "압박 강도"를 올려 본다.
누른 수가 오를 때 일어나는 일
모형에서 "찾아간 수"가 압박 0.3 근처에서 조금 오르는 구간이 가장 위험하다. 짧은 실험이라면 그 구간에서 "압박이 효과가 있다"는 결론이 나올 수 있다. 그러나 그 작은 증가는 원하지 않던 맡김과 헛되이 묶인 책, 문자에 지친 손님을 대가로 얻은 것이고, 그 대가는 실험 기간에는 잘 보이지 않는다. 지표를 고를 때 "이 숫자를 올리는 가장 쉬운 방법은 무엇인가, 그 방법이 사람에게 해로운가"를 먼저 묻는 이유다. 해로운 방법으로도 올릴 수 있는 숫자라면 반드시 그 해를 재는 가드레일과 짝을 지운다.
서윤의 서비스 노트
기본은 해제, 규칙은 크게, 취소는 두 탭
작은 숲 주인의 두 부탁을 받은 날 저녁, 서윤은 거절하는 대신 하린과 함께 주인에게 이 장의 시뮬레이터들을 보여 주었다. 동의 화면 시뮬레이터에서 미리 체크 하나만 켜도 "동의"는 72명이 되었지만 정말 원한 사람은 30명이었다. 하린이 물었다. "나머지 42명이 문자를 받고 나서 작은 숲을 어떻게 기억할까요?" 주인은 한참 화면을 보다가 말했다. "그림책을 기다리는 부모들은 30명이면 충분해요. 귀찮아하는 사람한테 보내 봐야 차단만 당하겠네요." 신간 소식 칸은 맡기기와 떨어진 자리, 맡기기가 끝난 뒤의 완료 화면에 기본 해제로 두었다. "(선택) 작은 숲의 신간 그림책 소식을 문자로 받을래요"라고 적고, 받기와 안 받기 버튼을 같은 크기로 놓았다. 수신은 "내 맡김" 화면에서 언제든 끌 수 있다.
"3일이 지나면 다음 손님에게 넘어가요"는 오히려 크게 했다. 맡기기 확인 화면에서 버튼 바로 위에 두고, 기한 하루 전에 문자로 한 번 더 알린다. 주인의 걱정(재촉하는 것처럼 보인다)은 문장으로 풀었다. 10장의 해요체 원칙대로, 8장에서 정한 날짜와 함께 "6월 3일(토)까지 맡아 둘게요. 그 뒤에는 기다리는 다른 손님에게 넘어가요." 하린은 이 규칙을 숨기면 가장 먼저 다치는 사람이 손님이고, 그다음이 그 손님에게 원망을 듣는 주인이라고 했다.
수집 항목은 주인들의 목록 여덟 개에서 둘로 줄였다. 지후가 "생년월일은 나중에 생일 쿠폰 할 때…"라고 하자 서윤은 "그때 그 기능과 함께 물어보면 돼요"라고 답했다. 취소는 "내 맡김"의 상태 카드마다 "맡김 취소" 버튼으로 꺼내 두었다. "내 맡김"을 열고 버튼을 누르면 두 탭으로 끝난다. 확인 대화상자는 두지 않고, 5장의 방식대로 바로 취소한 뒤 화면 아래에 "되돌리기"를 몇 초 띄운다. 이유는 묻되 고르지 않아도 된다. 인증번호 제한은 5분으로 늘리고, 끝나기 1분 전에 알려 한 번에 연장할 수 있게 했으며, 입력하던 번호는 지우지 않는다. 문자의 번호를 자동으로 채우는 입력 속성도 켰다(지원하는 기기에서).
| 항목 | 서윤의 선택 | 확인한 값 |
|---|---|---|
| 신간 소식 동의 | 맡기기 완료 뒤 따로, 기본 해제, 받기·안 받기 같은 크기, 언제든 끄기 | 동의 화면 네 조건 모두 통과 |
| 준비·기한 알림 | 맡기기에 필요한 알림으로 안내(광고 문자와 분리) | 준비됨 1회, 기한 하루 전 1회 |
| 기한 규칙 | 날짜와 "그 뒤에는 다음 손님에게"를 맡아 두기 버튼 바로 위에, 본문과 같은 크기로 | 숨기지 않음 |
| 모으는 항목 | 전화번호(필수: 확인·알림), 받는 이름(선택, 별칭 가능) | 8개 → 2개. 주인 화면에는 번호 뒤 네 자리만 |
| 보관 기간 | 맡김이 끝난 날(찾아감·취소·기한 지남)부터 30일 뒤 전화번호 자동 삭제, 통계는 번호 없는 집계만 | 하루 10건 가정 시 보관 약 330명(1년 보관이면 운영 1년 뒤 약 3,650명) |
| 취소 | 상태 카드마다 "맡김 취소", 대화상자 없이 바로 취소하고 "되돌리기", 이유는 선택 | 맡기기 5탭 · 취소 2탭 |
| 인증번호 시간 | 5분, 1분 전 알림과 한 번에 연장, 입력 유지, 번호 자동 채우기 | WCAG 2.2의 2.2.1 기준에 맞춤 |
| 지표 | 9장의 지표(찾아간 비율)와 가드레일 유지, 동의율은 목표로 쓰지 않음 | 공개 전 윤리 점검 질문 네 가지 |
핵심 정리
- 다크 패턴(기만적 패턴)은 사용자가 원하지 않는 선택을 하도록 짠 설계다. 해리 브리그널이 2010년에 이름을 붙였고, 2023년 책 『Deceptive Patterns』로 정리했다. 의도가 아니라 구조로 판단한다: 숨기는가, 거짓인가, 다른 길을 막는가, 기본값이 불리한가.
- 미리 선택, 확인 수치심, 숨은 비용, 가짜 긴급, 속임 문구, 시각 방해는 모두 같은 무게를 돌려주는 방식으로 고친다. 디자인 시스템의 부품은 중립이므로, 쓰지 않을 때를 문서에 적어 둔다.
- 들어오는 문과 나가는 문의 크기를 같게 한다. 맡기기와 취소, 가입과 해지의 수고를 세어 비교한다. 취소를 막으면 손님뿐 아니라 가게와 다른 손님도 손해를 본다.
- 동의는 자유롭고, 구체적이며, 분명한 행동으로, 거절이 수락만큼 쉬워야 한다. 미리 체크된 칸은 동의가 아니다. 동의율을 목표로 삼으면 동의 화면이 기울어진다.
- 목적에 필요한 항목만, 필요한 기간만 모은다. 보관 중인 정보의 양은 대략 들어오는 속도 × 머무는 기간 × 항목 수다. 지우는 것도 기능으로 설계한다.
- 평균에 맞춘 제한은 늘 같은 사람들을 떨어뜨린다. 시간 제한에는 알림과 연장을 둔다(WCAG 2.2의 2.2.1). 쉽게 올릴 수 있는 숫자를 목표로 삼으면 해로운 방법으로 올리게 된다(굿하트의 법칙). 그런 지표에는 해를 재는 가드레일을 짝지운다.
확인 퀴즈
1. 회원 가입 화면 맨 아래에 "이벤트·광고 문자 수신 동의" 칸이 미리 체크되어 있다. 이 장의 기준으로 가장 알맞은 판단은?
2. 어떤 서비스는 버튼 하나로 정기 구독을 시작하지만, 해지하려면 설정 메뉴 세 단계, 해지 이유 설문, 혜택 안내 두 화면을 거친 뒤 고객센터에 전화해야 한다. 이 설계를 가리키는 말로 가장 알맞은 것은?
3. 하루 평균 10명이 맡기고, 맡김은 평균 3일 동안 진행되며, 끝난 뒤 30일 동안 전화번호를 보관한다. 운영이 충분히 길어졌을 때 보관 중인 전화번호는 대략 몇 개인가?
4. 팀이 "맡아 두기 버튼을 누른 수"를 핵심 목표로 삼자, 화면에 가짜 마감 배너와 깜빡이는 버튼이 늘었다. 누른 수는 올랐지만 실제로 찾아간 비율은 떨어졌다. 이 현상을 가장 잘 설명하는 것은?