본 포스팅은 Human Interface Guidelines(H.I.G)의 내용을 정리한 시리즈입니다.

전달성을 위해 생략된 부분이 많으므로 원문을 함께 참고바랍니다


🙌 전반적인 컨셉

Design과 Functionality 측면에서 APP 퀄리티를 높일 방법에 대해 제안합니다

1. Clarity (선명도)

어떤 시스템 환경에서든지 아래 요소들을 잘 만들어야 합니다

  • 잘 읽히는 Text
  • 정확하고 명료한 icon
  • 절묘하고 적절한 꾸밈
  • 기능 파악이 쉬운 Design

2. Deference (존중..?)

Fluid motion이라던지 화려하고 아름다운 인터페이스는 사용자가 APP을 이해하고 상호작용하는데 도움이 됩니다

보통 content로 스크린을 꽉 채우게 되는데, 여기서 반투명하거나 흐릿한 표현을 쓰는게 더 많은 것을 의미하기도 한다

bezels, gradients 사용은 최소화하고 shadow는 떨어뜨려서 인터페이스가 밝고 airy하게 유지시켜야 합니다

그 이유는, content가 중요하므로 이를 해치는 디자인을 하지 않기 위함입니다

3. Depth (깊이)

뚜렷한 visual layer와 현실적인 motion을 만들면, 사용자가 계층구조를 파악하고 APP을 이해하기 좋습니다. 또한, APP에 활력을 불어넣어 줍니다

터치를 넣는다던지 원하는 기능을 찾기 편하게 만들어야 합니다. 그 이유는, 그렇게 만들어야만 어떤 기능을 사용하거나 추가 컨텐츠에 접근할 때 문맥을 까먹지 않게 도와주고 기분이 나쁘지 않습니다


🙌 디자인 원칙

App의 임팩트와 reach(접근성? 범위)를 최대화하기 위해, App의 정체성을 상상하면서 다음 6가지 원칙을 염두에 두어야 합니다

1. Aesthetic Integrity (외관과 기능간 무결성)

App의 외관과 기능이 얼마나 잘 어우러지는지를 말합니다.

예로, 심각한 task를 하고 있는 사람을 도와주는 기능을 하는 App은 본업에 집중할 수 있도록 해야 합니다.
다른 요소가 불필요하게 이목을 끌지 않도록 관심을 끌지 않는 그래픽, 표준적인 컨트롤, 예측가능한 행동으로 구성합니다

반대로 게임처럼 몰입시키는 것이 목적인 App이라면, 이곳저곳 찾아보고 싶게 만들고 재미, 흥미를 유발하는 외형으로 구성합니다

2. Consistency (일관성)

App을 친숙한 패러다임으로 만들어 사람들이 예측가능하도록 해야 합니다
예로, 시스템이 제공하는 element를 사용한다던지, 잘 알려진 아이콘, 표준 text 스타일 등이 있습니다

3. Direct Manipulation (직접 조작)

여기서 직접 조작이란, device를 돌리거나 스크린 content에 영향을 주는 제스쳐같은 것을 말합니다

스크린에 있는 content를 직접 조작할 수 있게 하면 사람들이 좋아하고 App을 이해하기 쉬워집니다

사람들은 직접 조작을 통해 자신의 행동에 대한 시각적인 결과를 즉각적으로 확인할 수 있습니다

4. Feedback (반응)

사람들에게 자신의 action이 적용되고 있음을 알리는 Feedback을 주어야 합니다
참고로, 빌트인 iOS App에서는 유저의 모~든 action에 대해 Feedback을 줍니다

예시로는, tab을 하면 짧게 highlight되는 것. 긴 operation이나 애니메이션볼 때 진행도를 알려주는 것. action의 결과를 소리로 알려주는 것 등이 있습니다

5. Metaphors (이미 익숙한)

사람이 어떤 것을 빨리 익히게 만드려면 이미 익숙한 것에 비유하는 방법이 있는데요, iOS App들은 이를 위해 스크린에 물리적인 상호작용들을 전부 비슷하게 만듭니다.

사람들에게 이미 익숙한 상호작용의 예로는, 현재 view 뒤쪽에 있는 content를 보기 위해 드래그하거나 쓸어 넘기는게 있습니다.
그 외에 switch를 토글, slider를 드래그, picker를 스크롤, page를 쓸어넘기는 행위 등이 있습니다

6. User Control

iOS에선 사람이 통제권을 가집니다. App이 결정권을 갖게 하는 것은 대게 좋지 않습니다.

유저가 스스로 통제권을 갖고 있음을 느끼게 해주려면, 상호작용 요소들은 친숙해야 하고, 뭔가를 삭제한다던지 등의 파괴적인 요소는 확인을 받아야 하고, 뭔가가 이미 진행중이더라도 쉽게 취소할 수 있도록 만들어야 합니다

좋은 App을 위해선, 유저의 권한을 넓히는 것과 (App 입장에서) 하지말았으면 하는 것을 제한하는 것 사이에 적절한 균형을 찾아야 합니다

profile
노션으로 이사갑니다 https://tungsten-run-778.notion.site/Study-Archive-98e51c3793684d428070695d5722d1fe

0개의 댓글