Section3

Unit 2 - [ 사용자 친화 웹 ] UI/UX

Heemok 2023. 6. 13. 13:30

2023-06-13(화)

 

UI( User Interface ) 

사용자 인터페이스 즉, 사람들이 컴퓨터와 상호 작용하는 시스템을 의미합니다.

 

보통 UI라고 하면 떠오르는 화면상의 그래픽뿐만 아니라, 마우스 키보드 등의 물리적인 요소들도 UI시스템이라 

볼 수 있습니다.

 

요즘에는 스마트폰과 컴퓨터뿐만 아니라, 스마트워치, 키오스크 등 화면과의 상호 작용을 통해 사용하는

기기들이 많은데 이처럼 현대 사회에서는 그래픽 UI, 즉 GUI가 굉장히 중요한 역할을 하게 되었습니다.

 

GUI ( Graphical User Interface )

그래픽 사용자 인터페이스 즉, 사용자가 그래픽을 통해 컴퓨터와 정보를 교환하는 작업 환경을 말합니다.

 

GUI는 우리가 보는 운영체제(Window, Mac OS)의 화면, 혹은 애플리케이션 화면등이 있습니다.

프론트엔드 개발자로서 UI는 대부분 GUI를 말합니다.

 

UX ( User Experience )

사용자 경험 즉, 사용자가 어떤 시스템, 제품 , 서비스를 직,간접적으로 이용하면서 느끼곤 생각하는 경험

 

프론트엔드 개발자 입장에서 사용자의 UX경험이란 화면상에 보이는 UI 즉 GUI를 통해서 느끼게 됩니다.

좋은 UX 경험을 가져가기 위해서는 대체적으로 좋은 UI를 만들어야 합니다.

 

UI와 UX의 관계

UX는 UI를 포함합니다. 또한 좋은 UX가 좋은 UI를 의미하거나, 좋은 UI가 항상 좋은 UX를 보장하지는 않습니다.

 

기본 계산기 애플리케이션을 생각해 봅시다. 특별히 보기 싫다거나, 보기 좋은 디자인의 UI는 아닙니다. 오히려 투박하다면 투박한 디자인입니다. 하지만 계산기의 기능을 제대로 제공한다는 점에서 UX는 훌륭합니다. 꼭 좋은 UX가 좋은 UI를 의미하지 않음을 보여줍니다.

 

반대로, 누가 봐도 세련되고 보기 좋은 UI의 계산기가 있다고 생각해 봅시다. 그런데 입력한 숫자가 아닌 다른 숫자가 화면에 뜨거나, 계산 결과값이 제대로 나오지 않는다면 어떨까요? UI가 아무리 보기 좋아도 UX는 좋지 않을 것입니다. 이는 좋은 UI가 좋은 UX를 보장하지 않음을 보여줍니다.

 

하지만, 나쁜 UI는 보통 나쁜 UX를 유발합니다

 


UI 디자인 패턴

프로그래밍 시 자주 반복되어 나타나는 문제점을 해결하고자, 과거의 다른 사람이 해결한 결과물을 재사용하기

좋은 형태로 만든 패턴을 말합니다.

 

쉽게 말하면 자주 사용되는 UI 컴포넌트라고 할 수 있습니다.

재귀로 구현해 보았던 Tree UI도 자주 쓰이는 UI 패턴 중에 하나입니다.

 

자주 쓰이는 UI 디자인 패턴을 익혀두면 UI를 디자인하기가 보다 쉬워지고, 프론트엔드 개발자, 디자이너, PM 과의

의사소통도 원활해져 협업 효율도 높아집니다.

 

다음은 자주 쓰이는 UI 디자인 패턴의 예시같은 경우는 많기 때문에 따로 블로그를 작성하여 보여드리겠습니다.

 

 

그리드 시스템 (Grid System)

질서 있는 구조의 UI를 구성할 수 있게 도와주는 그리드 시스템

 

그리드(grid)는 수직, 수평으로 분할된 격자무늬를 뜻하며, 말 그대로 화면을 격자로 나눈 다음

그 격자에 맞춰 콘텐츠를 배치하는 방법입니다.

 

웹 디자인 분야에서는 화면을 세로로 몇 개의 영역으로 나눌 것인가에 초점을 맞춘

컬럼 그리드 시스템(Column Grid System)을 사용하며, Margin, Column, Gutter라는 세 가지 요소로 구성됩니다.

1. Margin

Margin은 화면 양쪽의 여백을 의미합니다. 너비를 px 같은 절대 단위를 사용해서 고정 값으로 사용해도 되고, vw, % 같은 상대 단위를 사용하여 유동성을 주어도 좋습니다. 페이지를 어떻게 디자인할 것인가에 따라 자유롭게 설정하시면 됩니다.

2. Column

Column은 콘텐츠가 위치하게 될, 세로로 나누어진 영역입니다. 컬럼 개수를 임의로 나눌 수도 있지만,

표준적으로 휴대폰에서 4개, 태블릿에서 8개, PC에서는 12개의 컬럼으로 나눕니다.

 

각 디바이스의 화면 크기는 보통 아래 이미지와 같습니다. 이미지 속 화면 크기의 구분선을 break point라고 합니다.

내가 만들고자 하는 UI가 어디에 속하는지 파악하고 컬럼 개수를 정하면 됩니다.

Column은 상대 단위를 사용하여 콘텐츠가 창 크기에 맞춰서 크기가 변하도록 설정하는 것이 좋습니다. 기기마다 화면의 크기가 조금씩 다르고, 브라우저의 크기를 사용자 마음대로 바꿀 수도 있기 때문입니다.

3. Gutter

Gutter는 Column 사이의 공간으로, 콘텐츠를 구분하는데 도움을 줍니다. Gutter의 간격이 좁을수록 콘텐츠들이 연관성 있어 보이고, 넓을수록 각 콘텐츠가 독립적인 느낌을 줍니다.

 

다만 너무 좁거나, 너무 넓게 설정하지 않도록 주의해야 합니다.

너무 좁으면 콘텐츠를 구분하기 힘들어지고 답답한 느낌을 줍니다. 그렇다고 너무 넓으면 콘텐츠가 따로 노는 느낌을 주면서 UI가 어수선해집니다. Gutter는 아무리 넓어도 컬럼 너비보다는 작게 설정하세요.

 


좋은 UX를 만드는 요소

1. 유용성(Useful) : 사용 가능한가?

유용성은 제품이나 서비스가 목적에 맞는, 사용 가능한 기능을 제공하고 있는가에 관한 요소입니다. 계산기라면 계산을 틀리지 않고 맞는 결과값이 나오는지, 계산기 본연에 목적에 맞는 기능을 하는지가 중요하겠죠. 여기에 꼭 목적에 맞지 않더라도, 비실용적이라도 추가적인 기능을 제공하는지도 관련이 있습니다. 계산기의 디자인은 계산기의 기능 자체에는 영향을 주지 않지만, 심미적 기능을 제공한다고 판단합니다.

 

2. 사용성(Usable) : 사용하기 쉬운가?

사용성은 제품이 본연의 기능을 제공하는 것을 넘어서 사용하기 쉬운가에 관한 요소입니다. 기능이 아무리 잘 작동하더라도 사용자가 사용하기 어렵다면 좋은 UX를 제공하기 어렵습니다. 가능한 단순하면서 직관적이고 사용하기 쉬운 제품이나 서비스를 만들어야 합니다. 이 요소는 UI 디자인 패턴과도 연관이 깊습니다. 자주 쓰이는 패턴들은 사용자들에게도 친숙할 가능성이 높아 사용성을 높여줍니다.

 

3. 매력성(Desirable) : 매력적인가?

매력성은 말 그대로 제품이 사용자들에게 매력적인가에 대한 요소입니다. 단순히 디자인이 보기에 좋은 지부터 시작해서, 이미지, 브랜딩 등의 여러 요소들이 사용자에게 긍정적인 감정을 불러일으킬 수 있는지, 사용자들이 해당 제품이나 서비스를 이용하고 싶어 하는지가 중요합니다. 애플이 제품의 디자인 요소에 공을 들이고 감성 마케팅 전략을 사용한 것이 이 요소와 연관이 깊습니다.

 

4. 신뢰성(Credible) : 신뢰할 수 있는가?

신뢰성은 사용자가 제품이나 서비스를 믿고 사용할 수 있는가에 관한 요소입니다. 결함이 있는 제품을 정상 제품인 것처럼 속여서 판매하거나, 실제 제품이나 서비스를 통해 얻을 수 있는 가치를 과장하여 홍보한다거나, 사용자의 개인 정보를 유출하는 등 사용자의 신뢰성을 떨어뜨리는 일이 없어야 합니다. 장기적으로는 믿을 수 있는 브랜드 이미지를 구축하는 것이 좋습니다.

 

5. 접근성(Accessible) : 접근하기 쉬운가?

접근성은 나이, 성별, 장애 여부를 떠나서 누구든지 제품이나 서비스에 접근할 수 있는가에 관한 요소입니다. 시력이 좋지 않은 고 연령대 사용자들을 위한 글자 키우기나 돋보기 기능, 혹은 시각 장애인을 위한 음성 안내 기능 등 누구라도 비슷한 수준의 정보를 얻을 수 있도록 장치를 구비해 놓는 노력 등이 접근성을 높여줍니다. 접근성을 갖추는 방법은 Unit5에서 웹 접근성을 학습하며 더 자세히 알아볼 예정입니다.

 

6. 검색 가능성(Findable) : 찾기 쉬운가?

검색 가능성은 사용자가 원하는 기능이나 정보를 쉽게 찾을 수 있는가에 관한 요소입니다. 웹 사이트의 경우 사용자가 특정 페이지에 접근하려고 할 때 찾기 힘들다면 좋은 UX를 주기 어렵습니다. 내비게이션 바, 정보 검색 기능을 넣거나 콘텐츠를 직관적으로 배치하는 것이 검색 가능성을 높이는 데 도움이 됩니다. 유튜브가 콘텐츠의 검색 가능성을 잘 고려한 웹 사이트 예시 중의 하나입니다.

 

7. 가치성(Valuable) : 가치를 제공하는가?

가치성은 위에서 언급된 모든 요소들을 총합하여 고객에게 가치를 제공하고 있는가에 관한 요소입니다. 사용자마다 가치판단 기준과 그 정도는 다 다릅니다. 특정 제품이 접근성에 모든 노력을 기울였다고 해도, 사용자가 접근성을 전혀 중요하게 생각하지 않는다면 가치를 제공하지 못할 수도 있는 것이죠. 따라서 가능한 모든 요소를 고르게 고려하는 것이 좋고, 제품 사용자들이 공통적으로 중요하게 생각하는 요소를 찾아냈다면 그 요소에 집중하는 것도 UX를 효율적으로 개선하는 전략이 될 수 있습니다.

 

User Flow

사용자 흐름(user flow)은 사용자가 제품에 진입한 시점을 시작으로 취할 수 있는 모든 행동을 뜻하며, 보통 아래 이미지처럼 다이어그램을 그려서 정리합니다.

 

User Flow 다이어그램 작성법

사용자 흐름을 다이어그램으로 작성할 때, 기본적으로 세 가지 요소를 사용합니다.

  1. 직사각형 : 사용자가 보게 될 화면 ( ex. 회원 가입 페이지, 로그인 페이지 … )
  2. 다이아몬드 : 사용자가 취하게 될 행동 ( ex. 로그인, 버튼 클릭, 업로드 … )
  3. 화살표 : 직사각형(화면)과 다이아몬드(행동)를 연결시켜 주는 화살표

이 외의 요소를 필요에 따라 추가하여 사용해도 좋지만, 이 세 가지 요소는 거의 필수적으로 사용하게 됩니다. 이 요소들을 활용하여 사용자가 보게 될 화면과 취할 수 있는 행동을 최대한 꼼꼼하게, 빠짐없이 작성하면 됩니다.

'Section3' 카테고리의 다른 글

Unit5 - [사용자 친화 웹] 웹 표준 & 접근성  (0) 2023.06.26
Unit-4 Redux  (0) 2023.06.22
[React] 상태관리 - 1  (0) 2023.06.21
Unit 3 - [React] Custom Component  (1) 2023.06.16
Unit 1 - [자료구조 / 알고리즘 ] 재귀  (0) 2023.06.09