Figma를 사용하여 prototype을 만들어보았다.
그 중 Airbnb를 클론했는데 그 이유는 Airbnb가 프론트엔드적으로 완성도가 높은 웹페이지이기 때문이다.
Figma를 처음 다뤄봐서 어려웠지만 재밌어서 시간 가는 줄 몰랐다.
프로토타입이란 실제 제품과 거의 흡사하게 구현한 것으로, 페이지 이동과 상호 작용이 가능해 본격적으로 개발에 들어가기 전 단계에 작성하며, UI의 상호 작용을 시뮬레이션하는 것이 목적이다.
그럼 프로토타입을 완성하기 전에 먼저 Airbnb를 분석해보자!
사용중인 UI 디자인 패턴
1️⃣ 모달 (Modal)

모달은 기존에 이용하던 화면 위에 오버레이 되는 창을 뜻한다.
팝업창과 비슷한데 팝업은 브라우저에 의해 강제로 막힐 수 있지만, 모달은 브라우저 설정에 영향을 받지 않아,
꼭 보여주고 싶은 내용이 있다면 모달을 사용하는 것이 좋다.
2️⃣ 토글 (Toggle)

토글은 On/Off를 설정할 때 사용하는 스위치 버튼이다.
3️⃣ 탭 (Tab)

탭은 콘텐츠를 분리해서 보여주고 싶을 때 사용하는 UI 디자인 패턴이다.
4️⃣ 태그 (Tag)

태그는 콘텐츠를 설명하는 키워드를 사용해서 라벨을 붙이는 역할이다.
5️⃣ 자동완성 (Autocomplete)

너무 많은 항목이 나오지 않도록 개수를 제한하는 것이 좋고,키보드 방향 키나 클릭 등으로 접근하여 사용할 수 있는 것이 좋다.
6️⃣ 드롭다운 (Dropdown)

드롭다운은 선택할 수 있는 항목들을 숨겨놓았다가, 펼쳐지면서 선택할 수 있게 해주는 UI 디자인 패턴이다.
7️⃣ 캐러셀 (Carousel)

빙글빙글 돌아가면서 콘텐츠를 표시해 주는 UI 디자인 패턴
사용자가 옆으로 넘겨야만 넘어가거나, 아니면 둘 중 선택할 수 있도록 만들 수 있다.
8️⃣ 무한스크롤 (Infinite Scroll, Continuous Scroll)


무한스크롤은 페이지 끝에 도달했을 때 추가 콘텐츠를 로드해서 보여주는 방식이다.
페이지네이션과 마찬가지로 한 번에 띄우기엔 정보가 너무 많을 때 사용하는 UI 디자인 패턴이다.
장점 : 페이지네이션처럼 잠시 멈춰서 페이지를 선택할 필요가 없기 때문에 보다 더 매끄러운 사용자 경험을 제공한다.
단점 : 콘텐츠의 끝이 어딘지 알 수 없다는 점, 지나친 콘텐츠를 찾기 힘들다.
UI) 그리드 시스템 (Grid System)
웹디자인에서는 컬럼 그리드 시스템(Column Grid System)을 사용한다.

1. Margin
Margin은 화면 양쪽의 여백을 의미합니다. 웹페이지를 보면 양 옆에 적당한 크기에 마진이 있다.
2. Column
Column은 상대 단위를 사용하여 콘텐츠가 창 크기에 맞춰서 크기가 달라지는 것을 말한다.

3. Gutter
Column 사이의 공간으로, 콘텐츠를 구분하는데 도움을 준다.
웹페이지를 보면 콘텐츠와 콘텐츠 사이의 공간이 있어 독립성과 연관성을 동시에 주고 있다.
UX) 피터 모빌(Peter Morville)의 UX 7요소를 만드는 요소
1. 유용성(Useful) : 사용 가능한가?
유용성은 제품이나 서비스가 목적에 맞는, 사용 가능한 기능을 제공하고 있는가에 관한 요소이다.
기능적으로 본연에 목적에 맞는 기능을 하는지가 중요하다. (+ 디자인은 기능 자체에 영향을 주지 않지만 심미적 기능을 제공)
➡️ 서비스가 여행지의 숙소를 고를 수 있는 목적에 맞고 사용 가능한 기능을 제공하고 있다.
2. 사용성(Usable) : 사용하기 쉬운가?
사용성은 제품이 본연의 기능을 제공하는 것을 넘어서 사용하기 쉬운가에 관한 요소이다.
가능한 단순하면서 직관적이고 사용하기 쉬운 제품이나 서비스를 만들어야 한다.
➡️ 단순하면서 직관적이고 사용하기 쉬운 서비스를 제공한다.
3. 매력성(Desirable) : 매력적인가?
매력성은 말 그대로 제품이 사용자들에게 매력적인가에 대한 요소이다.
단순히 디자인이 좋은것도 중요하지만 이미지, 브랜딩 등의 여러 요소들이 사용자에게 긍정적인 감정을 불러일으켜
사용자들이 해당 제품이나 서비스를 이용하고 싶어 하는지가 중요하다.
➡️ 낯선 여행지에서 저렴한 가격에 관광지에서 벗어난 숙소를 구할 수 있다는 것은 매력적인 요소이다.
4. 신뢰성(Credible) : 신뢰할 수 있는가?
신뢰성은 사용자가 제품이나 서비스를 믿고 사용할 수 있는가에 관한 요소이다.
제품의 결함, 제품이나 서비스 과장 홍보나 개인번호 유출 등 사용자의 신뢰성을 떨어뜨리지 않도록 노력해야 한다.
장기적으로는 믿을 수 있는 브랜드 이미지를 구축하는 것이 좋다.
➡️ 애매하다. 아무리 회사를 신뢰할 수 있더라도 호스트 문제로 인해 숙소를 이용하기 힘들 경우 낯선 곳에서 해결하기 쉽지 않다.
이를 해결하기 위해 에어비앤비에서 노력하고 있기는 하지만 아무래도 신뢰성 부분에서 좋은 점수를 주기는 힘들듯.
5. 접근성(Accessible) : 접근하기 쉬운가?
접근성은 나이, 성별, 장애 여부를 떠나서 누구든지 제품이나 서비스에 접근할 수 있는가에 관한 요소이다.
고연령자를 위한 돋보기 기능, 시각장애인을 위한 음성 안내 기능처럼 누구나 비슷한 수준의 정보를 얻을 수 있도록 하는 노력이 필요하다.

➡️ 외국 사이트기 때문인지 휠체어나 문턱처럼 사회적 약자가 불편함을 느끼는 곳을 필터링 할 수 있어 좋았다.
6. 검색 가능성(Findable) : 찾기 쉬운가?
검색 가능성은 사용자가 원하는 기능이나 정보를 쉽게 찾을 수 있는가에 관한 요소이다.
➡️ 검색 편의성이 좋다.
7. 가치성(Valuable) : 가치를 제공하는가?
가치성은 위에서 언급된 모든 요소들을 총합하여 고객에게 가치를 제공하고 있는가에 관한 요소이다.
사람마다 추구하는 가치는 각자 다르기 때문에 모든 사용자를 만족시킬 수는 없지만 가능한 모든 요소를 고르게 고려하는 것이 좋고,
제품 사용자들이 공통적으로 중요하게 생각하는 요소를 찾아냈다면 그 요소에 집중하는 것도 UX를 효율적으로 개선하는 전략이 될 수 있다.
➡️ 아무래도 프론트엔드적으로 잘 만들어진 웹사이트이기 때문에 피터 모빌(Peter Morville)의 UX 7요소를 만드는 요소 전부 잘 가춰있었다.
사용자 평가) 제이콥 닐슨의 10가지 사용성 평가 기준 충족 여부
1. 시스템 상태의 가시성 (Visibility of system status)
합리적인 시간 내에 적절한 피드백을 통해 사용자에게 진행 상황에 대한 정보를 항상 제공해야 합니다.
- 피드백이 존재하는가?
- 피드백이 즉시 제공되는가?
- 피드백이 명확한가?
➡️ 사용자의 경험에 따라 다르다.
호스트 : 호스트의 성격에 따라 피드백이 빠를 수도 느릴 수도 있다.
회사 : 외국계 회사라 문의 가능 시간이 다른 편이다.
2. 시스템과 현실 세계의 일치 (Match between system and the real world)
내부 전문용어가 아닌 사용자에게 친숙한 단어, 구문 및 개념을 사용한다.
ex) 버튼에 직관적인 아이콘 사용
➡️ 아이콘 직관적이고, 해외 사이트라 번역이 아쉽다. (구글 번역 사용.)
3. 사용자 제어 및 자유 (User control and freedom)
사용자는 종종 실수를 합니다. 현재 진행 중인 작업에서 벗어날 수 있는 방법, 혹은 실수로 수행한 작업을 취소할 수 있는 방법, ’탈출구’를 명확하게 제공해야 한다.
ex) 삭제 버튼을 누르면 종종 보이는 실행 취소 버튼
➡️ 실행취소(탈출구)버튼이 있지는 않.았지만 현재 진행 중인 작업에서 벗어날 수 있는 방법,
혹은 실수로 수행한 작업을 취소할 수 있는 방법은 있다.
4. 일관성 및 표준 (Consistency and standards)
외부 일관성 : 일관적인 사용자 경험을 제공하기 위해서 플랫폼 및 업계의 관습을 따르고, 사용자에게 익숙한 UI를 제공해야 한다.
내부 일관성 : 사용자가 혼란스럽지 않도록 제품의 인터페이스나 정보 제공에 일관성이 있어야 한다.
ex) 버튼의 모양이나 아이콘 크기 같은 동일한 인터페이스 사용.
➡️ 일관성 있는 웹페이지이다.
5. 오류 방지 (Error prevention)
오류가 발생하기 쉬운 상황을 제거하여 사용자의 실수를 방지해야 한다.
ex) 삭제 버튼을 눌렀을 때, 정말로 삭제할 것인지를 이용자의 의사를 확인하기 위해 다시 물어봐야 한다.
➡️ 구매 후 취소할 때 나오는지는 모르겠지만 실행취소 버튼이 있지는 않았다.
6. 기억보다는 직관 (Recognition rather than recall)
사용자가 기억해야 하는 정보를 줄여야 한다.
ex) 최근 검색 했던 단어 목록을 확인
➡️ 껐다 키면 검색 했던 내용이 다 사라진다. 비슷한 웹사이트인 Hotelscombine은 나갔다 들어와도 검색했던 내용이 남아있다.
7. 사용의 유연성과 효율성 (Flexibility and efficiency of use)
초보자와 전문가 모두에게 개별 맞춤 기능을 제공한다.
ex) 프로그램의 단축키를 직접 설정하여 사용
➡️ wishlist에 넣어 원하는 숙소를 나중에 찾을 수 있다.
내가 생각했을 때 사용의 유연성과 효율성을 가장 잘 느낄 수 있는 웹페이지는 네이버.
네이버에서는 내가 원하는 내용을 담아 카테고리에 넣어 사용할 수 있다.
8. 미학적이고 미니멀한 디자인 (Aesthetic and minimalist design)
콘텐츠와 기능의 우선순위를 정하고 우선 순위가 높은 것을 잘 제공하는지 확인하고,
인터페이스에는 관련이 없거나 불필요한 정보가 포함되지 않도록 한다.
ex) 사용 빈도가 적은 메뉴를 필요할 때에만 볼 수 있게 숨겨놓는 것
➡️ 버튼을 누르면 회원가입과 로그인 등이 숨겨있다.
9. 오류의 인식, 진단, 복구를 지원 (Help users recognize, diagnose, and recover from errors)
사용자가 이해할 수 있는 언어를 사용하여 문제가 무엇인지 정확하게 표시하고, 해결 방법을 제안해야 한다.
ex) 영문 성(Family Name)을 입력해야하는 폼에서는 한글이 아닌 영어를 입력해야 한다는 설명
➡️ 전화번호 입력하는곳에 글자를 입력할 수 없고, 영어가 필요한 곳에서 한글을 쓰면 빨간색으로 알려준다.
10. 도움말 및 설명 문서 (Help and documentation)
추가 설명이 필요 없는 것이 가장 좋지만, 상황에 따라 이해하는 데 도움이 되는 문서를 제공해야 한다.
ex) 간단한 안내를 통해 검색에 도움
➡️ 추가 설명은 없지만 직관적인 사이트라 딱히 필요 없는 느낌이다.
Figma를 이용한 Hi-Fi Prototype과 User Flow
Hi-Fi Prototype
User Flow
🌈 취소 버튼이 없는건 아쉽지만 내가 구현한 프로토타입에 관한 유저플로우다. 뿌듯뿌듯👏👏
'UI UX' 카테고리의 다른 글
저작권 없는 무료 이미지 사이트 (0) | 2022.09.07 |
---|---|
Figma (0) | 2022.08.25 |
제이콥 닐슨의 10가지 사용성 평가 기준 (0) | 2022.08.23 |
UX) 좋은 UX를 만드는 요소 (1) | 2022.08.23 |
UI) 자주 쓰이는UI 디자인 패턴 (0) | 2022.08.23 |