‘고정관념 버려라’ 터치 앱 개발 UX 가이드

InfoWorld
iOS, 안드로이드, 그리고 윈도우 8에서는 사용자 경험과 UI가 가장 풀기 어려운 숙제라고 해도 과언이 아니다.

점점 더 많은 사용자들이 아이패드, 아이폰, 안드로이드, 블랙베리, 그리고 향후 출시될 윈도우 8 PC와 태블릿 등 터치 기반 스마트폰과 태블릿을 선호하고 있다. 터치 분야의 전문가들에 따르면 개발자들의 입장에서 볼 때, 터치 기반 시스템은 새로운 문맥과 인터페이스 디자인 파악 등 완전히 새로운 가이드라인을 이해해야 한다는 것을 의미한다.

그리고 이러한 터치 인터페이스는 이제 더 이상 소비자용 애플리케이션에 머물러 있지 않다. 이전 어도비 플래시 에반젤리스트이자 모바일 기기와 키오스크 개발업체 데도(Dedo)의 제품개발 부문 부회장 대니얼 듀라는 기업들은 데이터를 검토하고 자원을 관리하기 위한 내부 애플리케이션 등 터치 애플리케이션을 필요로 하기 시작했다고 평가했다.

제스처의 뉘앙스
즉 상용 앱 개발자건, 단순히 내부 엔터프라이즈 시스템을 새로운 디지털 기기로 이동하고자 하는 기업 소속 개발자건 제스처의 뉘앙스를 익혀야만 한다. 듀라는 “가장 먼저 해야 할 것은 제품을 사용하게 될 사용자를 이해하는 것”이라며 “개발자들은 사용자들이 제스처의 측면에서 기대하는 것의 복잡성을 잘 이해하고 있지 못하다”라고 지적했다.

그에 따르면 맥락에 따라 핀치(pinch, 화면의 확대 혹은 축소를 위해 두 손가락을 한 방향으로 조이기 또는 반대 방향으로 벌리기) 또는 제스처는 자연스럽지 않을 수 있다. 그는 “가장 좋은 것은 상호작용을 시험하는 것이다”라고 말했다.

듀라는 이와 관련, 트윗을 터치해 내용을 열어 볼 수 있는 커다란 터치 벽이 있는 트위터 앱 개발 작업을 회상했다. 당초 개발자들은 그러한 메시지를 여는 방법에 대해 몇 가지 가정을 했고 사용자들이 메시지를 열기 위해 화면을 두 번 두드리도록 애플리케이션을 개발했다.

그러나 시험 단계에서 사용자들은 트윗을 열기 위해 메시지를 클릭한 후 줌인하기 위해 핀치하려고 시도하곤 했다. 듀라는 “결국 우리는 처음으로 돌아가 사용자들이 기대한 바 대로 동작하도록 바꾸어야만 했다”고 말했다.

터치 인터페이스 애플리케이션 개발 시, 개발자들은 즉시성과 어떤 사람이 왜 터치 기기를 이용하는 지를 명심해야 한다고 어도비 시스템즈의 모바일과 디지털 이미징 부문 수석 제품 책임자 존 낵은 말했다.

그는 즐겁고 사용하기 쉬운 애플리케이션을 개발해야 한다고 충고하며 “무엇인가를 하기 위해 매우 많은 단계를 거쳐야 하는 절차적인 작업이라면, 사람들은 데스크톱을 이용할 것”이라고 말했다.

한편 듀라는 사용자 경험과 관련된 문제들이 까다롭게 느껴질 수 있겠지만, 터치를 구현하는 API는 꽤나 직관적이라고 지적했다.

터치 앱을 개발함에 있어 한 가지 중요한 실마리는 기기의 플랫폼이다. HTML5 앱과 같이 모바일  앱을 개발하는 개발자들은 기기가 달라도 모두 동일한 제스처를 사용해야 한다고 생각하기 쉽다.

듀라는 “개발자들은 특정 제스처들이 다른 기기에서도 동일하게 동작할 것이라고 가정한다. 그러나 그렇지 않다”고 지적했다. 이를테면 애플은 한 애플리케이션에서 다른 애플리케이션으로 이동하기 위해 네 손가락을 이용한 쓸어넘기기 등 복잡한 멀티터치 제스처를 추가한 바 있다. 듀라는 이에 대해 “아마도 그러한 동작은 안드로이드에서 수행되지 않을 것”이라고 경고했다.

터치 제어는 마우스 제어보다 반응성이 더 크고 많다는 점도 감안해야 한다. 소프트웨어 개발사 인터날리지(Interknowlogy)와 소프트웨어 업체 액터스 언터랙티브 소프트웨어(Actus Interactive Software)의 회장 팀 허커비는 기기상에서 동작할 때 손가락은 마우스만큼의 엄밀하지 않고 모든 소프트웨어가 터치에 잘 반응하는 것은 아니라며, 예를 들어 데이터 입력 애플리케이션은 “터치용으로 적합하지 않다”고 말했다.  

넥스트 버전 시스템즈(Next Version Systems)의 파트너인 개발자 빌리 홀리스는 그의 말에 동의하며 좀더 덧붙였다. 사용자들이 사용하는 컨트롤은 마우스 기반 인터페이스에 필요한 크기보다 일반적으로 두 배 더 커야 하고 항목들을 너무 가깝게 위치시키지 말아야 한다는 것이다. 실제로 애플은 iOS에 대한 사이즈 가이드라인을 제공하고 있고 이와 유사하게 마이크로소프트도 윈도우 8 개발자들을 위한 사이즈 공식을 제공하고 있다.

홀리스는 기능이 너무 가깝고 작은 경우 “잘못된 것을 선택하는 오류율이 매우 급격하게 증가한다”라며 “그것은 사용자들을 매우 짜증나게 할 것”이라고 지적했다.

하드웨어 사용에 주의하라
개발자들은 하드웨어 자원에 유의해야 한다. 홀리스는 제스처와 터치 추적으로 인해 화면에 부하가 유발되는 등 “하드웨어에 부하를 주어서는 안 된다”고 말했다. 그리고 그는 “그것을 인내할 사람은 거의 없다”고 지적했다.

그는 또 개발자들은 사용자 인터페이스 쓰레드가 데이터 패치 혹은 백그라운드 프로세스와 동시에 수행되지 않도록 비동기 실행을 사용해야 하며, 기기의 프로세스에 너무 많은 부담을 주어서는 안된다고 조언했다.

개발자들이 사용할 수 있는 터치 툴
프로그램 작성 시 제스처를 손쉽게 적용할 수 있도록 해주는 소프트웨어 개발 라이브러리인 어도비 플래시 제스처웍(GestureWorks) 등 터치 애플리케이션 개발을 위한 툴들이 있다. 듀라는 그러나 아직까지 “터치에 대해 성경과 같은 수준의 도구는 없다”고 말했다.

허커비는 마이크로소프트가 닷넷(.Net)에서 시스템 수준의 터치 지원을 제공하는 점을 언급하며, 개발자 툴 그리고 생산성과 관련해서 “마이크로소프트는 다른 업체에 비해 월등히 앞서고 있다”고 말했다. 마이크로소프트는 또 터치용 서피스(Surface) SDK 기술을 확보하고 있기도 하다. 그러나 이 기술은 스마트폰, 태블릿, 그리고 컴퓨터가 아닌 데스크톱 화면 크기의 디스플레이를 위한 것이다. 허커비는 향후 출시 될 윈도우 8 OS에서는 12가지의 멀티터치 제스처가 네이티브로 정의될 것이라고 예상했다.  

한편 HTML 5 규격도 터치와 멀티터치 기능을 담고 있다. 제이쿼리 모바일 웹(jQuery Mobile Web) 프레임워크는 API를 통해 자바스크립트를 사용하는 웹 사이트에서 터치 이벤트를 지원한다.

그리고 터치를 광범위하게 적용한 최초의 업체인 애플도 물론 iOS와 맥(Mac) OS X의 엑스코드(Xcode) 프로그래밍 환경에서 이용할 수 있는 강력한 터치 API를 제공하고 있다. ciokr@idg.co.kr