기존 앱 기능 및 초기 UX 문제점
기존 Rails 여행 지도 앱은 사용자가 방문한 국가와 방문 횟수를 기록하고, 각 국가에 1부터 10까지의 평점을 부여할 수 있도록 설계되었습니다. 이를 통해 방문 빈도에 따른 히트맵과 평점에 따른 히트맵을 토글하여 볼 수 있었습니다.
그러나 몇 가지 UX 및 UI 문제가 발견되었습니다:
-
평점 스케일의 비효율성: 1-10점 스케일은 너무 세분화되어 대부분의 평점이 6-8점에 집중되어 시각적 차별성이 부족했습니다. 이를 1-5점 스케일로 단순화하기로 결정했습니다.
-
색상 팔레트의 혼란: 방문 빈도 히트맵에서 자주 방문한 국가를 나타내는 밝은 색상(빨강, 주황)이 평점 히트맵에서는 낮은 평점을 나타내는 데 사용되어 사용자에게 혼란을 주었습니다. 각 맵 뷰에 대한 직관적이고 구별되는 색상 팔레트의 필요성이 제기되었습니다.
‘슈퍼 국가 점수’ 데이터 모델링 전략
사용자의 여행 이력과 선호도를 종합적으로 반영하는 ‘슈퍼 국가 점수’를 생성하기 위해 다음 두 가지 핵심 요소를 고려했습니다.
1. 방문 빈도 정규화 (Frequency Normalization)
사용자의 개인적인 여행 패턴에 따라 방문 빈도를 상대적으로 평가하기 위한 여러 옵션이 논의되었습니다.
-
옵션 A (백분위 기반): 방문 횟수를 백분위로 변환.
-
옵션 B (순위 기반): 방문 횟수 순위를 1-5 스케일로 정규화.
-
옵션 C (개인 최대치 대비 로그 스케일): 가장 많이 방문한 국가를 기준으로 로그 스케일을 적용. 방문 횟수가 늘어날수록 점수 증가율이 줄어드는 ‘수확 체감의 법칙’을 반영하며 개인화된 점수를 제공하는 이점이 있어 최종적으로 선택되었습니다.
-
옵션 D (표준편차 Z-점수): 평균 방문 횟수 대비 표준편차를 활용.
2. 가중치 전략 (Weighting Strategy)
평점과 정규화된 빈도를 결합하는 방법에 대해 다양한 접근 방식이 검토되었습니다.
-
옵션 A (가중 평균): 평점과 빈도에 고정된 가중치를 부여하여 합산. 단순하지만, 평점이 없는 국가에 대한 처리가 모호했습니다.
-
옵션 B (곱셈 방식): 평점에 빈도 요소를 곱하여 변형.
-
옵션 C (평점 우선, 빈도 보조): 평점을 주 기준으로 하고, 빈도를 보조 지표로 사용.
-
옵션 D (조건부 가중치): 평점이 있는 경우(예: 평점 * 0.65 + 빈도 * 0.35)와 평점이 없는 경우(빈도만으로 점수를 계산하되, 평점 있는 국가보다 낮게 제한)를 구분하여 적용. 평점이 없는 경우에 대한 가정 없이 불확실성을 반영하며, 평점 있는 국가가 더 높은 순위를 차지하도록 보장하므로 최종적으로 채택되었습니다. 평점과 빈도의 가중치는 65:35로 설정하여 평점에 더 큰 비중을 두었습니다.
UX 구현 및 색상 팔레트 조정
‘슈퍼 국가 점수’를 앱의 기본 맵 뷰로 설정하고, 사용자가 방문 빈도 맵과 평점 맵으로 전환할 수 있도록 토글 버튼을 추가했습니다. 초기에는 ‘favorites’와 같은 모호한 레이블 대신 ‘top countries’와 같은 명확한 레이블을 사용하고, 각 맵 뷰의 설명 텍스트를 추가하여 사용자 이해도를 높였습니다.
가장 큰 난관은 직관적인 색상 팔레트를 찾는 것이었습니다. 여러 차례 시도 끝에, 각 맵 뷰가 시각적으로 구별되면서도 일관성을 유지하는 색상 조합을 찾기 위해 노력했습니다. 특히, ‘슈퍼 국가 점수’ 맵은 평점 맵과 동일한 색상 팔레트를 사용하여 시각적 일관성을 확보하고, 토글 시 각 지표에 따른 시각적 변화를 명확히 인지할 수 있도록 했습니다.