Сколько стоит разработать мобильное приложение?
Клиентов и причастных к отрасли волнует вопрос ценообразования в заказной разработке, и это нормально. Но у ;разработки мобильных приложений есть одна особенность — это большой разброс цен на рынке. Этому есть несколько причин: разная почасовая ставка, разный уровень клиентов, с которыми работает студия, особенности позиционирования разработчиков и разные модели продаж.
Что нужно учитывать, чтобы понять, сколько стоит разработка мобильного приложения
Не стоит думать, что компания профессионалов называет вам стоимость продукта с потолка. Чаще всего стоимость зависит от количества часов, которое займёт разработка проекта. Это количество формируется в процессе оценки и состоит из трёх больших блоков:
- Список самых затратных компонентов приложения.
- Количество поддерживаемых платформ и устройств.
- Объём кастомизации элементов интерфейса и анимаций.
Количество часов на разработку — самый важный фактор стоимости. Студии считают её, умножая количество часов на стоимость часа работы специалиста (рейт). Поэтому чем больше часов работы требуется на какую-то задачу, тем она дороже в реализации.
Кроме этого, на итоговую стоимость влияет состав команды проекта, расходы на развитие проекта после релиза и расходы на то, что входит в работу студии помимо самой разработки (аналитика, дизайн, проектирование, тестирование, менеджмент).
1. Самые затратные по стоимости компоненты приложений
Такие компоненты требуют больше всего часов разработки и, соответственно, расходов бюджета. При этом затратные задачи могут быть как технически сложными, так и просто большими по объёму работ.
Ещё стоит пояснить, что большое количество часов не всегда означает, что задачу будут делать долго. Часы можно разделить между разработчиками и они будут работать над задачей параллельно. Когда в контексте оценки проектов говорят о количестве часов, имеют в виду, в первую очередь, стоимость, а не календарные сроки.
Итак, какие компоненты приложений самые затратные по часам и стоимости:
- большое количество данных, экранов и действий в приложении.
Чтобы отобразить в приложении большое количество данных, нужно постараться, ведь экран смартфона меньше веб-страницы. Дизайнер должен придумать, как это будет выглядеть, а разработчик — сверстать и запрограммировать. Для реализации этой задачи мобильным разработчикам нужно написать требования к API, то есть зафиксировать, какими данными приложение будет обмениваться с сервером. Когда требования к API готовы, а бэкенд-разработчики его создали, API нужно протестировать.
Под данными мы имеем в виду любую числовую, графическую или текстовую информацию: фотографии, теги, численные характеристики товаров и т.д. Если данные должны отображаться динамически, процесс отображения усложняется. Эти данные могут быть представлены в приложении в том числе в виде ленты, например, новости во ВКонтакте или каталог товаров в приложении ИЛЬ ДЕ БОТЭ.
- бэкенд.
Это серверная система, которая хранит базы данных и бизнес-логику проекта и передаёт их клиентской стороне — мобильному приложению — в соответствии с API. Требования к API формулируют мобильные разработчики. А саму серверную часть создают бэкенд-разработчики.
- административная панель.
С её помощью можно управлять аккаунтами пользователей и контентом. Какие работы входят в эту задачу: проектирование, дизайн и вёрстка интерфейса; создание API и разработка бэкенда, который будет хранить добавляемый контент и осуществлять с ним какую-то логику.
- несколько типов пользователей в приложении.
Например, если вы делаете Uber-like приложение, скорее всего, у вас будет два вида пользователей: заказчик и исполнитель. Для каждого из них вам понадобится разработать свой интерфейс: сделать дизайн и проектирование, сверстать экраны и реализовать бизнес-логику.
- использование аппаратных компонентов и интеграция со сторонними устройствами.
Современные смартфоны оснащены такими аппаратными компонентами, как гироскопы, акселерометры, датчики пульса, NFC-чипы, Bluetooth-датчики, барометры и т.д. Набор компонентов может отличаться в зависимости от устройства и производителя, а поиск правильного способа работы с каждым смартфоном и тестирование того, как разные аппаратные компоненты взаимодействуют с кодом, может увеличить затраты и время на разработку.
Кроме встроенных аппаратных компонентов приложение может использовать внешние устройства. Лайв Тайпинг работал с BLE Beacon-маячками на проекте Positive Proximity и с алкотестером Lapka, интегрировал Bluetooth-принтер на проекте Time&Tally; и устройство Resero Whistle на проекте Resero, разрабатывал приложение для распознавания лиц на основе устройства Raspberry Pi 3. У этих устройств есть свои функции, и, чтобы приложение могло взаимодействовать с ними, нужно обрабатывать данные, которые они передают.
- AR и захват мимики лица.
Эти два компонента могут быть очень затратными, даже если количество экранов в приложении небольшое. Например, это может быть проект, в котором вы накладываете на своё лицо одну из десятка масок и делаете селфи, или мобильное приложение интернет-магазина очков, в котором есть функция виртуальной примерки с помощью селфи-камеры. Чтобы сделать такое приложение, нужно реализовать захват мимики лица в движении и корректно отображать на нём маску/очки — всё это технически сложно и потому требует много времени на разработку и значительных расходов бюджета.
Выход официального AR-kit вместе с iOS 11 сделал работу с AR-компонентами проще, а релиз iPhone X с технологией Face ID ускорил работу с захватом мимики лица, но пока только для одного устройства и одной операционной системы. В этом смысле золотые времена для большинства смартфонов ещё не наступили, а значит, работа над такими задачами пока остаётся сложной и дорогой.
- интеграция сторонних сервисов.
Некоторые функции в мобильных приложениях требуют интеграции со сторонними библиотеками, фреймворками и сервисами. Например, функция оплаты по карте. Для неё мы можем подключить сервисы Stripe и Braintree, Uniteller, Яндекс.Кассу, платежи Альфа-банка, Paypal и т.д. Чаты могут быть реализованы с помощью таких сервисов, как Layer, Intercom и Smooch. Добавить возможность делиться контентом приложений в социальных сетях можно с помощью обращения к API Facebook, Twitter и Google+, ВКонтакте.
Добавить один-единственный сторонний сервис — не очень долгий процесс, но если проект большой и интеграций нужно много, такая работа может занять несколько сотен часов разработчика.
Кроме этого, приложению может понадобиться интеграция со специфическими сервисами, например, с CRM-системойPipedrive, как это было на нашем проекте Travalet. Это сложнее и требует дополнительное количество часов на разработку.
2. Количество поддерживаемых устройств и операционных систем
Если вам нужно разработать приложение и под iOS, и под Android, наличие второй платформы почти всегда удваивает цену разработки. Учитывая фрагментацию на Android-рынке, стоимость приложения для этой платформы может превышать стоимость приложения под iOS в среднем на 20%. Но часто оценка для двух систем одинакова — всё зависит от проекта.
iOS-приложения должны быть совместимы с последней версией iPhone и несколькими её популярными предшественниками. На ноябрь 2017 года это iPhone X и более ранние модели: iPhone 8, 8+, 7, 7+, 6, 6+, 6S, 6S+, 5C, 5S, SE, 5. То же справедливо и для версий операционной системы: iOS 11, 10, 9. Приложения под Android мы делаем поддерживаемыми на версиях Android от Android 4.4 KitKat до Android 8.1 Oreo.
Адаптация приложения для планшетов может прибавить до 75% от стоимости, а поддержка более старых версий iOS и Android может увеличить стоимость разработки в полтора раза — старые версии имеют ограничения по производительности, не обновляются и не развиваются. Чтобы избежать расходов, которые могут оказаться лишними, рекомендуем начинать разработку с перечисленных выше версий платформ и наиболее популярных устройств.
3. Объём кастомизации элементов интерфейса и анимаций
Чтобы понять, что влияет на цену дизайна мобильных приложений, стоит немного разобраться в том, как устроен этот процесс.
Дизайнеры мобильных приложений пользуются гайдлайнами операционных систем. Это такие руководства по оформлению интерфейса приложений на iOS или Android. Гайдлайны помогают не только дизайнерам, но и разработчикам. Когда разработчику нужно реализовать стандартные элементы интерфейса (те, что зафиксированы в гайдлайнах), ему помогает UI-kit платформы.
Что будет, если мы захотим сделать какой-то элемент не таким, каким он обычно выглядит в этой ОС?
Например, в приложении должна быть возможность выбора даты. В iOS для этого в стандартном случае используется барабан, а в Android — карточка. Чтобы поменять элемент, разработчику нужно будет либо кастомизировать элемент из «родного» UI-kit, либо создавать что-то новое с нуля. А это дольше и дороже. Таких моментов в приложении может насчитаться много и в сумме они повлияют на стоимость проекта. Все эти изменения потребуют больше времени дизайнера и разработчика.
Зачем следовать гайдлайнам? Во-первых, это экономит время дизайнеру и разработчику, а заказчику экономит бюджет. Во-вторых, стандартные решения привычнее и удобнее для пользователя, поэтому заказчику стоит помнить о целесообразности кастомизации элементов, если возникает такая потребность.
С анимациями похожая история: чем они сложнее и круче, тем требуют больше времени и бюджета. Но иногда мы вместе с заказчиком включаем нестандартные анимации целенаправленно, как это было в нашем проекте Wave X?
Всё вышесказанное касается стоимости разработки нативных приложений. Если же приложение кроссплатформенное, оно будет дешевле двух нативных примерно на 25%. Подробнее о соотношении стоимости кроссплатформенных и нативных приложений писал генеральный директор Лайв Тайпинг Александр Кузецов.
Какова средняя стоимость разработки приложения
Чтобы показать вам примерную стоимость приложений, мы выделили три условные группы проектов исходя из количества часов, необходимого на их разработку, и рассчитали примерную стоимость проекта для каждой группы. За стоимость часа мы взяли средний показатель по России согласно данным аналитического агентства Тэглайн. На момент публикации этой статьи он равен 1700 руб. Какие у нас получились группы:
- простые приложения. Предполагают, что они созданы только для одной платформы, в них мало экранов, данных и действий, которые могут совершать пользователи. Таким проектам не нужно создание API, бэкенда и панели администратора. Но в них может быть, например, возможность просмотра и отправки изображений, вход и авторизация через популярные соцсети. Такие приложения могут использовать готовые картографические сервисы и работать с GPS. Разработка такого проекта занимает от 300 часов и стоит от 500 тысяч рублей;
- приложения, требующие условного среднего количества часов разработки. Они могут включать создание API, панели администратора и простого бэкенда. В них могут быть, например, чаты, функции оплаты и т.д. На стоимость здесь влияет не только сложность компонента, но и их количество. Создание подобного приложения под одну из платформ требует от 600 до 1200 часов разработки и стоит 1–2 млн. рублей;
- затратные приложения. Включают в себя обработку аудио- и видеофайлов, синхронизацию в режиме реального времени, большой объём кастомных анимаций, интеграцию с большим количеством сторонних сервисов, разработку бэкенда, работа с VR/AR-платформами, наличие нескольких типов пользователей. Сверх этого — большое количество контента и экранов. Проект не только технически сложный, но и в принципе большой. На создание такого приложения нужно от 2000 часов, а стоить оно будет от 3 млн. рублей под одну платформу.
Состав команды проекта
Состав команды формируется исходя из требований проекта: чем сложнее проект, тем большее количество специалистов требуется, и тем выше цена разработки приложения. Базовый набор участников это: руководитель проекта, UI/UX-дизайнер, как минимум два разработчика (по одному на каждую платформу) и тестировщик. Если проект требует серверной инфраструктуры для разработки API, то в нём участвует и бэкенд-разработчик. Более крупные проекты могут требовать от двух до четырёх разработчиков на каждую платформу, двух дизайнеров и аналитика. А если проект — это веб-сервис или кроссплатформенное приложение, на нём занят фронтенд-разработчик или их команда.
Час работы разных специалистов может оцениваться студиями по-разному. Поэтому состав команды влияет на стоимость проекта.
Затраты после релиза
Кроме бюджета на разработку нужно учитывать и расходы на развитие продукта. Приложению нужны обновления, служба поддержки клиентов, поддержка серверной части и облачного хостинга, услуги юриста и — очень важный момент! — на маркетинг и продвижение.
Студии разработки, как правило, не включают в первоначальную смету поддержку после релиза. В Лайв Тайпинг есть три вида технической поддержки после релиза: бесплатная гарантийная поддержка, платная и работы по развитию проекта. Подробнее о каждом из трёх видов — в этой статье.
Как мы в Лайв Тайпинг оцениваем стоимость приложения
На этапе знакомства с клиентом мы даём приблизительную оценку проекта, или «вилку», основанную на опыте работы с похожими проектами. Если «вилка» совпадает с ожиданиями клиента, мы идем делать детальную смету и уточняем стоимость.
Дальше оценка может идти по одному из трёх сценариев:
- Заказчик полностью понимает, каким будет проект. У него есть готовая бизнес-стратегия, дизайн и план бюджета на маркетинг. Если мы находим, что дизайн не требует доработок, мы называем клиенту точную оценку разработки.
- Заказчик пришёл к нам с хорошим функциональным описанием проекта, но без дизайна. Он знает, какие типы пользователей будут в приложении, какие проблемы оно решает. Перед тем, как точно оценить такой проект, нужно провести предпроектную аналитику и прототипирование. До этого мы можем дать оценку разработки с погрешностью 10%.
- Заказчик пришёл с примерным описанием. У него нет понимания, кто будет пользоваться приложением, бизнес-гипотезы не проверены. Для такого проекта мы можем оценить только первый этап работ — предпроектную аналитику и прототипирование. Они помогут сделать точную оценку. До этого мы можем дать только примерную оценку по большим блокам проекта.
В одной из наших статей с этапом проектирования и прототипирования можно познакомиться подробнее.
Что входит в конечную стоимость проекта, кроме разработки
Конечная цена приложения включает детализацию требований и аналитику, проектирование и дизайн, разработку, тестирование и менеджмент. Этот круг повторяется итерация за итерацией, пока проект не будет считаться завершенным. Релиз — это не конечная точка работы над приложением, а только её начало. Стоит быть готовым к долгому сотрудничеству с командой разработки.
Эта статья даёт лишь примерные ориентиры по ценам на разработку приложений. Каждая клиентская задача уникальна и требует внимательного изучения и оценки. Запишитесь на бесплатную консультацию со специалистами Лайв Тайпинг, и мы поможем точнее определить, какова будет стоимость разработки вашего приложения.
livetyping
0 комментариев