모니터 어딘가에 있는 마우스 커서 찾기

2021. 12. 6. 07:50UI 가벼운 이야기
gunggmee

망막의 중심부 시야와 달리 주변의 시야는 해상도가 낮기 때문에, 작은 마우스 커서가 어디에 있는지 찾으려면 눈동자를 열심히 움직이며 화면을 뒤져야 합니다. 하지만 사람들은 눈동자 대신 손을 움직여서 커서를 흔들곤 합니다. 주변시는 움직임을 감지하는 능력이 탁월하기 때문에, 움직이는 커서는 비교적 쉽게 찾을 수 있습니다.

사람들은 눈의 구조, 안구 이동, 뇌의 시각 경로가 작동하는 방식을 따로 공부하지 않아도 자연스럽게 이런 일을 해냅니다. 커서를 찾으려고 마우스를 흔드는 사람이 하도 많으니 macOS에서는 마우스를 빠르게 흔들면 커서를 크게 키워주는 기능을 구현해버렸습니다. 작았던 커서가 커지는 변화 자체가 또다른 움직임이기도 하고, 큰 물체는 주변시로도 잘 볼 수 있으니 더욱 찾기가 쉬워집니다.

생태적 조합과 인식적 행동

커서를 흔들 때, 사람들은 뭘 한걸까요? 눈동자의 움직임을 줄이기 위해 손을 움직였습니다. 즉, 눈동자 움직임과 손 움직임을 교환하여 '모니터 어딘가에 이는 커서 찾기'라는 과업을 더 효율적으로 달성했습니다. 앤디 클락 Andy Clark은 2010년 저서 "Supersizing the Mind"에서 이런 행위를 생태적 조합 ecological assembly이라고 부릅니다.

영리한 인지주체는 최소한의 노력만으로 수용할만한 결과를 낼 수 있다면, 문제 해결에 필요한 어떤 자원의 조합이건 즉석에서 끌어 쓰려는 경향이 있다. …the canny cognizer tends to recruit, on the spot, whatever mix of problem-solving resources will yield an acceptable result with a minimum of effort.

전통적인 관점에서, 인간은 감각 기관을 통해 세상의 정보를 취하고, 머릿속에서 적절한 계산을 수행한 다음, 몸을 움직여서 행동을 수행합니다. 이 관점에서 보면 손의 움직임은 '행동'에 해당합니다.

하지만 위 사례에서 손의 움직임은 행동이라기보다는 지각에 가깝습니다. 커서를 움직인 이유는 커서를 어디론가 이동시키고 싶었기 때문이 아니라 커서의 발견(즉, 지각)을 돕고 싶었기 때문입니다. 이러한 행동을 인식적 행동 epistemic action이라고 부릅니다. 전통적인 행동은 인식적 행동과 구분하기 위해 실용적 행동 pragmatic action이라고 부르고요.

1980년 대에 '사용자 중심 디자인'이 화두로 떠오르면서 "사용자가 복잡한 행동을 하도록 강제해서는 안된다"라는 생각이 널리 자리잡았습니다. 하지만 이 말이 왜곡되어 "사용자는 복잡한 행동을 하지 못한다" 또는 "사용자가 복잡한 행동을 한다면 이는 좋은 디자인이 아니다"라는 식으로 여기는 경우를 자주 접합니다.

좋은 디자인은 복잡한 행동을 하도록 강요하지는 않으면서도 필요에 따라 복잡한 행동을 할 수 있도록 허용하거나 때론 유도하는 디자인이어야 합니다. 복잡한 행동을 허용하기 때문에 오히려 사용성이 개선되는 상황들이 존재하기 때문입니다. 사용자가 다양한 생태적 조합을 활용할 수 있도록 최대한 고려하는 열린 디자인이 필요합니다.

정보 자가 구축과 인지 적소

인간은 인식적 행동으로 물리적/사회적 환경을 변형하고, 이를 통해 인지효율을 높입니다. 예를 들면 이런 행동들이 그렇습니다.

  • 포커를 할 때 손 안의 카드들을 재배치하여 패턴을 인식하기 쉽게 만들기
  • 퍼즐을 맞출 때 비슷한 색상의 조각들끼리(또는 모서리는 모서리끼리) 분류해놓고 시작하기
  • 요리 재료를 순서에 맞게 나열해놓기
  • 벽면에 포스트잇을 붙일 때 관련된 내용들을 서로 가까이에 배치하기 (어피니티 다이어그램)
  • 테트리스를 할 때 블럭을 이리저리 회전시켜보기 (실제로 회전을 시키는 게 목적이 아니라 머릿속으로 돌려보기 어려우니 손을 움직이는 것)

위와 같이 눈 앞에 펼쳐진 정보의 형태를 바꾸기 위해 인식적 행동을 하는 행위를 정보 자가 구축 information self-structuring이라고 부릅니다. 즉, 눈 앞 세상에 필요한 정보가 있기는 있는데 인식하기에 효율적인 형태가 아닌 경우, 몸을 이용하여 세상에 펼쳐진 정보를 적절하게 재배치하여 인식의 효율성을 높이는 것입니다.

생태학에서는 거미가 거미줄을 치거나 비버가 댐을 짓는 등의 행위를 적소 구축 niche construction이라고 말합니다. 정보 자가 구축을 통해 인간이 스스로의 인지 환경을 개선하는 행동은 인지 적소 구축 cognitive niche construction이라고 부릅니다. 인간은 자신이 거주하는 공간, 일하는 공간을 다양한 방식으로 변형하여 인지 적소를 구축합니다. 예를 들어 회사 모니터 옆에 포스트잇을 붙여 놓거나, 서류철을 자신만의 방식으로 쌓아 놓는 식으로 주변 환경을 활용합니다. 포스트잇과 같은 인공물뿐 아니라 팀 동료에게 질문을 하거나 부탁을 하는 등 사회적 관계로까지 확장하여 생각한다면 맥락 또는 환경의 중요성은 더욱 커집니다.

이러한 관점에 의하면 환경과의 능동적 상호작용은 전체 인지 과정의 필수 불가결한 요소이므로 사용자를 관찰실로 데려와서 수행하는 사용자 조사는 마치 거미집을 제거하고 거미의 생태를 관찰하는 것이나 마찬가지로 대단히 제한된 방법입니다. 컨텍스추얼 인쿼리 contextual inquiry가 중요한 이유입니다.

몸에 담긴 뇌, 환경에 담긴 몸, 환경의 능동적 작용

이러한 관점에서 보면 인지 과정을 이해하고자 할 때 뇌가 담겨 있는 몸을 함께 고려해야만 합니다(embodied). 그리고 몸은 다시 어떠한 물리적/사회적 환경에 놓여 있다는 사실도 중요합니다(embedded, situated). 몸과 환경은 인지과정에 있어서 중요한 역할을 하기 때문입니다. 마지막으로, 환경은 그저 수동적으로 존재하는 것이 아니라 전체 인지 과정에 있어서 능동적인 역할을 합니다(능동적 외재주의 active externalism).

전통적인 관점에서 뇌가 핵심적인 인지 주체이고 몸은 세상과 뇌를 연결하는 통로에 불과하며 환경은 인지 주체가 문제를 해결하는 수동적 공간이라고 보았다면, 새로운 관점에서는 뇌-몸-환경이 서로 밀접하게 상호작용하는 하나의 인지 시스템이라고 봅니다. 인지 과정이란 뇌에만 있는 것이 아니라 몸과 환경으로 널리 확장되어 있습니다.

몸과 환경의 능동적 역할을 보여주는 좋은 사례가 있습니다.

혼다의 아시모 Asimo는 진보한 인간형 로봇 중 하나이지만(2000년대 기준), 에너지 효율성 측면을 따져보자면 인간에 비해 16배나 떨어진다고 합니다. 효율성은 단위 무게의 물체를 단위 거리까지 옮기기 위해 소모하는 에너지의 양을 기준으로 측정하는데, 인간은 0.2, 아시모는 3.2입니다.

수동적 보행자 passive walker라고 불리는 다른 종류의 보행 인공물이 있습니다. 동력으로 움직이는 것은 아니고 걷기 적합하게 생긴 단순한 골격들로 이루어진 간단한 모형인데요, 내리막에 올려놓고 손으로 살짝 밀어주면 중력으로 인해 걷게 됩니다. 수동적 보행자의 효율성은 인간에 육박한다고 합니다. 이런 종류의 수동적 보행자에 최소한의 동력을 제공하면 대단히 효율적인 전동 보행 로봇이 만들어집니다.

다음은 코넬 대학의 수동 보행 로봇 사례입니다.

코넬 대학의 수동 보행 로봇

아시모와 수동적 보행자 사이의 가장 큰 차이는 로봇의 운동 제어 시스템이 어디에 있는지, 어떤 식으로 작동하는지에 있습니다. 아시모는 복잡하게 설계된 제어 프로그램과 정교한 기계 장치가 보행의 각 단계에 세밀하게 관여합니다. 반면 수동적 보행자는 걷기에 적합하게 설계된 신체 구조와 중력이 존재하는 환경 그 자체가 정교한 제어 프로그램의 역할을 대신합니다. 이를 형태적 계산 morphological computation이라고 부릅니다.

손의 움직임이 시지각을 보조하듯이 골격 형태와 재질, 바닥의 특성, 중력이 존재하는 환경 등이 로봇의 뇌에 해당하는 제어 프로그램의 역할을 대체한 것입니다.

시스템을 넓게 보기, 구현이 아닌 기능적 역할에 주목하기

뇌-몸-환경으로 이루어진 인지 시스템을 분석하거나 디자인할 때 전통적인 구분보다는 기능적인 구분이 더 유익한 경우가 많습니다. 즉, 전체 시스템을 이해하고자 할 때 중요한 것은 각 요소가 수행하는 기능 또는 역할이지 각 요소가 어떻게 구현되어 있는지가 아닙니다. 이 관점으로 시스템을 이해하는 접근을 분산된 기능적 분해 distributed functional decomposition라고 부릅니다.

인지 과정을 수행하는 뇌, 계산의 결과를 실행하는 몸, 몸을 통해 인간과 상호작용하는 인공물 또는 환경, 이런 식의 관점보다는 인간-인공물-환경이 단일한 하나의 인지 시스템이고 이 안에서 각각의 요소가 어떤 기능 또는 역할을 수행하는지(또는 수행하도록 디자인할 것인지)를 생각하면 유익합니다.

이미 실무적인 디자인 책들에도 이러한 관점들이 반영되고 있습니다. 예를 들면 콜린 웨어 Colin Ware의 데이터 시각화 교과서(Information Visualization: Perception for Design)와 대중서(Visual Thinking for Information Design) 개정판들은 앤디 클락의 "예측하는 뇌 관점"("Supersizing the Mind" 이후의 저서인 "Surfing Uncertainty: Prediction, Action, and the Embodied Mind"에서 제시하는 관점입니다)을 적극적으로 담아내고 있습니다. 특히 데이터 시각화와 탐색적 데이터 분석에 있어서 인터랙션의 역할을 '인식적 행동' 관점에서 풀어내고 있는 점이 인상 깊었습니다.

디자인이란

지금까지의 이야기를 디자인에 대한 기존 관점들과 어떻게 잘 연결해볼 수 있을까요?

첫번째로 떠오르는 사람은 래리 테슬러 Larry Tesler입니다. 그는 "복사-붙여넣기" 개념을 최초로 고안한 인물로 유명합니다. 테슬러는 1984년에 복잡성 보존의 법칙 the law of conservation of complexity이라는 개념을 제안했습니다. 모든 시스템에는 더이상 제거할 수 없는 최소한의 복잡성이 존재한다는 주장입니다. 그렇다면 디자이너의 중요한 역할 중 하나는 복잡성을 최적의 위치에 분배하는 일이라고도 할 수 있습니다.

모든 애플리케이션에는 더이상 제거할 수 없는 내제된 복잡성이 존재합니다. 누가 이 복잡성을 다루게 할 것인지가 유일한 문제입니다.  사용자인가요, 애플리케이션 개발자인가요, 플랫폼 개발자인가요?

마침 pxd의 이재용님도 과거에 유사한 트윗을 남긴 적이 있습니다.

UI의 모든 문제는 단 하나의 근본 문제로 귀결된다. 제한된 자원의 배분 문제이다. 스마트폰의 스크린, 사용자의 주의력과 시간 등 시간,공간,능력이른 제한된 자원을 누구를 위하여 어떻게 배분할건가하는 문제다.

두번째로 떠오르는 사람은 켄트 벡 Kent Beck입니다. 소프트웨어 공학자이자 애자일 방법론의 창시자 중 한 명입니다. 그는 퍼머컬처로부터 많은 영감을 받았다고 합니다. 퍼머컬처 permaculture란 영속적인 permanent이라는 단어와 농업 agriculture이라는 단어를 합친 말로 "지속가능한 농법"을 이릅니다. 퍼머컬처에서는 시스템을 이루는 주요 요소들 다양한 방식으로 최대한 연결시키는 것을 중요하게 여깁니다. 예를 들어 오리 농법에서 오리의 역할은 1) 잡초방제, 2) 해충방제, 3) 양분 공급, 4) 써레질, 중경탁수, 5) 벼 자극, 6) 왕우렁이 방제와 같이 다양하다고 합니다. (저는 써레질이 뭔지, 중경탁수가 뭔지, 왕우렁이가 뭔지 잘 모릅니다)

켄트 벡은 2009년 경에 퍼머컬처를 인용하며 이런 말을 했습니다.

"디자인은 서로 이롭도록 연결된 요소들이다" 또는 "디자인이란 요소들을 서로 이롭게 연결하는 일이다"
Design is beneficially relating elements.

이 문장은 두 가지 뜻을 지닙니다. 첫째, "relating"을 "elements"에 대한 형용사로 볼 경우 "디자인은 서로 이롭도록 연결된 요소들이다"라는 뜻이 되고 이는 곧 디자인의 결과물을 뜻합니다. 디자인의 결과물은 다양한 요소들(elements), 이들 사이의 관계들(relationships), 그리고 이로 인해 발생하는 이로움들(benefits)로 구성됩니다. 둘째, "relating"을 동사로 볼 경우 "디자인은 요소들을 서로 이롭도록 연결하는 것이다"라는 뜻이 되고 이는 곧 디자인의 과정을 뜻합니다. 디자이너는 요소들(elements)을 새로 도입하거나 제거하거나 조정합다. 또 요소들 사이에 새로운 관계들(relationships)을 만들거나 끊거나 조정합니다. 이 과정을 통해 이로움들(benefits)을 향상시키게 됩니다.

지금까지 열거한 생각의 조각들(체화된 인지, 복잡성 보존의 법칙, 퍼머컬처)을 이런 식으로 합쳐보면 어떨까요?

모든 시스템에는 더 이상 제거할 수 없는 내제된 복잡성이 존재한다. 이를 해당 시스템에 관여하는 여러 엔티티(네트워크를 이룬 컴퓨터들과 네트워크를 이룬 인간들)의 제한된 요소(메모리, CPU, 기억, 인지, 어텐션, 몸, 환경, 각 엔티티 간 정보전달채널의 지연, 대역폭, 정확성 등)에 가장 효율적으로 분배하고, 각 요소들을 서로 이롭게 연결하는 일이 디자인이다. 이 때 디자이너는 각 요소의 물리적 속성보다는 요소가 전체 시스템 내에서 실제로 수행하는 기능 또는 역할이 무엇인지를 기준으로 생각해야 한다.

디자인을 이렇게 바라보면 유익한 점이 있을까요? 저는 그렇다고 생각합니다. 일례로 인공지능에 대해 생각을 해보았습니다.

 

인공지능 시대의 디자인

서비스나 제품에 AI를 활용하는 사례가 늘고 있습니다. 디자인 분야에서도 관련 논의가 활발하게 진행되고 있습니다. 이런 종류의 서비스나 애플리케이션을 디자인하려면 무엇을 어떻게 공부하면 좋을지 막연한 불안감도 있습니다.

하지만 위 관점에서 생각해보면 디자이너의 역할을 조금 더 명확하게 고민해볼 수 있게 되는 것 같습니다.

  • '인공지능'이라는 불리는 새로운 기술들을 어떤 범주들로 세분화할 수 있는지 있는지 파악해야 합니다.
  • 각각 세분화된 범주에 속하는 인공지능 기술이 기존의 무엇을 대체하거나 보강하거나 변경하는지 파악해야 합니다.
  • 인공지능이 인간에 비해 더 잘하는 일은 무엇인지, 여전히 인간이 더 잘하는 일은 무엇인지, 인간이 더 잘하는 일이 아님에도 불구하고 인간이 해야만 이로운 일은 무엇인지를 고민해야 합니다.
  • 이에 따라 시스템에 내제된 복잡성을 어떻게 재분배할지, 각각의 요소들이 수행하던 기능적 역할을 어떻게 바꿀지, 새로운 기술을 기존의 요소들과 어떻게 연결해야 서로 이롭게 연결하는 것인지 고민해야 합니다.

앞으로 당분간은 인공지능이 시스템 전체를 통으로 대체하기보다는 시스템의 일부 기능을 증강하는 형태로 쓰이는 분야가 더 많을 것입니다. 따라서 인간-인간사회-인공지능 사이의 조화를 잘 디자인하기 위한 방법들이 중요해질테고요.

제 생각엔 XAI(Explainable AI; 설명가능한 인공지능) 관련 주제들, 인공지능의 공정성 문제, 인공지능과 윤리 등의 주제들이 중요한 출발점인 것 같습니다. "인터페이스 디자인의 여덟가지 황금률"로 유명한 벤 슈나이더만 Ben Shneiderman은 70세가 넘은 고령의 나이에도 불구하고 벌써 이런 주제들을 반영하여 인공지능 시대에 맞는 디자인 가이드라인을 제시하는 등 연구를 계속하고 있습니다. 본받고 싶은 모습입니다.

우리도 모두 부지런히 공부하고, 적용하고, 피드백을 받으며, 세상을 더 이롭게 연결하는 일에 기여하면 좋겠습니다.

마우스 커서에서 시작해서 인공지능으로 끝나는 이상한 글을 읽어주셔서 감사합니다.