일반적인 Attribution과 Analytics의 리포트는 하나의 디멘전과 여러 개의 메트릭으로 구성됩니다.
보통의 리포트는 하나의 기준을 가지고 여러 개의 데이터를 기준에 맞게 나누거나 필터링하여 목적에 맞게 제공되기 때문입니다.
글로벌 서비스로는 Google Analytics가 대표적이고 국내 서비스로는 에이스카운터, 로거 등이 그렇습니다.
이러한 방식으로 제공되는 리포트들은 하나의 리포트에 하나의 기준과 여러 메트릭이 조합되기 때문에 목적에 부합되는 데이터를 확인하는데 쉬운 편입니다.
리포트 세트에 맞춰 데이터가 제공되면 되므로 미리 데이터를 정제를 해두기 때문에 쿼리 반응 속도가 빠른 것도 장점입니다.
장점만 있는것은 아닙니다.
트래커에서 수집하는 데이터는 종류만 해도 수십수백 가지입니다.
디멘전만 해도 수십 가지이고 메트릭 또한 수십 가지입니다.
이 모든 데이터를 표현하기 위해선 리포트의 숫자는 기하급수적으로 늘어날 수밖에 없습니다.
사용자는 원하는 데이터를 확인하기 위해 수많은 리포트를 왔다 갔다 해야 합니다.
또한 미리 세팅된 리포트의 성격에 맞게 데이터가 미리 정제되어 있기 때문에 리포트마다 사용할 수 있는 세그먼트 조건도 제한되어 있습니다.
여기까지가 과거의 전통적인 트래커 서비스의 수준입니다.
이 방식에서 탈피한 글로벌 서비스가 Amplitude입니다.
환상적인 UX/UI를 자랑하는 Amplitude는 리포트가 아닌 대시보드가 기본 제공입니다.
대시보드를 구성하는 각 각의 데이터카드(위젯)는 모두 저마다의 디멘전과 메트릭으로 구성됩니다.
또한 데이터카드의 형식을 리포팅의 성격에 맞게 변화시킬 수 있습니다.
KPI타입일 수 있고 파이 차트 형식일 수 있으며 트렌드 차트 형식일 수도 있습니다.
하지만 Amplitude도 치명적인 단점이 몇 존재합니다.
각 대시보드는 데이터카드를 가로로 2개까지만 배치할 수 있어 다채로운 구성이 힘들었고,
Attribution데이터를 수집하지 않아 광고 매체사에게 광고 성과 데이터를 포트스백 할 수 없는 구조였습니다.
그렇다면 우리는?
우리는 작정하고 때려 넣었습니다.
가로로 최대 12칸을 사용할 수 있도록 UI 구성을 하였고 대시보드에는 제한 없이 데이터카드를 배치할 수 있도록 구성하였습니다.
모든 데이터카드는 선택한 디멘전에 따라 타입을 자유자재로 고를 수 있도록 하였고 유저가 스스로 대시보드를 만들 수도 있게 제작하였습니다.
다시 생각해봐도 대단한 도전이었습니다.
대시보드를 구성하는데 너무나 많은 UI 컴포넌트가 소요되었고 리액트로 만들어진 프론트에는 수많은 라이브러리를 필요로 했습니다.
데이터카드 타입마다 표현해야 할 양식이 모두 달라 각 각 정의를 해야 했고 대시보드 생성부터 데이터카드를 배치하는 데까지 사용 플로우를 설계하는 것 또한 대단한 작업이었습니다.
데이터카드의 제공 범위를 놓고 개발팀과 몇 날 며칠을 논의해야 했고 구현의 정당성을 확보하기 위해 프로토타입이 아닌 디자인 시안을 실제 서비스 레벨까지 만들어 논의하기도 했습니다.
각종 디멘전과 메트릭의 조합은 쿼리 속도에도 영향을 끼쳐 백엔드의 쿼리와 적재 로직까지 손 봐야 하는 상황까지 흘러갔으나 서비스 레벨의 시안과 정당성을 가열차게 어필하는 저의 열정에 개발진들은 오히려 더 가열차게 프로젝트를 진행하였습니다.
현재 새로운 서비스는 올해 가을을 목표로 즐겁게, 열심히 달리고 있습니다.
프로덕트 설계가 끝나고 열심히 QA를 진행하는 단계까지 지나고 있습니다.
어렵지만 벅차고, 힘들지만 즐거운 프로젝트는 언제나 보람찹니다.
Wise*racker service 01. Summary & Login, Signup, GNB, LNB, Placeholder
Wise*racker service 02. UI Components
Wise*racker service 03. Audience, Funnel, Flow, Message
Wise*racker service 04. User Custom Dashboard
Term
2019-07-01 ~
진행 중
Worker
모두 본인
Stack
React, Redux
Tools & Service
Sketch, Zeplin, Git
'PORTFOLIO > PRODUCT' 카테고리의 다른 글
ETC (0) | 2020.10.05 |
---|---|
Wise*racker service 03. Audience, Funnel, Flow and Message (0) | 2020.08.20 |
Wise*racker service 02. UI Components (0) | 2020.08.09 |
Wise*racker service 01. Summary & Login, Signup, GNB, LNB, Placeholder (0) | 2020.08.08 |
Wise*racker Developer document site (0) | 2020.08.08 |