Перейти к основному содержимому

Составляющие стоимости разработки приложения

Основные затраты в разработке программных продуктов приходятся на зарплаты специалистов. Для того, чтобы организовать качественную разработку программного обеспечения, необходимо иметь штат постоянных сотрудников, загрузку которых руководитель проекта в состоянии контролировать. Другими словами, это не случайные разработчики на фрилансе, а сотрудники “на ставке”. В разработке проекта принимает участие, как правило 4-5 человек:

Далее работает обычное умножение и сложение: нам потребуется знать количество времени, потраченное на разработку и умножить его на стоимость часа каждого сотрудника. Однако, встаёт вопрос, как узнать, сколько часов каждого сотрудника уйдёт на проект. Было бы здорово как-то предсказать эти значения более-менее точно и зафиксировать в договоре. Узнать точный расход времени сотрудников заранее, конечно же, невозможно. Но стартовать проект с совершенно неизвестным бюджетом тоже не хочется, нужно его оценить хотя бы примерно.

  • Руководитель проекта / проектировщик;
  • Дизайнер;
  • Разработчики мобильного приложения (обычно их не меньше двух);
  • Разработчик серверной части (back-end);
  • Тестировщик.

Как оценить затраты на разработку с высокой точностью?

Здесь нам помогут методы оценки, напоминающие численные методы математики. Попробуем раздробить проект на завершённые части (этапы, итерации, спринты). А эти части ещё на более мелкие кусочки — на задачи. Каждая задача — это какая-то небольшая завершённая часть работ, которую можно более-менее точно оценить в часах. Обычно такая задача занимает 4-20 часов на выполнение. Оценку удобно делать отдельно по участию каждого из сотрудников (мобильный разработчик, программист серверной части, дизайнер и т д).

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

Особенности оценки android-приложений

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

Однако, под управлением Android есть огромный зоопарк разнообразных экзотических устройств со своими собственными кастомизированными прошивками. Довольно часто эти прошивки не получают дальнейшее обновление системы и застывают навечно в какой то определённой версии андроида, например 4.4. Последняя версия Android имеет уже номер 9 и разработчики, в основном, ориентируются на неё и 1-2 предыдущие версии т.е. Android 9,8,7. В большинстве случаев всё корректно работает также и на более ранних версиях: 6 и 5. Версии Android ранее, чем 4.4 имеют уже более существенные отличия. Поддержка этих версий может потребовать отдельной версии приложения или существенных изменений в приложении.

Что влияет на цену iOS-приложений

Apple имеет достаточно строгие правила модерации и в некоторых случаях для одобрения приложения потребуется здорово постараться и дополнительно поработать. Например, очень большое внимание уделяется подключенным системам оплаты: если вы продаёте электронные товары или подписки, то вам обязательно потребуется подключить механизм оплаты «In App Purchases» (встроенные покупки) с комиссией в 30% и модератор будет его тщательно тестировать и может отправлять на переделку несколько раз.

Как уменьшить стоимость создания приложения

Найти дешёвых и хороших программистов уже давно стало нереально, ввиду того, что значительная их часть уехала из страны, а оставшиеся работают удалённо на запад или работают на достаточно высоких зарплатах. В общем, вариант «как-нибудь сделать всё тоже самое, но сильно дешевле» отпадает. 

Другие способы снизить затраты на разработку

Начать запуск с MVP

минимальной версии приложения, которая будет обладать только самым необходимым функционалом. Все второстепенные функции делаем позже;

Кроссплатформенные технологии

Этот приём уже давно успешно работает в разработке игр. Практически все игры пишутся сразу кроссплатформенно. Для разработки обычных приложений наиболее живой технологией в данный момент является ReactNative от компании Facebook;

Планировать стартап со стороны программирования

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