BLOG main image
분류 전체보기 (239)
Rails (65)
Ruby (34)
이야기 (40)
스토리큐 (61)
그 밖에.. (30)
C# (6)
작은아이의 생각
agiletalk's me2DAY
[rails] Growl4Rails
美소년 ㅇㅅㅇ씨의 一日
마사키군의 생각
ayukawa's me2DAY
작은아이의 생각
agiletalk's me2DAY
[Google App Engine] 나의 첫번..
머드초보의 블로그
53,979 Visitors up to today!
Today 43 hit, Yesterday 58 hit

 SUBSCRIBE

'humane'에 해당되는 글 1건
2009/09/06 21:00

다음은 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개로 늘어날 때 느껴지는 복잡도보다 더 큽니다.

 

결론

모든 인터페이스를 정량분석을 통해서 측정할 수는 없겠지만, 그리고 현실적으로 거의 이루어지지 않고 있지만, 이 방법을 알고 인터페이스를 만드는 것과 모르고 만드는 것에는 큰 차이가 있을 것입니다.

책에 나온 한 구절을 통해 내용을 정리합니다.

정량분석을 통하지 않고는 우리의 작업이 얼마나 잘 진행되고 있는지, 개선의 여지는 없는지 도무지 알 방법이 없다.

prev"" #1 next