Перейти к содержимому
Блог · Разработка

Разработка веб-приложения: от идеи до продакшена

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

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

Бизнес-контекст выбора архитектуры

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

  • Количество и сложность ролей — сколько разных типов пользователей и как пересекаются их права
  • Бизнес-логика — расчёты, статусы, условные переходы, версионирование данных
  • Отчёты и аналитика — от простой таблицы до агрегаций по сложным фильтрам
  • Интеграции — обмен с 1С, CRM, SSO, платёжными и почтовыми сервисами
  • Требования к безопасности — шифрование, аудит действий, соответствие 152-ФЗ

Поэтому смету считают не по числу макетов, а по пользовательским сценариям (user stories) и ограничениям MVP — это позволяет заранее увидеть, где логика простая, а где придётся закладывать недели на тестирование граничных случаев.

Trade-offs: скорость vs гибкость

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

ЭтапСрокЧто происходит
Погружение1–2 неделиФиксируем задачу, риски и критерии успеха
Проектирование1–3 неделиСогласуем структуру, роли, данные и интеграционный контур
Дизайн2–4 неделиСоздаём интерфейс и проверяем сценарии в прототипе
Разработка3–16 недельСобираем приложение спринтами с демо каждую неделю
Запуск1–2 неделиТестируем роли и интеграции, переносим данные, обучаем команду
РазвитиеПосле запускаОтслеживаем использование ролей и дорабатываем сценарии

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

Когда хватает простого контура

Ориентир по бюджету обычно раскладывается на три уровня — от закрытия одного ключевого сценария до продукта с расширенной аналитикой и нагрузочным тестированием.

УровеньБюджетСрокЧто входит
Основаот 450 000 ₽10–14 недельКлючевой сценарий, UX-прототип, адаптивная разработка, тестирование перед запуском
Ростот 710 000 ₽14–22 неделиВсё из «Основы» + интеграции с сервисами, расширенная аналитика, подготовка команды клиента
Масштабот 1 200 000 ₽22–32 неделиВсё из «Роста» + нагрузочное тестирование, роли и безопасность, план развития продукта

Итоговая оценка всегда зависит от интеграций и объёма данных — состав работ фиксируется до старта проекта, а не оценивается «на глаз» по количеству страниц в брифе. Это касается любого уровня бюджета: правило одинаково и для MVP, и для масштабного продукта с несколькими ролями.

Когда нужна более сложная схема

Выбор технологий должен следовать за ограничениями проекта, а не за модой. Чаще всего для интерфейса подходит React/Next.js или Vue/Nuxt, для сервера — Node.js, Python или .NET, а PostgreSQL остаётся основной базой данных для большинства бизнес-приложений. Если в компании уже есть сильная команда на другом стеке — например, на PHP — иногда рациональнее остаться в этой экосистеме, чем платить за смену технологии без функциональной выгоды.

Как мигрировать без простоя

Не всегда, и это стоит проверять до включения мобильной разработки в смету. Сначала имеет смысл убедиться, что адаптивного веба достаточно для сценариев пользователя. Нативное или React Native приложение оправдано, когда есть офлайн-режим, push-уведомления, интенсивная работа с камерой или геолокацией, либо аудитория привыкла работать «только в приложении». Во всех остальных случаях второй клиент — это дополнительные затраты без прироста ценности, и его разработку разумнее вынести во вторую очередь проекта.

Практический вывод

Часть перерасхода бюджета на веб-приложениях объясняется не сложностью продукта, а качеством решения о выборе команды на старте.

  1. Фиксированная цена без зафиксированного scope — смета «поплывёт» при первом изменении требований
  2. Пропуск этапа проектирования ролей и данных — экраны рисуют раньше, чем понятна логика
  3. Отсутствие еженедельных демо — о срыве сроков узнают постфактум, а не по ходу спринта
  4. Выбор стека под резюме команды, а не под нагрузку и требования интеграций
  5. Нет ясности по передаче кода и доступов при завершении или разрыве контракта

Подробный разбор критериев и красных флагов при выборе digital-подрядчика — в материале «Как выбрать IT-подрядчика»: большинство пунктов оттуда напрямую применимо и к разработке веб-приложений.

Роли, безопасность и 152-ФЗ

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

FAQ

Частые вопросы

Сколько по времени занимает разработка веб-приложения?

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

Что входит в стоимость на старте проекта?

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

Можно ли уложиться в бюджет меньше уровня «Основа»?

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

Кто должен выбирать технологический стек — заказчик или подрядчик?

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

Как проверить, что подрядчику можно доверить данные приложения?

Смотрите на процесс, а не на обещания: есть ли модель угроз на этапе проектирования, прописана ли в договоре передача кода и доступов, ведётся ли аудит критичных действий. Подрядчик, который сразу закладывает роли и безопасность в архитектуру, снижает риски заметно лучше, чем тот, кто обещает «добавить это потом».

Что происходит с веб-приложением после запуска?

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

Следующий шаг

Спланируем
веб-приложение вместе.

На первой встрече разберём рабочий процесс, риски и состав первой версии.