Где деньги, Зин: из чего складывается стоимость разработки мобильного приложения

В современном мире не обойтись без мобильных приложений: есть приложение для поиска новостей, интернет-магазины, приложения, повышающее продуктивность, приложения для сложных расчетов, медицинские и спортивные приложения, есть приложения для релаксации, есть игровые. Из чего складывается стоимость разработки приложения, и можно ли сэкономить, рассказывает Антон Тарасенко, СEO DNA Team, студии разработки мобильных приложений и веб-сервисов.

Где деньги, Зин: из чего складывается стоимость разработки мобильного приложения

Типы мобильных приложений

Приложений столь же много, сколько сфер нашей жизни и интересов. Есть приложения B2C, когда приложение для конечного потребителя, где он — это пользователь какого-то продукта или потенциальный покупатель какого-то продукта. Есть B2B — корпоративного типа, когда пользователи являются сотрудниками какой-то организации, и это приложение используется в служебных целях. Например, таксисты используют приложение, чтобы получать заказы — это приложение необходимо для выполнения их работы.

Игровые приложения стоят особняком, потому что имеют свою специфику по функциям, и по дизайну — их разработка требует индивидуальных расчетов. Бывают системные приложения, выполняющие некоторые функции внутри операционной системы Apple iOS или Android.

Где деньги, Зин: из чего складывается стоимость разработки мобильного приложения

Сложность разработки приложения

Если говорить непосредственно о создании мобильного приложения, то на самом деле это довольно сложный многоэтапный процесс, как создание любого IT-продукта. Но для приложений есть ряд особенностей: нужно продумать функциональность, бизнес-логику, как всем этим управлять.

Например, по аналогии с автомобилем, — видим приборную панель, руль, материалы, из которых это сделано, кнопки, мониторы, стрелки. Нажимая на них, можем ехать, хотя только специалисты знают, как работает сложный механизм, сочетающий электронику, топливную систему, двигатель и остальное.

Заказчики приложений часто оценивают приложение с точки зрения пользователя как набор экранов и картинок, поэтому им кажется, что все очень просто и понятно. Но внутри приложение — это большая технологичная система, о которой пользователь не догадывается. Для того, чтобы дать ему пользовательский опыт, экспириенс, который нужен, чтобы все быстро работало, красиво выглядело, выполняло свои функции, было конкурентоспособным, анализировало и сохраняло статистику, необходима большая серверная часть – бэкенд.

Как и в примере с автомобилем, при разработке мобильного приложения важно понимать, что одни и те же функции могут быть реализованы по-разному, как с точки зрения визуальной части, так с точки зрения какого-то внутреннего функционала. Поэтому и стоимость, и сроки создания приложений, и даже технология, по которой это приложение создается, зависит от нескольких факторов.

Факторы, влияющие на стоимость разработки

Наличие каких-то специфических требований в первую очередь влияет на цену. Например, некоторым важен дизайн — приложение должно быть не похожим на остальные. Соответственно, чем дизайн уникальнее, чем он специфичнее, тем приложение будет дороже. Требуется больше усилий, больше времени уйдет на то, чтобы спроектировать и создать уникальный дизайн, а потом его реализовать.

Реализация может быть разной, в зависимости от подхода. Каждое приложение должно запускаться на операционной системе, есть компании Apple и Google – поставщики ОС, соответственно, у каждой из них есть языки основные программирования: Swift – для iOS, Kotlin – для Android; приложения для iOS пишут на еще на Objective-C, а для Android – на Java. Нативное приложение создается с использованием кода, специфичного для конкретной платформы. Приложения для разных ОС могут быть очень похожи и вместе с тем, будут отличия в управлении и пользовательском опыте. Плюс этого варианта реализации в том, что он максимально эффективен с точки зрения производительности. Но стоимость при этом сразу умножается на 2, потому что вместо условно одного разработчика, который делает кроссплатформенное решение, необходимо два: в больших проектах есть отдельно команда iOS, отдельно — команда Android. При этом усложняется управление, требуется больше временных и человеческих ресурсов.

Кроссплатформенный подход к реализации, в свою очередь, с каждым годом становится все более востребованным. Такие инструменты, как Flutter, Xamarin и React Native, позволяют с помощью одного набора кода создать приложения и для Android-устройств, и для IOS-устройств. По сути, одна кодовая база компилируется и собирается в два приложения, которые запускаются на разных операционных системах. Преимущество этого подхода в экономии ресурсов и времени практически вдвое. Это снижает стоимость разработки, однако может ограничить доступ к некоторым специфическим функциям устройства, связанным с производительностью. Именно кроссплатформенного подхода придерживается команда DNA Team.

Стоимость мобильного приложения зависит от того, как оно должно выглядеть, какие необходимы функции и как должно быть реализовано. Приступая к разработке, важно понимать, как проект будет развиваться, что, к примеру, может потребоваться во второй версии, чтобы улучшить пользовательский опыт. Все эти факторы также влияют на конечную стоимость. Можно проиллюстрировать примером с квартирой: переезжая, заранее продумываем, сколько должно быть комнат, если появятся дети. То есть заранее понимаете, что может потребоваться, чтобы часто не менять жилье. Так и с разработкой приложения: закладывание каких-то функций на будущее в архитектуру тоже влияет на стоимость разработки.

База и MVP

Если говорить о каких-то базовых решениях, не требующих уникального дизайна и функциональности, в зависимости от первичных задач их можно разделить на три условные группы.

Простое приложение, например, для малого бизнеса – это каталог товаров, форма обратной связи, форма регистрации, адреса, карта – ценник от полутора до трех миллионов. Время разработки — в среднем полтора-три месяца.

Среднее приложение — для электронной коммерции, для среднего бизнеса, когда требуется чат, функция оплаты, аналитика, то есть интеграция с платежными системами или CRM, 1С. Расширяются функции мобильного приложения и создается уникальный дизайн, поэтому стоимость начинается от трех миллионов и может вырасти примерно до семи, в зависимости от сложности внешних интеграций. Сроки разработки такого мобильного приложения варьируются от четырех до шести месяцев.

Сложное приложение — крупный проект, например, маркетплейс или финансовое приложение со специфическими функциями, и дизайном, для которых нет базовых решений. Как правило, подобные индивидуальные решения стоят дорого, поэтому стоимость может быть от десяти миллионов и выше. Сроки разработки таких приложений зависят от функциональности и особенностей каждого проекта, поэтому рассчитываются индивидуально.

При разработке приложений среднего и сложного уровней имеет значение этап MVP.

MVP (Minimum Viable Product) — это ранняя версия продукта с минимальным функционалом, достаточная для тестирования на первых потребителях, чтобы проверить востребованность продукта, получить обратную связь и определить направления для улучшений.

Процесс создания MVP включает определение метрик, исследование рынка и конкурентов, анализ продукта и целевой аудитории, проведение CustDev (Customer Development) – исследований с помощью глубинных интервью потребностей потенциальных потребителей, выбор основных функций, тестирование и сбор обратной связи. Такой подход позволяет экономично и эффективно проверить гипотезы, оценить интерес аудитории и скорректировать процесс разработки приложения. Затраты на MVP могут составить от трех до пяти миллионов. Сейчас стандарты повышаются, потому что пользователи привыкли, что есть и чат поддержки, и пуш-уведомления, приятный дизайн. Такая первая версия помогает оценить гипотезы и продумать стратегию развития продукта. MVP особенно важен для сложных продуктов, потому что помогает оценить риски правильно разработать дорожную карту развития проекта на основе потребностей пользователей и рынка.

Где деньги, Зин: из чего складывается стоимость разработки мобильного приложения

Поэтапная работа — снижение издержек

Цена разработки может меняться, когда расширяется или меняется функционал приложения, поэтому важно уже на этапе проекта выяснять все детали наиболее подробно. Так можно избежать лишних трат и конфликтов в процессе разработки: каждая новая функция, дизайнерский изыск — часы работы и тестирования, которые требуют дополнительных средств. Поэтому работа по разработке мобильного приложения разбивается на несколько этапов: проектирование, дизайн, разработка.

Проект

На этапе проектирования технические специалисты, аналитики и дизайнеры вместе с заказчиком создают детально проработанное техническое задание. Именно на этом этапе выявляются особенности разработки. Как в примере про квартиру — какие материалы будут использоваться для ремонта. То есть на этапе проектирования формируется видение, каким должно быть приложение, какие сторонние системы необходимо интегрировать, чтобы на их стороне не возникло проблем, усложняющих разработку. Проектирование — 5-10 % любой разработки, и на этом этапе выстраивается коммуникация с компанией-заказчиком. В нашей студии 90% всех проектов начинаются с проектирования и проработки деталей того продукта, который ожидает получить заказчик в результате.

Дизайн

Следующий этап — дизайн. На этом этапе прорабатывается пользовательский опыт и графический визуал, появляется понимание для команды разработки, как продукт должен работать и выглядеть.

Разработка

Только после этих двух этапов, команда переходит к разработке – это ответственность технических специалистов: программистов, тестировщиков. Очень важен менеджмент: управление командой разработки и коммуникация с заказчиком, проведение демонстраций — чем он эффективнее, тем быстрее реакция на обратную связь, результативнее все процессы. Благодаря предыдущим двум этапам, они уже понимают, каким должно стать мобильное приложение.

Поэтапная работа позволяет точно контролировать бюджет, понимать целесообразность и стоимость каждого принятого решения. Например, нередко, когда заказчик не учитывает затраты на инфраструктуру для стабильной работы приложения с увеличением количества пользователей, поэтому уже на этапе проекта важно оптимально спроектировать ее, учитывая будущий рост.

Разработка мобильного приложения — это лишь начало совместной работы, потому что требуется постоянно его поддерживать и регулярно обновлять. Поэтому на этапе проектирования важно прорабатывать стратегию развития приложения: какие функции важнее в первой версии, какие можно будет добавить позже. Каждая разработка требует индивидуального подхода и всегда есть возможность оптимизировать затраты, если все четко продумать.

44
3 комментария

А как сейчас обстоит дело с делегированием написания кода нейросетям? Мелькают разные мнения. Интересен Ваш опыт. И смогут ли принять такой проект заказчики или им всё равно?

Мы для написания кода нейросети не используем, потому что после тестовых заходов (ради кажущейся оптимизации) получаешь еще больше затраты, чтобы разобраться и подстроить написанное под задачи. В общем возможно код пишется за 20% времени, но его отладка потом занимает все 80%))

Поигрались для личного и перестали.

А вот по поводу заказчиков: многим конечно важен результат, а не содержание. Но поддерживать такое содержание - тоже большой вопрос

1