Этапы разработки мобильных приложений

Эта статья поможет получить общее представление о процессе создания приложения.

Есть 7 этапов разработки приложений:

  1. Продуктовая аналитика.
  2. Спецификация и вайрфреймы.
  3. Оценка и планирование.
  4. Дизайн.
  5. Программирование.
  6. Тестирование.
  7. Запуск приложения.

Взглянем на каждый этап: его задачи, результат, сроки и стоимость.

1. Продуктовая аналитика

Как правило, в начале есть представление или «видение» продукта. Однако нет формализации, достаточной для старта разработки.

Задача этапа — определить и формализовать:

  • ЦА;
  • Задачу продукта, KPI;
  • Ценность продукта для ЦА, УТП;
  • Продуктовые гипотезы: верхнеуровневое описание функционала.

Сначала ставят задачу продукта: например, продавать подписку или сопутствующий товар. Далее анализируют рынок и конкурентов, включая непрямых. Формулируют ответ на вопрос «Почему этим продуктом будут пользоваться?». Наконец, описывают видение продукта, принципы и механики его работы. Формируется MVP (минимально жизнеспособный продукт).

Сроки и стоимость аналитики зависят от продукта и рынка. Как правило, от 100 человекочасов, или от 1 месяца.

2. Спецификация и вайрфреймы

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

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

  • Логику системы, пользовательские механики;
  • Требования к безопасности, надежности, документированию;
  • Требования к пользовательскому интерфейсу;
  • Материалы для наполнения сервиса.

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

Пример спецификации мобильного приложения (3 отрывка)

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

Пример вайрфреймов мобильного приложения

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

Сроки и стоимость этапа зависят от объема требований, полученных в результате продуктовой аналитики. Как правило, от 100 человекочасов, или от 1 месяца.

3. Оценка и планирование

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

  • Объем работ — краткое описание структуры мобильного приложения;
  • Трудозатраты в часах по специалистам;
  • Стоимость работ;
  • Сроки реализации;
  • Риски с вероятностью их наступления и мерами по предотвращению.

Как правило, на это уходит 3 дня.

4. Дизайн

Задача этапа — создать дизайн приложения, который наиболее эффективно работает на задачу продукта (п. 1). А именно разрабатывается:

  1. Дизайн-концепция,
  2. Набор компонентов интерфейса (UI-кит),
  3. Дизайн-макеты,
  4. Интерактивные прототипы.

Сначала создают дизайн-концепцию. Она отображает стилистику и общее настроение.

Пример дизайн-концепции мобильного приложения и сайта доставки еды

Далее разрабатывают UI-кит: кнопки, поля, формы. Повторное использование готовых элементов позволяет ускорить создание дизайна. Затем прорабатывают все экраны приложения, включая различные состояния: например, при наличии или отсутствии данных. Финальным этапом добавляется анимации интерфейса для взаимодействия с пользователями и «оживления» приложения.

По срокам и стоимости: как правило, уходит от 80 человекочасов (от 2 недель).

5. Программирование

Задача этапа — реализовать продукт.

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

Сроки и стоимость, если приложение программируется с нуля, — обычно от 160 человекочасов (от 1 месяца).

6. Тестирование

Задача этапа — обеспечить качество продукта: отказоустойчивость, надежность, безопасность.

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

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

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

Касательно сроков и стоимости, обычно уходит не менее 40 человекочасов (1 недели).

7. Запуск приложения

Сборка проекта загружается в магазин приложений. AppStore и Google Play для платформ iOS и Android соответственно.

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

Проект разворачивается на «боевом» сервере. Для обеспечения бесперебойной работы приложения, настраивают систему мониторинга.

Этапы создания приложений — резюме

Суммарно все этапы занимают от 4 месяцев, стоят порядка 1 млн рублей и выше.

Каждый этап разработки мобильных приложений — важный.

Чтобы получить такую широкую экспертизу, нужна команда из узких специалистов: продуктового аналитика, дизайнеров, программистов, QA-специалистов.