Как разработать мобильное приложение для своего бизнеса и не разориться
Разработка
04.05.2021
Когда бизнес заказывает мобильное приложение, есть риск переплатить или слишком сэкономить. Если переплатить, приложение может не окупиться и ударит по бюджету компании. Если слишком сэкономить, есть риск на выходе получить бесполезный и нефункциональный кусок кода.
Мы в компании Neti занимаемся разработкой мобильных приложений и хотим рассказать, как соблюсти баланс между экономией и функциональностью: потратить минимум денег и получить все, что нужно.
Из чего складывается стоимость разработки мобильного приложения
На стоимость разработки мобильных приложений влияют 5 критериев:
Дизайн. Чем больше у приложения экранов, пунктов меню и разделов, тем дороже дизайн.
Функционал. Здесь все также: чем больше функций, тем дороже. Калькулятор, платежи, работа с файлами, чат, подключение карт — каждая функция увеличивает стоимость приложения.
Работа на разных платформах. Если приложение нужно только для одной платформы, его стоимость будет ниже. Если нужно, чтобы оно работало и на iOS, и на Android, есть два пути:
- Разработать кроссплатформенное приложение — написать один код сразу на две платформы. Это дешевле, но приложения получаются более простыми, без сложных функций вроде работы с pdf-файлами внутри приложения. Например, подключение карты, отслеживание по GPS, будильник, онлайн-уроки и тесты — это простые функции. В нашей практике 90% приложений пишутся именно кроссплатформенными — большинству заказчиков хватает такого функционала.
- Разработать два приложения: под iOS и под Android. В этом случае приложение пишется на двух разных языках программирования. Это позволяет реализовать больше необычных и сложных функций, а также сделать приложение стабильнее и безопаснее. Таким путем идут компании, выпускающие приложения для сотен тысяч пользователей, например, Едадил, Сбермаркет или Яндекс.Такси. Или те, кто делает сложные приложения для инженеров или системных аналитиков. Такие приложения должны стабильно работать под высокими нагрузками и поддерживать сложные решения, недоступные кроссплатформенным приложениям.
Разработка серверной части. Если она есть или нужно подключиться к готовой системе, например, 1С, это проще и дешевле. Если нужно разрабатывать серверные механизмы, это сделает разработку дороже.
Например, нужно приложение для сотрудников розничной сети, которое показывает информацию о товарах по ценнику. Это приложение должно подключаться к серверам, где хранятся данные о товарах и с помощью машинного обучения распознаются фото ценников. Если серверная часть готова, разработать приложение будет проще и дешевле. Если ее нет, придется писать такой функционал и разработка выйдет дороже.
Тестирование. Его стоимость зависит от количества экранов и от функционала приложения.
Чтобы лучше объяснить разницу между недорогим и дорогим приложением, возьмем два примера из нашей практики.
Недорогое: сервис доставки MAU.Market
Нам нужно было за короткий срок работать легкое и удобное мобильное приложение. Все нужные для него функции были простыми и недорогими: каталог, интеграция с картами и интернет-магазином Ленты. Для всего этого есть стандартные решения, так что разработать такое просто. Кроме того, мы сделали приложение кроссплатформенным, что помогло сэкономить еще больше.
Дорогое: Строительный мониторинг застройщика ЦДС
Заказчику нужно было мобильное приложение для контроля строительства и подрядчиков. Приложение получилось дорогим из-за того, что нужны были сложные нестандартные функции: загрузка поэтажных планов из ПДФ, редактирование этих планов, обработка замечаний, синхронизация, формирование отчетов, графики и поддержка офлайн-режима. Все это нельзя было реализовать в кроссплатформенном приложении, так что мы писали два разных кода для iOS и Android. Это и сделало приложение дорогим.
Подробнее об этом мы рассказывали в кейсе у нас на сайте.
Как можно сэкономить
Ниже мы говорим об экономии не в ущерб качеству. Даже если вы сэкономите, вы все равно получите качественное, рабочее и функциональное приложение, удобное для пользователей. Просто приложение не будет идеальным — но зачастую идеал и не нужен.
Не добавлять лишние функции. В приложения часто добавляют функции, которые кажутся крутыми, но на самом деле не нужны. Чтобы минимизировать бюджет, на старте должен быть только критичный функционал, который решает основную задачу приложения. Универсальных советов здесь нет — все зависит от ситуации.
Например, в приложении по доставке еды из супермаркетов обязательно нужна карта, корзина, платежные инструменты, интеграция с интернет-магазином супермаркетов. А вот без отзывов или отображения иконки курьера на карте на старте точно можно обойтись.
Другой пример с приложением застройщика. На старте мы планировали добавить разные слои объектов: с пешеходными дорожками, экстерьером, деревьями или коммуникациями. Эти слои можно было бы включать и отключать. Но по факту оказалось, что этот функционал не нужен: всегда необходимо видеть полную картину, и отключать слои нет смысла. Если бы мы не анализировали поведение пользователей, понять это бы не получилось.
Еще заказчики часто просят добавить в приложение офлайн-режим: чтобы все работало без связи с сервером. На практике такое нужно очень редко, например, если это приложение для инженеров, которые работают в подвале. В остальных случаях ничего страшного не произойдет, если приложение не будет работать офлайн: мобильный интернет есть везде.
Заменять сложные решения простыми. Некоторые функции в приложении не обязательно разрабатывать — можно использовать простые и готовые решения.
Например, многие клиенты хотят, чтобы в приложении был чат. Кажется, что это просто, но на самом деле разрабатывать реально удобный чат достаточно долго, сложно и дорого. Гораздо лучше оставить ссылку на Whatsapp или Telegram и переводить человека туда. Над популярными мессенджерами уже не первый год работают сотни программистов, они поддерживают чат-ботов и легко интегрируются с CRM — и все это почти бесплатно.
Другой пример: оплата прямо в приложении. Ее можно серьезно упростить: сделать оплату через веб-сайт, чтобы окно подтверждения открывалось внутри приложения. Это быстро, удобно для пользователя и гораздо дешевле интеграции с платежными системами.
Даже если вы московская компания, приложение можно заказать в регионе: удаленно подписать договор, общаться и передавать все результаты без личных встреч.
Выбрать не столичное, а региональное агентство. Работа крупных московских агентств стоит дорого: дизайнерам и разработчикам там платят больше. Чтобы сэкономить, лучше обратиться в хорошее региональное агентство — так вы получите приложение за меньшие деньги, но не потеряете в качестве и функционале.
Neti — как раз такая компания. Мы нанимаем программистов и дизайнеров из регионов, платим им больше, чем в среднем получают IT-шники в их городах — и все равно получается дешевле, чем в Москве. В итоге стоимость приложения тоже получается ниже.
Собрать больше материалов для дизайнера. У вашей компании наверняка есть брендбуки, логотипы и другие графические материалы. Многое из них можно использовать в разработке дизайна приложения, чтобы не пришлось все продумывать и рисовать с нуля. Если вы соберете такие материалы заранее и предоставите студии, разработка приложения будет стоить дешевле.
На чем точно нельзя экономить
В разработке есть критичные вещи, на которых экономить нельзя категорически. Из очевидного: базовые функции, без которых приложение не будет работать. Нельзя сделать приложение по доставке еды и не добавить туда корзину.
Но есть четыре вещи, на которых вроде бы сэкономить можно, но мы этого делать не рекомендуем:
Предварительное исследование рынка и потребностей пользователей. Важно обязательно понять, кто целевая аудитория приложения, какой функционал критически важен, как работают приложения конкурентов и какие процессы нужно автоматизировать с помощью приложения. Это стоит денег: может потребоваться провести анкетирование или опрос или заплатить маркетинговому консультанту. Но без этого есть риск создать приложение, в котором будет десяток лишних функций и ни одной нужной.
Важно, чтобы со студией общался не только начальник или менеджер, но и маркетолог, который погружен в задачи проекта и хорошо понимает его целевую аудиторию.
Дизайн. Даже идеальный функционал не сработает, если приложение будет некрасивым и неудобным. Дизайн — лицо приложения, его основа. В дизайне нельзя игнорировать принципы разработки интерфейсов — приложение будет выглядеть дешево и не понравится пользователям.
Тестирование. Чтобы сэкономить, есть соблазн пропустить этот этап: вроде бы все работает, все хорошо, приложение можно выпускать. Но так делать категорически нельзя: в процессе работы могут вскрыться какие-то критические ошибки и дыры в безопасности, которые принесут компании крупные убытки. Да и пользоваться приложением, которое постоянно ломается, никто не будет. Поэтому мы никогда не убираем тестирование из сметы и не рекомендуем на нем экономить.
Краткий чек-лист: что учесть при планировании разработки мобильного приложения, чтобы не переплатить
- Определить, какие функции однозначно нужны, кто ваша аудитория и для чего люди будут использовать приложение.
- Решить, нужна ли разработка приложения отдельно под разные платформы. Чаще всего не нужна — кроссплатформенные приложения отлично решают большинство бизнес-задач.
- Подготовить дизайнерские материалы: брендбуки, логотипы и все, что вы уже используете в маркетинге.
- Обратиться в хорошую, но не обязательно столичную студию — студия из региона поможет неплохо сэкономить.
- Не экономить на дизайне, тестировании и критичных функциях — это должно быть безупречным.