UX디자인 방법론 | 휴리스틱(Heuristics)

     

    서비스를 기획하고 디자인함에 있어 사용자가 좀 더 쓰기 편하게, 좀 더 쉽게, 좀 더 정확하게

    즉, 사용자 친화적으로 설계하는 것은 기본이다. 이를 위한 방법 중 하나는 '인간 심리학'을 이해하는 것이다.

    인간 심리학 중 문제해결과 의사결정과 관련이 있는 휴리스틱에 대해 정리해 본다.

     


    휴리스틱 (Heuristics) 이란?

    먼저 사전적 정의는 어림짐작, 주먹구구식 직감, (그리스어)발견하다의 뜻으로,

    어떤 문제나 상태에 대해 빠른 판단을 내리는 행동을 말한다.

    행동경제학에서 인간은 비합리적 행동을 심리/ 사회/ 감정적 관점에서 보고 파악해야 한다고 본다. 인간은 기계가 아니기 때문에 언제나 이성적이고 합리적인 존재가 아니기 때문이다. 

    출처 : thesaurus.plus

     

    이런 휴리스틱은 크게 두 가지로 구분할 수 있다. 

     

    (1) 대표성 휴리스틱 (Representative Heuistics)

    대표성 휴리스틱은 실제 확률에 대한 판단은 배제한 채 대상이 의미하는 대표성을 갖고 판단하는 오류를 말한다. 클리셰처럼 상징적 의미를 가진 모든 것이 대표성에 해당한다. 

     

    (2) 가용성 휴리스틱 (Availability Heuistics)

    가용성 휴리스틱은 개인적 기억만으로 판단하는 행위이다. 기억에서 쉽게 떠오르는 대상을 상대적으로 높이 평가하는 경향이 있다. 

     

    휴리스틱 평가 (Heuristics Evaluation)

    그렇다면 이런 오류의 판단을 내리는 휴리스틱은 나쁜 것일까? 아니다. 휴리스틱과 관련된 여러 선행 연구를 보면, 휴리스틱을 토대로 결정한 것이 정보가 부족하거나 판단능력이 부족함에도 좋은 성과를 가져다준 사례가 많다. 다양한 휴리스틱으로 인해 판단의 오류가 발생할 수 있지만, 범용적인 기호나 관습적인 패턴을 보고 행동이 이루어진다는 긍정적인 측면이 있다.

     

    때문에 휴리스틱은 일반적인 설계법칙으로 널리 이용된다. 휴리스틱 준수 여부를 사용성 전문가들이 판단하고 시스템 개발이나 평가에 사용하여 초기 단계에 유용하게 쓰인다. UX 디자이너는 휴리스틱을 활용해 사용자의 문제를 해결하고자 할 때 심리적 요소를 잘 이해하여 반영하는 것이 필요하다. 

    나역시 모바일 앱 서비스 사용성을 점검하기 위한 리서치 방법으로 휴리스틱 평가를 활용해 문제를 도출해냈다. 

     

    장점

    • 비정규적인 평가방법이면서 내부 리소스가 있는 경우 비용 측면에서 효율적인 방법

    • 적은 수의 참여자 투입으로 비교적 정확한 결과 도출

    • 다른 사용성 테스트 방법과 함께 사용 가능

     

    단점

    • 구체적이고 계랑적인 평가 자료 부족

    • 전문가와 실제 사용자가 시스템을 바라보는 시각의 차이 존재

    • 전문가 자질에 따라 평가 결과가 유동적

     

     

    제이콥 닐슨의 10가지 휴리스틱 평가 (Heuristics Evaluation)

    소프트웨어(web/app)의 사용자 인터페이스를 을 평가하는 여러 방법론 중 제이콥 닐슨(Jacob Nielsen, 도널드 노먼과 함께 '닐슨 노먼 그룹'의 창립멤버)은 휴리스틱 평가를 개념화시켰다. 이 평가법은 휴리스틱을 사용하여 시스템 인터페이스의 문제점을 파악할 수 있어 약 20년동안(Nielsen, 1994) 다양한 소프트웨어 평가에 사용되며 가치를 가진다. 

     

    실전에서 휴리스틱 평가는 다양하게 쓰인다. 일반인이 하는 사용성 테스트(Usability Test) 이전, 실무자끼리 먼저 평가하곤 한다. 나의 경우에도 3~5명이서 항목에 따라 평가후 문제점을 도출하고, 바로 개선 방안을 정리해 수정할 수 있었다. 

     

    휴리스틱 평가는 아래 10가지 문항이 존재하며 다음과 같은 순서로 진행한다.

    • 테스트가 필요한 서비스를 아래 10가지 문항을 기준 삼아 서술한다.

    • 의견을 교류하고, 문제를 파악한다.

    • 문제의 우선순위를 정하고, 실질적 대안을 함께 고민한다. 

     

     

    #1. 상태 안내 가시성 (Visibility of system status)

    현재의 작업 상태에 대해 사용자에게 적절한 피드백을 적시에 제공해야 한다. 사용자가 현재 시스템 상태를 알게 되면 이전 상호작용의 결과를 학습하고 다음 단계를 자연스럽게 배울 수 있다. 예측 가능한 상호작용은 브랜드뿐만 아니라 제품에 대한 신뢰를 형성한다.

    ex. 진행 로딩바, 현위치를 표시한 맵

     

    #2. 현실에서 익숙한 단어와 문구 사용 (Match between system and the real world)

    시스템은 사용자의 언어로 말해야 한다. 전문 용어가 아닌 사용자에게 익숙한 단어, 문구, 개념으로 해야 직관적 이해가 쉽다. 시스템 중심이 아닌 사용자의 현실 세계의 관례를 따라야 한다. 

    ex. 인터넷 환경의 휴지통-실제 휴지통

     

    #3. 사용자 제어와 자유도 (User control and freedom)

    사용자는 자주 실수를 저지른다. 시스템은 사용자가 실수를 해도 언제든지 취소 또는 재실행 할 수 있는 방법을 제공해야 한다. 사람들이 어떤 과정에서 물러나거나 행동을 취소하는 것이 쉬우면 자유와 자신감을 받는다. 이런 기능을 통해 사용자는 갇히거나 좌절하지 않고 시스템을 제어할 수 있다. 

    ex. 실행취소, 임시저장, 나가기

     

    #4. 일관성과 기준 (Consistency and standards)

    사용자가 혼란스럽지 않도록 시스템이 사용하는 용어나 상황, 정보 표현 방법, 인터페이스 등의 일관성을 유지해야 한다. 이를 위해 디자인 시스템과 같은 기준을 정의하고 일관성을 유지한다. 이때, 무조건 같은 위치와 크기, 간격을 유지하기 위해 시간을 들이는 '일치성'이 아니라 모든 부분이 같은 제품으로 느끼게 하는 '일관성'을 우선시하도록 유의한다.

    ex. 비밀번호, 패스워드 같이 같은 뜻을 가진 단어 표현

     

    #5. 에러 예방 (Error prevention)

    실수 이후의 오류 메세지도 좋지만, 가장 좋은 디자인은 처음부터 사용자가 실수할 수 있는 상황이 없도록 세심하게 예방하는 것이다. 작업을 수행하기 전에 오류 상황을 확인하고 사용자에게 확인 옵션을 제공합니다. 사용자들이 어떤 액션을 취하기전에, 충분히 인지시켜야 한다. 정성스레 쓴 글을 썼는데 실수로 close 버튼을 눌렀다고 별다른 경고 없이 꺼진다면 크게 절망할 것이다.

    ex. 확인 메세지(정말 나가시겠습니까?)

     

    #6. 기억보다 직관 (Recognition rather than recall)

    사용자가 별도의 학습과 기억 없이 해당 기능에 대해 쉽게 인식할 수 있어야 한다. 직관적인 인터페이스는 사용자가 필요로 하는 인지 노력(기억)의 양을 줄여줍니다. 텍스트만으로 아이콘을 만들 수 있지만 바로 연상되는 이미지를 함께 사용한다면 기능을 더욱 쉽게 이해할 수 있다. 

     

    #7. 사용 효율성 (Flexibility and efficiency of use)

    해당 소프트웨어의 이해도가 높은 사용자와 초보 사용자를 배려해야 한다. 개별 사용자에 맞게 컨텐츠 및 기능을 조정하여 개인 설정을 제공한다. 자주 쓰는 메뉴 모음이나 순서 변경 같이, 숙련된 사용자 정의를 제공해 사람들이 각자에게 맞는 방법을 유연하게 사용할 수 있도록 한다.

    ex. 단축키 설정

     

    #8. 보기 편하고 쉽게 이용할 수 있는 디자인 (Aesthetic and minialist design)

    불필요하고 관계없는 정보는 포함하지 않아야 한다. 관련 있는 디자인 요소를 우선으로 하여 사용자의 기본 목표를 달성하도록 한다.

     

    #9. 명확한 에러문구 (Help users recognize, diagnose, and recover from errors)

    오류 메세지는 쉽고 명확한 언어로 표시 해야 한다. 동시에 빠른 해결책을 제시해야 한다. 이런 오류 메시지는 사용자가 인지하는데 도움이 되는 시각적 표현으로 제공해야 한다.

    ex. 볼드체이거나 빨간색으로 표시된 에러 메세지

     

    #10. 도움말 (Help and documataion)

    사용자가 어려움에 직면할 때 해당 기능에 대한 설명을 쉽고 빠르게 찾아볼 수 있어야 한다. 도움말은 찾기 쉬워야 하며 간결하고 수행해야 할 구체적인 단계를 담아야 한다. 

     

    출처 :: https://www.nngroup.com/articles/ten-usability-heuristics/#poster

     

    CHECK POINT :
    기본에 충실하기, 방법론에서 본질을 파악하기 

     

     

     

     

     

     

    댓글