1. UI(User Interface)
사용자 인터페이스(UI: User Interface)는 사람과 사물 또는 시스템, 특히 기계, 컴퓨터 프로그램 등 사이에서 의사소통을 할 수 있도록 일시적 또는 영구적인 접근을 목적으로 만들어진 물리적, 가상적 매개체를 뜻합니다. 즉, UI는 사람들이 컴퓨터와 상호작용하는 시스템입니다.
UI는 쉽게 말해서 사용자가 컴퓨터 프로그램 또는 모바일 앱을 사용할 때 마주하는 디자인, 레이아웃 등 직접 눈으로 보이는 것을 뜻하기도 합니다. 이 안에는 폰트, 색, 이미지 등의 디자인적 요소와 사용자의 입력에 의해서 발생하는 동작 등의 모든 것들을 포함하고 있습니다. 한마디로 우리가 사물 또는 기계와 의사소통하는 주요 수단입니다.
UI는 물리적인 하드웨어와 논리적인 소프트웨어 요소를 포함하고 있는데요. UI는 크게 세 가지 수단(입력, 출력, 삭제)으로 이루어져 있습니다.
- 입력 : 사용자가 시스템을 조작할 수 있도록 합니다.(키보드 입력, 마우스 클릭, 스마트폰 터치 등)
- 출력 : 시스템이 사용자의 입력으로 부터의 결과물을 표시합니다.(모니터, 스피커, 스마트폰 화면 등의 표시)
- 삭제 : 시스템이 사용자가 잘못 입력한 것들을 삭제합니다.
이러한 UI를 판단하는 기준에는 사용성이 있습니다. 좋은 UI는 심리학과 생리학에 기반하여, 사용자가 필요한 요소를 쉽게 찾고 사용하며, 그 요소로부터 명확하게 의도한 결과를 쉽게 얻어낼 수 있어야 합니다. 이를 사용성이라 하며, 사용성이 높으면 높을수록 좋은 UI라고 판단할 수 있겠습니다.
2. UX(User Experience)
사용자 경험(UX: UserExperience)은 사용자가 어떤 시스템, 제품, 서비스를 직·간접적으로 이용하면서 느끼고 생각하게 되는 총체적인 경험을 말합니다. 단순히 기능이나 절차상의 만족뿐만 아니라 전반적인 지각 가능한 모든 면에서 사용자가 참여, 사용, 관찰하고 상호 교감을 통해 알 수 있는 가치 있는 경험입니다.
긍정적인 UX는 산업 디자인, 소프트웨어 공학, 마케팅, 경영학 등의 여러 기업 또는 학문에서 중요하게 다루고 있는 과제이며 이는 사용자 니즈의 만족, 브랜드의 충성도 향상 등 시장에서의 성공을 가져다 줄 수 있는 주요 사항입니다.
부정적인 UX는 사용자가 원하는 목적을 이루지 못할 때나 목적을 이루더라도 감정적, 이성적, 경제적으로 편리하지 못하거나 부정적인 반응을 일으키는 경험을 하게 되는 경우 발생할 수 있습니다.
긍정적인 UX를 개발하고 만들어내기 위해서는 학술적, 실무적 경험을 바탕으로 만들어야 하는데 이를 사용자 경험 디자인(UX design)이라 합니다. UX 디자인은 영역에 따라 제품 디자인, 상호작용 디자인, UI 디자인, 정보 구조, 사용성 등의 분야에서 주로 연구 및 개발되고 있으나, 다학제적이며 다양한 분야의 시각에서 접근해 나가야 하는 핵심적인 원리를 바탕으로 해야 합니다.
이러한 UX는 다소 체계적이고 정형화된 룰을 구축하고 있는 UI와는 다르게 사용자 기반의 통계자료 또는 데이터를 기반으로 사용자의 특성을 면밀히 분석하여 변화의 흐름을 알맞게 적응하는 것에 목적을 두고 있습니다. 또한, UI는 컴퓨터가 등장한 시기인 1945~1968년도에 등장하여 꾸준히 연구된 반면에 UX는 1974년 에드워드(E.C. Edwards)와 카시크(D.J. Kasik)의 사이버 그래픽 터미널에서의 사용자 경험이라는 글에서 처음 언급되었으며, 1980년대에 드러서야 수많은 연구가 이루어졌습니다.
3. UI vs UX
그렇다면, 도대체 UI와 UX 중 무엇이 더 중요한 거야?라고
질문을 던질 수 있습니다. 하지만 이 둘은 뗄래야 뗄 수 없는 사이입니다. UI가 존재해야 UX가 존재하며, UX가 발전해야 UI를 잘 만들 수 있기 때문입니다.
간단히 예를 들어 친구에게 선물을 주려고 할 때, 물건을 담을 포장 박스의 크기, 색상, 끈 등을 어떤 걸 사용하여 배치할지 고민하는 것이 UI, 선물을 받은 친구가 포장박스를 뜯고, 물건을 사용하는 모든 과정의 만족감을 고려하는 것이 UX라 볼 수 있습니다.
정리하자면, UI는 사용자와 프로그램 사이에서 레이아웃과 구조, 색상, 모양 등의 시각적인 것에 대한 배치를 고려하는 것이라면 UX는 이러한 프로그램에는 무엇을 도출해낼지 전반적으로 구상하고 정보를 수집하여 설계하는 것입니다.
'Computer Engineering > 컴퓨터 과학(CS: Computer Science)' 카테고리의 다른 글
[CS] 객체지향 프로그래밍이란? (0) | 2022.09.05 |
---|---|
[CS] 의사코드의 개념과 작성법 (슈도코드, Pseudo-code) (0) | 2022.09.01 |
[CS] 프로그래밍의 이해 (0) | 2022.08.23 |
[CS] 컴퓨터의 구성 요소와 동작 (0) | 2022.08.23 |
API란 무엇인가? (about API) (0) | 2021.04.08 |