프로젝트 후기: 인간-컴퓨터 상호작용(HCI)

6월 28일, 2018

본 글은 한양대학교 컴퓨터공학부의 4학년 1학기 수업인 인간컴퓨터상호작용 (ITE3062) 의 프로젝트를 진행한 내용을 담고 있습니다. 학부 수준에서 HCI 분야가 어떻게 연구되는지를 개략적으로 알아보는 중심의 수업이기에 실제 대학원에서 연구되는 수준과는 차이가 있을 수 있습니다.

개론: 인간-컴퓨터 상호작용

인간-컴퓨터 상호작용(Human-Computer Interaction, HCI)은 제가 예전부터 관심을 많이 갖고 있던 분야입니다. HCI는 좁은 의미로는 사용자와 컴퓨터 사이에 있는 사용자 인터페이스를 중심적으로 연구하는 학문을 의미하는데, 심리학과 같은 인간에 대한 이해와, 소프트웨어에 이어 하드웨어까지 모두 포함한 컴퓨터에 대한 이해도 함께 필요한 학문이라고 할 수 있습니다.

세부적으로는 가상현실(VR), 증강현실(AR), 사물인터넷(IoT), 데이터 시각화, 장애 치료 등 인간과 컴퓨터가 상호작용하는 거의 모든 분야에 걸쳐서 연구될 수 있는데, 어찌 보면 분야가 정말 다양하다고 할 수 있고, 또 어찌 보면 정해진 답을 푸는 학문이라기보다는 문제를 찾아 나가야 하는 분야라고도 볼 수 있을 것 같습니다.

수업은 크게 이론과 2개의 프로젝트로 구성되어 있었는데, 각각의 프로젝트는 “기획-개발-유저스터디”의 3단계로 나뉘어서 진행되었습니다. 이 글에서는 이론보다는 제가 프로젝트를 어떻게 진행했었는지, 또 학부생이 느낀 HCI라는 분야는 어떤지에 대한 내용을 담으려고 합니다.

프로젝트 1: 가상 시뮬레이션 서비스를 통한 학습의 효율성 연구

1. 기획

첫 프로젝트로는 “학습”에 관한 프로젝트를 진행했습니다. 정확히는 가상으로 ICO(Initial Coin Offering)를 진행해보는 서비스를 만들었습니다. 프로젝트를 시작한 계기는 이렇습니다. 최근 저는 블록체인에 관심이 많았는데, 관련 정보가 너무 많았던데 반해 정보들이 체계적으로 정리되지 않아 종합적으로 블록체인과 암호화폐에 대한 생태계를 이해하기가 매우 어려웠습니다.

특히나 이 프로젝트를 진행하던 때는 텔레그램이 ICO를 했던 시기였는데, 이를 기점으로 많은 회사들이 ICO를 하겠다고 하는 기사들이 쏟아져 나오는 상황이었습니다. ICO가 무엇인지, 어떻게 하는지에 대한 수요는 늘어나고 있는데 검색을 통해 정보를 얻기엔 쉽지 않았고, 이에 가상으로 코인을 만들어보고 ICO를 진행하는 서비스를 만들면 더 재미있고 효율적으로 학습을 할 수 있지 않을까 하는 아이디어에 이 프로젝트를 진행하게 되었습니다.

2. 개발

개발은 최대한 빠른 시간 내에 하는 것에 초점을 두었습니다. 개발 시간보다는 어떤 내용을 담아 어떤 순서로 진행해야 사람들이 보다 더 쉽게 ICO에 대해 이해할 수 있을지에 더 비중을 두었고, 그러다 보니 내용 구성이나 디자인에 더 많은 시간을 할애하였습니다.

그렇게 만들어진 것이 BeCoinMaker 이라는 서비스이고, 지금도 들어가셔서 사용 해 보실 수 있습니다.

project1_screenshot

3. 유저 스터디

이 서비스의 목표산업 입장에서 보면 사용자를 모으고 트래픽을 증가시키는 일일 것입니다. 하지만 학계(HCI) 입장에서 조금 다른 목표를 가져야 합니다. 유저 스터디를 통해 증명해야 했던 일은 이 서비스가 기존 방법보다 정말 나은지를 측정하는 일이었습니다. 조금 일반화 하자면, “가상 시뮬레이션(가상 ICO 진행)”이 학습이나 정보 습득에 있어 좋은 방법인지를 증명하는 연구라고 할 수도 있겠죠.

그렇다면 더 나은 방법인지 측정하는 방법에는 무엇이 있을까요? 설문조사도 하나의 방법 일 것입니다. 하지만 “이 서비스가 검색보다 나은가요?”라는 질문은 “좋다”라는 답변을 유도할 수 있기에 좋은 방법이 아닙니다 (실제로 별로 좋지 않음에도 결과는 좋다고 나올 수 있죠). 이에 교수님의 조언을 받고 조금 더 객관적인 방법으로 “퀴즈”를 선택했습니다. 그룹을 둘로 나누어 한 그룹은 검색 자료를 읽게 한 후 퀴즈를 풀게 하고, 다른 그룹은 이 서비스를 사용하게 한 후 같은 퀴즈를 풀게 하여 점수를 비교하는 방법으로 효율성을 측정하는 것이죠.

project1_userstudy

위는 발표 자료 중 일부분입니다. (영어전용 수업이기에 PPT도 영어로 제작한 것이니 양해 부탁드립니다.) 실제 유저 스터디는 앞서 말한 방법에 하나의 경우를 더하여 ‘글을 읽고 퀴즈를 푼 후, 다시 서비스를 써보게 하고 다시 퀴즈를 보는’ 것을 추가했습니다.

project1_quiz

실험에서 가장 중요한 것 중 하나는 퀴즈에 대한 구성이었습니다. 이 서비스가 정말 더 효율적인지를 판별하기 위해서는 객관적인 평가가 진행되어야 했고, 이를 최대한 맞추기 위해 노력했습니다.

퀴즈는 총 3개의 섹션으로 구성했습니다. 첫 번째그룹이 공평하게 잘 나누어졌는지 비교해보는 용도로 ‘비트코인에 대한 투자 경험’, ‘관심도’ 같은 항목을 측정했고, 두 번째는 무엇이 더 학습에 효과적인지를 비교하기 위해 정답이 있는 객관식 질문을 넣었고, 후에 점수를 비교해보자 했습니다. 마지막으로는 정답이 없는, 주관적 견해에 대한 질문도 진행해보았습니다.

project1_quiz2
퀴즈는 Google Forms로 만들었습니다.

4. 유저 스터디 결과

총 15명에게 긁을 읽게 한 후, 혹은 이 서비스를 쓰게 한 뒤 퀴즈를 풀게 하고, 마지막에 그 결과를 비교해보았습니다. 첫 번째 퀴즈 섹션을 통해 그룹은 어느정도 공평하게 잘 나누어진 것을 확인할 수 있었으나, 두 번째 섹션인 객관식 문제에 있어서 이 서비스의 점수가 더 높기는 했지만 기대만큼의 차이는 나오지 않았습니다.

project1_result1

대신 주관적 견해의 경우, 검색 결과 그룹의 경우에는 “잘 모르겠다”, “지켜 볼 것이다” 같은 답변이 많았던 방면, 이 서비스를 통해 가상으로 ICO를 진행해 본 유저들의 경우 “매우 그렇다”, 혹은 “절대 그렇지 않을 것이다” 같이 확고한 답변을 내는 경우가 많았습니다. 특히 “ICO는 매우 위험하기에 투자하지 않을 것이다” 같은 의견도 상당히 많았습니다.

project1_result2

실험의 결과로 “가상 시뮬레이션 서비스”를 통한 학습은 기존 방법보다 약간 효율적이지만, ICO를 진행해보는 듯한 느낌을 주어 경각심이나 의식 측면에서는 더 큰 효과를 발휘한다는 저도 예상치 못한 결과를 도출하기도 했습니다. 원래 객관식 점수가 당연히 더 높게 나오지 않을까 하고 생각했었지만, 실험을 진행한 사용자들이 그렇게 열심히 서비스를 쓰지 않아 의도만큼의 효과는 보지 못했고, 대신 ICO 한 번으로 큰 액수의 돈이 쉽게 모이는 것을 보고 위험성과 경각심을 느끼는 비중은 훨씬 크다는 것을 알아낼 수 있었죠.

프로젝트 2: ‘후원’은 효과적일까

1. 기획

두 번째 프로젝트는 조금 다른 것을 해보고 싶었습니다. 첫 번째 프로젝트가 새롭게 서비스를 만들고 기존 방법보다 우수함을 증명하는 것을 목표로 했다면, 두 번째는 어떤 가정을 세워보고 실제로 그 가정이 맞는지 확인을 해보고 싶었습니다. 마침 두 번째 프로젝트를 진행하고 있을 때, 원래 운영하고 있던 서비스인 Color Scripter에서 후원 캠페인을 진행하고 있었는데, 이것과 연계해서 HCI 프로젝트도 함께 진행해보면 어떨까 하는 생각도 들었습니다.

후원 캠페인의 배경: Color Scripter는 개인 프로젝트로 시작한 개발자를 위한 서비스로, 별도의 수익 모델이나 광고 없이 제가 비용을 부담하여 운영되고 있었습니다. 서버비, 도메인 등의 부담이 커져 사용자분들께 소액의 후원을 받아 운영에 보태보고자 별도의 페이지를 만들고 후원 캠페인을 진행했는데, 꽤 많은 분들께서 후원에 동참해 주셨습니다.

원래 후원 캠페인을 시작하면 후원자분들께 감사의 의미로 몇 가지 혜택을 제공해드린다고 해두었는데, 그러다 문득 후원을 받는 것이 효율적인지, 아니면 기존에 제공하던 혜택을 유료 기능으로 바꿔서 프리미엄 모델을 판매하는 것이 효과적인지 궁금증이 들었습니다. 개인적인 궁금증을 해소함과 동시에 ‘후원’에 대한 효율성을 측정하고자 하는 의의를 두고, 두 번째 프로젝트는 아래와 같은 주제로 정하게 되었습니다.

무료 서비스에 유료 기능을 도입할 때, 무엇이 더 효과적인가?

  1. 후원을 진행하고 감사의 의미로 그 기능을 제공하는 것
  2. 유료 기능이 포함된 프리미엄 구독 모델을 판매하는 것

2. 개발

이를 비교하기 위한 방법으로는 A/B 테스트을 사용했습니다. 실제 서비스에서 IP 주소를 기반으로 두 개의 그룹으로 나눠 한 그룹은 프리미엄 페이지로 이동시키고, 다른 한 그룹은 후원 페이지로 이동시키는 방법을 통해 그룹을 나누었습니다.

project2_compare

실제 두 그룹은 실제로는 같은 기능을 제공하며 “텍스트와 디자인”에만 차이를 두었습니다. 프리미엄은 조금 더 고급스러운 이미지로 만들었고, 후원은 “부탁”의 의미를 강하게 두었죠. 그리고는 유저의 액션에 대해 로그를 수집했습니다. 어떤 방법이 더 효율적인지는 전환율 등을 통해 비교해보려 했습니다.

project2_compare2

3. 유저 스터디

총 3주간 캠페인을 진행하고, 아래의 데이터를 수집했습니다.

  1. 얼마나 많은 사람들이 후원/송금했는지
  2. 얼마나 많은 금액을 후원/송금했는지
  3. 메인에 팝업을 띄웠을 때, 클릭을 얼마나 했는지
  4. 결제하기(후원하기) 버튼을 얼마나 많이 눌렀는지

이후 로그를 분석해보니 "후원 그룹"의 수치가 더 높게 나왔습니다. 전체적인 페이지뷰는 프리미엄 쪽이 더 많았지만 전체 유저 대비 관심도를 살펴 보았을 때 후원 쪽이 더 높게 나왔죠.

project2_result

흥미로웠던 점은 결과가 “후원이 더 효율적이다”로 나온 것 이외에, 후원(송금)까지의 단계가 진행될수록 그 전환율이 더 높아졌다는 것입니다. 서비스 홈에서 팝업을 눌러 캠페인 홈으로 가는 비율은 후원 그룹이 13% 밖에 더 높지 않았지만, 결제 안내 페이지에서 실제 송금까지 이뤄진 비율은 64%까지 차이가 났습니다.

project2_result2
서비스 홈에서 캠페인 페이지로 가는 팝업 버튼을 누른 비율의 비교

이런 데이터를 통해 한 번 후원을 결심한 사람은 마지막 단계에 도달할 확률이 더 높음을 알 수 있었습니다. 송금(후원)에 대한 동기가 더 강했기에 이런 데이터를 보인다고 할 수도 있을 것 같네요. 이 프로젝트도 결과를 보면서 꽤 의미 있는 결과를 도출할 수 있는 경험이 되었습니다.

project2_result3
전체적인 단계별 전환율 비교


(연구 때문에 후원을 테스트해본 것은 아닙니다. 정말로 후원이 필요한 상황이었고, 연구를 함께 진행한다면 또 다른 값진 경험을 해볼 수 있는 기회였기에 시도해 본 것입니다. 실제로 모금된 금액은 개발운영비 등 후원의 목적에 맞게 쓸 예정입니다.)


결론

잘한 점과 아쉬웠던 점

유저 스터디를 진행하기 전에 최대한 다양한 데이터를 모으고, 단순히 A가 좋은지 B가 좋은지를 비교하는 것을 넘어, 왜 A가 더 좋은지, 또 좋다면 어떤 점 때문일지를 최대한 유추해 보려 했습니다. 그 결과 첫 번째 프로젝트에서는 객관식 질문과 주관식 설문을 모두 받고 비교해보면서 “가상 시뮬레이션 서비스를 이용하면 검색 수행보다 더 경각심을 줄 수 있다”라는 결과를 도출해 낼 수 있었고, 두 번째 프로젝트에서는 페이지마다 로그를 구분해서 받았기에 “후원은 프리미엄 결제보다 더 충성심이 높고 결과에 도출할 가능성이 크다”라는 결과를 도출해 낼 수 있었습니다.

project2_reasoning

또한 첫 번째 프로젝트의 경우에는 최대한 객관적인 결과를 도출하고자 같은 조건에서 실험을 하기 위해 노력을 들였는데, 두 그룹이 각각 기존 방법과 신규 서비스를 사용하는 시간을 동일하게 주고, 설문을 통해 배경지식 등이 얼마나 차이가 나는지 확인하는 등의 작업도 진행했었습니다.

project1_groups

실제로 데이터에서 또 다른 의미를 찾아냈던 것실험의 정확도를 높이기 위한 시도들에 대해 좋은 평가를 받았고, 잘했던 부분이라 생각하고 있습니다.

다만 학부 수준에서 진행되었고, 또 프로젝트마다 기간이 짧은 편이었기에 전체 모수가 너무 적었다는 문제가 있었습니다. 첫 번째 프로젝트에서는 15명 밖에 실험을 진행하지 못하였고, 두 번째 프로젝트에서는 기간 동안 총 11명의 유저만 후원을 해주셨습니다. 또한 두 프로젝트 모두 객관적인 수치보다는 데이터에 대한 의미 부여 정도가 결과의 전부였기에 한계가 있기도 합니다.

느낀점

일반적인 컴퓨터공학의 학부 수업은 교수가 목표(과제)를 내주고, 그 목표를 달성하는 방식으로 지식을 쌓게 되는데, 이와 달리 이 과목은 스스로가 목표를 만들고 이를 실험하고 증명한다는 점에서 특별했다고 봅니다. 어떤 문제를 풀어 나갈지(주제 정하기)가 상당히 어려웠지만, 열심히 했던 만큼 재미있는 결과가 많이 나오고 또 느낀 것이 많아 꽤 만족스러웠던 것 같습니다.