Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

ideapla.net

UI개발을 무시하지 마세요. 본문

blo9.com

UI개발을 무시하지 마세요.

양주일 2007. 5. 24. 11:10
Flex에 대한 단상이란 글을 보고 여러가지 생각이 들었다. 일면 정확한 지적도 있다. 하지만 그 배경에 묻어있는 개발분야에서의 잘못된 인식에 대해 개인적으로 불만이 가득하다.



경험디자인의 요소란 책을 보면 다음과 같은 내용이 처음에 등장한다.
1장 - 사용자의 경험, 왜 중요한가?

흔히 있는 불행한 사건들의 대부분은 사용자 경험을 간과한 것에서 기인한다. '재수없는 사건들' 모두가 제품을 설계할 때 좀더 신경을 쓴다면 피할 수도 있는 일이었다. 이러한 사례들 모두가 사용자 경험(user experience)에 대한, 즉 실제 세계에서 사용자가 제품을 어떻게 사용하고 제품이 어떻게 동작하는가에 대한 주의 부족을 보여주고 있다.

제품을 개발할 때, 사람들은 '그 제품이 무슨 일을 하는가'에 주로 신경을 쓴다. 제품이 어떻게 작동되는가하는 사용자 경험에 대한 생각은 성공적인 제품과 실패작의 차이를 결정할 수도 있는 중요한 부분이지만 무시되는 경우가 종종 있다 .

사용자 경험은 제품이 내부적으로 어떻게 작동하는가의 문제가 아니다. 사용자의 경험은 제품이 외부에서, 즉 한사람이 그 제품과 접촉하고, 그것을 가지고 일하는 그곳에서 어떻게 작동하는가의 문제이다.

UI는 그것이 불필요한 화려함이라고 치부할 대상은 아니다. 그 중심에는 사용자에 대한 배려와 경험의 증가에 대한 고민이 묻어있는 결과물이다. 버튼에 마우스를 올려놓았을 때, 버튼의 롤오버 색상이 변한다는 것이 개발자에게는 무가치할 수 있고 번거로운 작업물일 수 있지만 사용자가 느끼는 경험의 단위는 판이할 수도 있다. 실제로 별로 멋지지 않은 인터페이스가 그런식의 반응을 보이면 더욱 역겨울 수도 있는 일이지만...

예쁘다의 중요성

'예쁜 것'은 사람의 본성을 자극하는 기본 요소이다. 예쁜 이성을 찾는 것도, 예쁜 물건을 사는 일도 다 심미적인 충동을 부추기는 경제적 행위와 맞물려있다. 하지만 웹 사이트에서 이런 부분은 너무나 자극적인 치장으로만 구현한 것이 사실이며, UX에 대한 진지한 고민없이 겉치례에만 집중해서 속빈강정으로만 남은 서비스들이 많이 있다.

그러나 개발 영역에서 볼 때, 디자인에 대한 지지를 충분히 해왔다고 할 수 있는지도 더불어 고민해야만 한다. 과연 디자인의 요소 요소가 충분히 그 가치가 있으리라는 '대화'를 시도해 봤는가? 개발자는 디자인 영역을 그냥 '화려하고 쓸데없는 것들'이라고 무시하진 않았는가? 수 많은 디자이너들이 말하는 개발에 대한 불만은 '왜 나의 일이 중요하지 않냐'는 것이다.

바벨탑의 아집

물론 개발자들은 '디자이너가 불필요한 군더더기를 많이 붙인다'거나 '오히려 데이터의 가치를 희석시킨다'라고 말한다. 이런 과정에서 서로의 생각차를 좁힐 수 없을 때 그 문제가 점점 심각해진다. 공통의 언어가 없을 때, 대화는 중지되고 결과는 사용자에게 고통이될 수 밖에 없다. 서로 자신의 오만과 편견을 버리지 않고 고집만 부렸기 때문에 실패한 프로젝트 사례들은 무수히 많다. 같은 목적으로 뭉친 하나의 팀이란 생각을 갖고 공통의 목표를 추구했다면 그런 일이 발생하지 않았을텐데 말이다.

Ux Mismatch 실버라이트 자료 中

UI는 사용자와의 대화

사용자가 생활하는 곳을 실세계라고 한다면, 기저에 깔려있는 보이지 않는 데이터의 세계를 이상계나 환상계 쯤으로 부를 수 있지 않을까?(용어만 차용했다. 굳현님의 견해와는 달리...) 그렇다면 모니터 저 너머의 세상과 현실을 연결시켜주는 통로는 바로 UI가 된다. UI는 바로 개발자가 원하는 다수의 유저가 나의 시스템을 많이 사용하도록 만드는 행위를 유발하는 시발점이다. 개발자의 직접적인 고객은 기획자나 기업 클라이언트겠지만 개발한 시스템을 본질적으로 사용하는 유저는 그들과 직접 관련있는 사람들보다 훨씬 큰 집단이다. 실제 사용자와 면대면 대화를 하는 것이 바로 UI에 해당한다. 그렇기 때문에 사용자는 데이터보다도 BackEnd 개발작업보다도 훨씬 중요한 가치를 갖는다. 당장의 내 코드가 데이터를 어떻게 실어나르고 그것을 처리하는 것도 중요하지만 사용자에게 필요한 부분도 간과할 수는 없다. 실제로 내가 생활할 수 있는 봉급을 주는 사람일테니까...

극단적인 가정

일례로 다음과 같은 가정을 들어보자.
A) 시스템의 보이지 않는 부분은 엉망이다. 그러나 UI가 좋다.

B) 시스템을 아주 잘 구축했다. Perfect! 그러나 UI가 구리다.

어떤게 더 성공할 것이라 생각하는가? 물론 시스템의 BackEnd와 FrontEnd가 모두 우수하다면 더할 나위없다. 하지만 극단적으로 가정해볼 때, B보다는 A의 선호도가 높을 것은 자명한 사실이다. 실제로 우리나라는 제품의 기능면에서 우수성은 오래전에 입증했지만 사용성이나 감성을 자극하는 디자인면에서는 실패를 맛봐왔다. 최근 디자인 경영을 앞세운 회사가 한두 기업에 그치지 않는 것만 봐도 그 중요성을 무시할 수 없다는 점을 인정해야 한다.

UI개발도 전문영역

세상의 모든 일들이 그렇듯, 어떤 분야가 발전을 거듭할 수록 세분화되고 전문화되는 것이 필수다. 그만큼 다루어야 하는 지식의 양이 방대해지니까. UI개발 역시 클라이언트 사이드의 기술 발전과 더불어 전문 영역과 직군에 종사하는 사람들이 생겨나고 있다. 물론 그 전부터 제품에 있어서는 특별한 UI개발 영역이 존재했지만, 대개 플랫폼과 디바이스가 하나이고, 디자인을 기존 개발자들이 적절히 결합시키는 단위의 업무가 많았다. 하지만 웹에서는 사용방법이 여러가지이고, 이에 따라 웹표준과 크로스브라우징을 고려한 UI개발 영역이 세분화되고있다.

세상에 모든걸 다할 수 있는 맥가이버 개발자는 그리 많지 않다. 디자인과 개발은 함께해야 존재가치가 있지만, 영원히 사랑할 수 없는 철도 레일일 수 밖에 없다. 따라서 아직까지 회색지대로 남아있는 UI개발이라는 영역(디자인 관점에서 UI디자인일 수도 있지만)은 이들 두 집단의 간극을 밀접하게 맺어줄 수 있고, 따라서 그들의 영역도 새로운 언어(소통을 위한)를 구비하고 보다 전문적인 지식이 필요한 분야로 성장과 더불어 기존 집단에서 그 가치를 인정해야 한다.

Flash 개발

많은 개발자들이 Flash를 안좋아한다. 불필요하고 거추장스러운 인터페이스라고 생각하며, 디자인 툴에서 출발한 Flash IDE가 개발툴로써 이상한 형태를 갖고 있기 때문이다(개발자들은 Flash IDE의 멀티프레임의 필요성을 익히는데 한참 걸린다).

플래시라는 용어에는 현재 3가지 의미가 들어있는데, 플랫폼으로서의 플래시(Flash Player에서 구동되는), 어도비 제품 군으로서의 플래시(Flash, Flex, Apollo 등), 그리고 오래전부터 존재했던 Flash IDE를 지칭한다. 플래시(이하 Flash IDE)가 원래는 애니메이션 툴이었지만 현재는 멀티미디어 디자인 툴 + Actionscript 언어를 내장한 개발 툴로서의 가치가 공존한다. 요즘들어 플래시 개발분야라는 것이 진정 있을까하는 회의마저 드는데, 그것은 개발 플랫폼으로서의 가치를 너무나 얕게 보는데 있어서의 억울함 때문이다.

개발 분야에 있어서 플래시는 매우 협소한 시장이다. 그만큼 전문가층이 얇고 수요를 공급이 충족시키지 못할만큼 개발자가 없다. 따라서 실제로 개발에 대한 범용적인 이해정도와 개발능력이 부족한 것도 사실이다. 하지만 실제로 기능성이나 사용성에서 후진 플랫폼인 것은 절대 아니다. 모르면서 그렇게 평가 절하하는 것은 자신만의 아집에 싸여 있는 것이며 히키코모리 수준밖엔 안된다.

모르는 것에 대해 무식하다고 비난 할 수만은 없다. 그 시장의 가치나 개발 영역으로서의 새로운 분야로의 인식이 필요하다. 그만큼 해당 시장에 있는 종사자들의 노력도 뒷받침되어야 하지만 기존 시장에서의 기득권 세력들도 손을 내밀어 포용해줄 필요가 있다. 배척하기만 한다면 그 분야는 더욱더 후진을 면치 못할테니까...

전 분야의 지식을 모두 소유할 수 있는 사람은 없다. 한가지 도메인에서의 지식이 있다 해서 다른 분야의 지식이 무가치하며 자신보다 못하다는 인식을 가져서는 안된다. 결국 목표는 매한가지인 것이 아닌가? 동일한 사용자를 기대하고 있다는 점 말이다.

결국 Flex도 Flash다

Flex가 아무리(정확히 말해서는 FDS다) 데이터 통합이나 편리한 유저 환경을 제공한다고 해도 Flash와의 융합 없이는 사용자에게 커스텀 인터페이스를 제공할 수 없다. 물론 Flex에서 컴포넌트를 제작할 수 있지만 기존 시장에서 Flash 개발자의 노하우와 Flash IDE가 가진 생산성을 따라잡기 힘들다. Adobe가 마케팅 수단으로 Flex의 화려함을 일부러 포장한 것이 아니라 시장에서의 기대가 그만큼 융통성 있는 Flash 인터페이스를 요구했기 때문이다. 그리고 유저가 마주하게 되는 것은 결국 Flash SWF 이므로 무엇이 잘났다고 따지는 것은 정말 무의미한 밥그릇 투쟁밖엔 안된다. 그러므로 서로가 필요한 기술이라는 존중과 함께 공존할 수 있는 방안을 간구하는 것이 오히려 각자의 영역을 키우는 상생의 길일 것이다.

토양이 없다면 나무가 자라지 못한다. 나무가 없으면 민둥산일 뿐 숲으로서 가치가 없다. 자연은 공존을 통해 우리에게 더 큰 경험을 제공하는 것이다.