목차.
1. MVP란?
MVP ( Minimum Viable Product)
최소 비용으로 시장의 가능성을 확인하는 효율적인 방법
『린 스타트업(The Lean Startup)』의 저자 에릭 리스(Eric Ries)의 말에 의하면 MVP는 최소한의 노력과 개발 공수로 완성할 수 있는 제품을 말합니다. 즉 최소한의 리소스로 고객의 피드백을 얻고, 쉽게 이를 제품 개발에 반영할 수 있도록 설계된 제품 또는 서비스라고 할 수 있습니다.
완전한 제품을 구축하기 위해서 많은 시간과 돈을 투자하지 않고도
제품의 아이디어를 검증
MVP 개발은 빠르고 간결한 프로세스를 보장함으로써 재무적 위험을 최소화할 수 있습니다. 제품과 사용자의 상호작용을 관찰하여 조기에 최선의 아이디어를 파악하고 긍정적인 결과를 생산하지 않는 아이디어는 버리고 개선할 수 있습니다. 최소 기능 배포를 통해 실제 시장에서 유효한지 검증하고 완벽한 제품을 만드는 데 드는 시행착오를 줄여줍니다.
2. MVP 개발 계기
전에 일하던 스타트업에서 청소년 공부, 활동, 진로탐색 관련 서비스를 개발하게 되었습니다. 처음 프로젝트에 참여하게 된 후 기획을 살펴봤는데 스터디, SNS, 채팅, 캘린더 등 주요 기능만 5개가 넘어갔고, 피그마로 디자인된 앱 화면이 150개가 넘어갔던 것으로 기억합니다. 회의를 요청했고 많은 기능을 한 번에 개발하여 출시를 하게 됐을 때 단점과 MVP 개발에 대해 설명드렸습니다. 결론적으로 대표님은 빠른 출시, 빠른 개발을 원하셨고 MVP 버전으로 최소 핵심 기능만 개발하여 출시를 하고 사용자 반응을 살펴보면서 나머지 기능은 추후 추가 개발하기로 결정되었습니다.
3. MVP 개발 과정
Step1. 핵심 기능 정의하기
유저에게 꼭 테스트해야 하는 기능이 무엇인지 고민하고 핵심 기능을 선정합니다. '사용자가 원하는 것은 무엇입니까?', '이 제품이 사용자에게 꼭 필요합니까? 어떤 이득이 있습니까?'등 질문을 던저가며 핵심 기능과 우선순위를 정합니다. 당시 프로젝트의 가장 근본적인 핵심 기능은 스터디 기능이었고 나머지 기능은 스터디를 중심으로 뻗어나간 기능이었습니다. 핵심 기능에 맞춰 MVP 개발에 필요한 우선순위를 선정했습니다.
Step2. 유저 플로우 구체화하기
핵심 기능이 정의되었다면, 유저 플로우가 어떻게 될지 미리 그려보는 과정이 필요합니다. 유저 플로우를 통해 사용자 흐름을 파악하고 문제점이나 놓친 부분은 없는지 체크합니다. 개발자는 유저 플로우를 통해 기획자, 디자이너의 의도를 명확히 파악하고 프로젝트에 대해 깊고 정확하게 이해할 수 있습니다.
Step3. MVP 개발
가장 중요한 것은 속도입니다. 우선순위에 맞춰 최소한의 기능을 정의하고 간소하고 빠르게 개발합니다. MVP 개발을 위해 로그인, 바텀 내비게이션, 공지사항 등 자주 쓰이는 공통 기능들을 미리 함수화해논 덕분에 더 빠르게 개발할 수 있었습니다. 또한 디자인에서 개발이 오래 걸릴 것 같은 부분은 회의를 통해 MVP 개발에 맞춰 디자인을 조율했고, 그 결과 약 3주 만에 앱을 완성했습니다.
Step4. MVP 테스트
MVP 버전이라도 철저한 QA 검수를 통해 완성도 있는 서비스를 시장에 출시해야 합니다. 테스트 앱 배포의 경우 안드로이드는 플레이스토어에 app bundle로 올려서 테스트하는 방법이 가장 일반적인 방식입니다. 하지만 이 방식은 apk를 매번 업로드하고 대기시간이 발생해 불편하므로 Fastlane과 Firebase App Distribution을 이용하면 좀 더 간편하게 QA 담당자에게 테스트 앱을 자동 배포할 수 있습니다.
Step5. 제품 배포
내부 테스트가 완료됐다면 이제 외부 사용자들을 상대로 제품을 출시합니다.
Step6. 제품 개선 및 조정
서비스 이용 중 발생하는 문제를 지속적으로 모니터링하고 해결해 나가면서 서비스가 더 나은 방향으로 제공될 수 있도록 개선합니다. 고객의 피드백을 반영해서 문제점을 개선하는 과정은 정말 중요 한 부분입니다. 그렇기 때문에 사용자들이 피드백을 적극적으로 수집하여 빠르게 개선 반영해야 합니다. 개선이 이루어진 후 테스트, 배포, 고객 피드백 수집, 또다시 피드백을 바탕으로 개선하는 과정을 반복하며 서비스 완성도를 높여갑니다. 프로젝트 당시 스터디에 관한 통계 차트가 있었으면 좋겠다는 고객 피드백이 있었고 빠르게 차트 기능을 추가해 앱을 업데이트했었습니다.
4. MVP 개발 후기
진행했던 프로젝트 MVP 결과물의 사용자 반응은 기대와 달리 미지근했습니다. MVP 개발을 통해 시간과 비용을 최소화하고 아이디어를 검증할 수 있었습니다. 실패를 통해 배우고 발전할 기회를 다시 갖게 되었습니다.
세 달이라는 짧은 기간 동안 정신없이 개발하고 배포, 유지 보수를 했었는데 배포가 끝이 아니라 배포 후 사용자 피드백을 수집하고 개선해나가는 과정이 가장 중요하며 이 과정이 MVP 개발의 목적임을 느꼈습니다. 앱을 개선하기 위한 사용자 피드백 수집과 관련하여 데이터를 좀 더 디테일하게 쌓았으면 어땠을까 하는 아쉬움이 있습니다. 다음에 다시 MVP 개발 기회가 생긴다면 사용자 데이터를 세밀히 쌓고 분석하는 과정을 통해 앱을 개선해나가고 싶습니다.
읽어주셔서 감사합니다 :)
'Main' 카테고리의 다른 글
[Android] Room을 활용해 Android 오프라인 캐시 구현 (0) | 2022.12.06 |
---|---|
[Android] Service를 활용한 Timer 개발 (0) | 2022.11.30 |
[Android] 앱 아키텍처 설계 (0) | 2022.11.03 |
[Android] Sentry를 활용한 앱 에러 트래킹 및 모니터링 (0) | 2022.10.29 |
[Android] 스트리밍 서비스 개발 기록 (0) | 2022.10.14 |
댓글