개발
어플만들기, 현실적으로 얼마의 시간이 걸릴까?
8분
2021.01.08.7.2K


- 여러분이 집을 한 채 짓는다고 생각해보세요. 호화로운 대저택까지는 아니고, 그저 침실 몇 개와 화장실을 갖춘 평범한 집을 만드는 겁니다. 평범한 집이라고 해도, 며칠 만에 뚝딱 지을 수는 없습니다. 물론 노력은 해볼 수 있지만, 집의 상태가 좋지 않을게 분명합니다. 하지만 마당에 작은 창고나 개집을 짓는다고 생각해보시죠.

(1) 범위
앱의 범위라는 것은 어디까지 지원해야 하는가를 말하는 것입니다. 예를 들어, 여러분의 앱은 지역에 있는 작은 학교의 학부모 모임을 위한 것인가요? 아니면 수백 개의 백엔드(backend) API에 연결해야 하는 다국적 기업을 위한 앱인가요? 이 두 가지만 비교해보아도, 그 크기가 상당히 다를 것이라는 사실을 짐작할 수 있습니다. 그리고 지원해야 하는 화면의 크기나 대상 플랫폼과도 관계가 있습니다. 여러분이 구글 플레이스토어에서 출시하려고 계획하고 있다면, 다양한 안드로이드 스마트폰과 태블릿 기기들이 가진 여러 가지 화면 크기를 지원해야 하죠. 사실 개발 과정에서 화면 크기를 다루는 것은 그리 복잡하지 않습니다. 오히려 플랫폼에 대해서 생각하는 게 훨씬 더 어려운 결정입니다. 안드로이드와 iOS, 어느 것을 먼저 개발해야 할까요? 이는 아예 주제를 따로 잡아서 이야기야 할 만큼 방대한 내용이긴 하지만, 여러분의 결정에 따라서 사이즈가 달라질 수 있습니다. 아래 데이터를 보시면 iOS 앱들이 안드로이드 앱들보다 상당히 사이즈가 크다는 것을 알 수 있는데요. 다시 말하면 개발 범위를 결정하려고 할 때, 플랫폼을 어떤 것으로 해야 할지에 대해서도 신중하게 고려하는 것이 중요합니다.
(2) 깊이
앱의 깊이는, 사용자의 접근성과 관련이 있습니다. 사용자가 필요한 경우에만 앱을 사용하기를 원하시나요? 아니면 사용자들이 끊임없이 상호작용하고 새로운 기능들을 필요로 하나요? 자주 사용되는 것도 아니고, 사용자들이 간단한 용도로만 사용하는 앱이라면, 개발 기간이 길게 걸리지는 않습니다. 하지만 사용자에게 끊임없는 상호작용과 최상의 사용자 경험을 제공하는 앱을 만들고 싶다면, 그것을 출시하기까지는 비용이 훨씬 더 많이 필요할 것입니다. (3) 기능
기능이라는 것은 깊이와 연관되는 경우가 많습니다. 개발 기간은 기능이 얼마나 복잡한지 와 직접적으로 연관될 수밖에 없습니다. 일반적인 플러그인을 사용해서 개발한다면, 그것을 설치해서 하는 더 쉬운 작업이기에 개발 시간도 적게 걸릴 것입니다. 하지만 사용자들이 세세한 부분까지 전부 맞춤형으로 설정해야 하는 앱을 만든다면, 훨씬 더 오랜 시간이 걸릴 겁니다. 사용자 경험(UX)은 기능에도 영향을 미칩니다. 여러분의 앱을 사용하는 사용자들이 모두 똑같은 인터페이스를 보게 되나요? 사용자의 프로필에 따라서 인터페이스와 UX가 다르다면, 그에 따른 기능은 더 많아질 수밖에 없습니다. 일반적으로 이런 앱들에서는 실시간 업데이트와 같은 복잡한 기능들을 갖춘 경우가 많습니다. 우버(Uber)를 예시로 들어볼까요? 우버 정도로 복잡한 앱을 개발하려면, 얼마나 많은 기능들이 필요할지 생각해보세요. 우선, 실시간으로 GPS 위치를 추적해서 운전자와 승객을 연결해 줘야 합니다. 그리고 모든 사용자들이 자신들만의 프로필을 가지고 있어야 합니다. 또, 결제정보를 안전하게 저장하고 처리해야만 합니다. 물론 기능이 많기 때문에 수시로 업데이트도 해줘야하죠. 우리가 평소에 간편하게 사용하고 있던 앱들이 실은 생각보다 많은 기능들을 갖추고 있으며, 이렇게 상용화되고 많은 사람들이 찾을 만큼 실용적으로 만들려면 평균적인 앱 개발 기간보다는 훨씬 더 오래 걸리게 됩니다. (4) 목적
모든 어플만들기는 하나의 아이디어로부터 시작합니다. 하지만 아이디어에만 그쳐서는 안되고, 그것을 여러분의 앱이 가져야 할 분명한 목적으로 표현할 수 있어야 하는데요. 누구에게 도움을 줄 수 있을까? 사람들이 이것을 왜 사용할까? 이 앱이 사용자들의 삶을 어떻게 더 빠르고 편리하게 만들어줄까? 이런 질문들에 대한 여러분의 대답이 중구난방이라면 분명한 목적을 갖고 있지 않다는 것입니다. 위에 나온 우버의 사례를 다시 한번 살펴보겠습니다. 우버 앱에 소셜 미디어 기능을 추가하려고 한다면, 그것은 불필요한 것이고, 명확한 목적과도 오히려 부딪히게 됩니다. 개발을 시작하기 전에 목적을 분명하게 정해놓지 않는다면, 처음에는 심플했던 앱이 나중에는 복잡하고 과하게 많은 기능들이 추가되어 무용지물이 될 수 있습니다. 결국 시간과 돈을 지불하고도 어플 만들기에 실패하는 것이죠.
> 이 글은 'Mobile App Development Timeline: A Realistic Perspective'을 각색하여 작성되었습니다.
로그인하고 자유롭게 의견을 남겨주세요.