다음은 UI study 에서 진행한 인간중심 인터페이스 스터디 중 4장 정량화에 대한 내용입니다.
정량분석
인터페이스 디자인의 좋고 나쁨을 어떤 기준을 통해 수치화시키는 작업을 정량화라고 합니다.
왜 필요한가?
- 디자인을 평가할 때 "예쁘다", "편하다" 와 같은 막연한 표현 대신 숫자를 이용해 비교를 함으로써 논란을 줄여 줍니다.
- 구체적인 근거를 제시함으로써 상대방을 설득하기 쉬워집니다.
- 인터페이스를 더 나은 방향으로 개선해 나가고 있는지 확인을 할 수 있고, 더 개선할 여지가 있는지 알 수 있습니다.
책에서는 정량분석에 대한 방법으로 GOMS(model of goals, operations, methods, and selection rules), Raskin의 효율 측정, Hick의 법칙, Fitts의 법칙을 소개합니다.
주의) 정량분석은 절대적인 기준이 될 수 없으며, 정성분석과 같은 다른 방법론들과 균형을 맞추어야 합니다.
GOMS 모델
GOMS 모델은 어떤 작업(task)을 수행할 때 걸리는 총 시간을 계산하는 방법을 제시하고 있습니다. 그 방법은 다음과 같습니다. 하나의 작업을 연속적인 기본 제스처의 단위로 나눕니다. 그리고 그 기본 제스처들의 수행시간을 모두 더합니다. 기본 제스처들의 수행시간은 실험을 통해서 얻어낼 수 있습니다. 수행시간은 보통 평균값을 사용합니다.
기본 제스처는 다음과 같은 것들이 있습니다.
- 키누름시간(K) : 0.2초
- 포인팅시간(P) : 1.1초
- 호밍시간(H) : 0.4초
- 정신적 준비시간(M) : 1.35초
- 반응시간(R) :
아이폰 같은 터치 인터페이스가 보편화됨에 따라 기본 제스처에 터치, 흔들기와 같은 것들도 포함될 수 있겠습니다.
효율성 측정
정보량을 기준으로 인터페이스가 얼마나 효율적인가를 측정할 수 있습니다. 인터페이스의 효율성은 다음과 같은 공식에 의해 계산되어집니다.
정보 효율성 = 작업을 수행하기 위해 꼭 필요한 정보량/사용자가 제공한 정보량
javascript의 경고창(alert) 과 같이 확인 버튼 하나만 있는 경우는 필요한 정보량이 0이 되기 때문에 효율성도 0입니다.
예를 들어 숫자 하나를 키보드로 입력받는 입력창의 효율성은 다음과 같이 계산됩니다.
꼭 필요한 정보량은 숫자 하나에 대한 가지 수 만큼입니다. 0-9까지 10개의 숫자가 있고 따라서 정보량은 log2(10) = 2.3 입니다. 즉 숫자 하나를 입력받기 위해서는 최소한 2.3byte가 필요합니다.
100 개의 자판을 가진 키보드를 이용해 숫자를 입력한다고 하면, 숫자를 입력하기 위해 사용자가 제공하는 정보량은 log2(100) = 6.7 정도 입니다.(키 하나하나 눌려지는 확률이 동일하다고 가정합니다.) 즉 사용자는 숫자 하나를 입력하기 위해 100개의 자판 중 하나를 선택해야 하고, 그 가지 수를 표현하기 위해서는 6.7byte가 필요합니다.
그래서 정보 효율성은 2.3/6.7 = 0.34 입니다.
이와 같은 경우 정보 효율성을 개선하기 위한 간단한 방법으로는 숫자 전용자판을 이용하는 것입니다.
문자 효율성은 정보를 문자의 갯수로 한정시킴으로써 효율성을 보다 간편하게 구할 수 있게 해 줍니다.
문자 효율성 = 작업에 필요한 최소 문자수/사용자에게 요구하는 문자수
Fitts 법칙
Fitts 법칙은 어떤 표적을 얼마나 쉽게 선택할 수 있는지를 측정할 수 있도록 해줍니다.
즉 표적이 클수록, 표적과의 거리가 가까울 수록 선택하기 쉽다는 의미입니다.
T = a + b*log2(D/S +1)
T : 선택하는데 걸리는 시간
D : 커서와 표적 사이의 거리
S : 표적의 크기
a,b : 실험에 의해 특정된 상수
예를 들어 폼의 확인 버튼을 디자인 할 때 클릭하기 쉽게 하도록 하기 위해서는 버튼을 크게 만들고, 버튼을 폼의 마지막 입력 창과 가깝도록 만들면 클릭하기 쉬워집니다.
그 비율이 log로 증가하고 있다는 것이 흥미롭습니다. 아주 작은 버튼을 조금 크게 만들면 클릭이 확 쉬워지는 반면, 충분히 큰 버튼을 더 크게 만드는 것은 그 개선 효과가 미미해집니다.
가장자리
화면 중 가장자리 부분은 Fitts 법칙에 의해 특혜를 보고 있는 공간입니다. 화면의 가장자리는 마우스 커서가 더이상 이동할 수 없는 지역이기 때문에 더 넓은 표적의 크기를 가지게 됩니다. 무슨 뜻이냐면, 화면의 최상단에 상태바가 있다고 가정할 때, 이 상태바를 선택하기 위해서 마우스를 과감하게 이동시켜도 커서가 화면을 뚫고 지나가지 못하고 화면의 최상단에 위치하게 됩니다. 그래서 가장자리에 위치한 버튼은 약 5cm정도 크기를 더 갖는 효과를 볼 수 있습니다.
Fitt의 법칙을 적용한 다양한 예를 보실 수 있습니다.
1. 메뉴 네비게이션
하위 메뉴를 상위 메뉴근처에 보여줍니다. 따라서 하위 메뉴를 선택하기 쉬워집니다.
2. 맥의 화면 상단에 위치한 메뉴바
맥 에서는 화면의 최상단에 위치한 메뉴바(File, Edit..)가 애플리케이션의 메뉴입니다. 이는 Fitt의 법칙을 잘 따른 구현으로 메뉴를 선택함에 있어서는 효율적이지만, 직관적인 면에서는 좋지 않은 듯 합니다. 직관적인 면에서는 애플리케이션에 메뉴를 포함시킨 윈도우의 방식이 더 좋아 보입니다.

3. 맥에서의 hot spot
화면 네 구석에 자주 사용하는 메뉴를 지정할 수 있습니다.
4. 윈도우의 시작버튼
윈도우의 시작버튼도 가장자리 효과를 이용하고 있습니다. 다만 잘못 베꼈다는 날카로운 지적도 있네요.
Hick의 법칙
Hick의 법칙은 선택의 가지 수가 많아질 수록 선택을 하는데 걸리는 시간이 더 많아진다 입니다. 복잡한 결정을 내릴 때가 간단한 결정을 내릴 때보다 더 많은 시간이 걸립니다. Hick의 법칙은 다은과 같은 공식으로 표현됩니다.
T = a + b*log2(n+1)
T : 선택을 하는데 걸리는 시간
n : 선택의 가지 수
a,b : 상수
Fitt의 법칙과 마찬가지로 시간이 선택 갯수의 log에 비례한다는 것이 흥미롭습니다. 3개에서 6개로 메뉴가 늘어날 때 느껴지는 복잡도가 50개에서 70개로 늘어날 때 느껴지는 복잡도보다 더 큽니다.
결론
모든 인터페이스를 정량분석을 통해서 측정할 수는 없겠지만, 그리고 현실적으로 거의 이루어지지 않고 있지만, 이 방법을 알고 인터페이스를 만드는 것과 모르고 만드는 것에는 큰 차이가 있을 것입니다.
책에 나온 한 구절을 통해 내용을 정리합니다.
정량분석을 통하지 않고는 우리의 작업이 얼마나 잘 진행되고 있는지, 개선의 여지는 없는지 도무지 알 방법이 없다.
'그 밖에..' 카테고리의 다른 글
| 인간중심 인터페이스 4장 정량화 (0) | 2009/09/06 |
|---|---|
| Userfly : 사용자의 동작을 지켜보자. (0) | 2009/09/03 |
| CSS를 이용해서 프린트 친화적인 페이지 만들기 (0) | 2009/09/02 |
| Jruby로 RED5 애플리케이션 만들기 (0) | 2009/04/07 |
| RED5 설치와 데모 애플리케이션들 (0) | 2009/04/07 |
| SSH Turneling (0) | 2009/03/24 |