Какие риски возникают при разработке сайта без ТЗ?
Без согласованного ТЗ чаще всего возникают:
-
споры о том, какие функции входят в первоначальную задачу;
-
доработки уже созданного дизайна и кода;
-
неучтённые роли пользователей, данные и интеграции;
-
задержки из-за решений, принятых слишком поздно;
-
сложности с приёмкой результата;
-
зависимость сайта от устных договорённостей и переписки.
ТЗ не обязательно должно быть большим документом на десятки страниц. Его задача — зафиксировать ключевые сценарии, границы первого запуска, данные, роли пользователей и критерии результата. Если этого нет, команда вынуждена принимать бизнес-решения в процессе разработки.
В Ameton не рекомендуем начинать программирование, пока не понятно, что именно должен сделать пользователь на сайте и какой результат должен получить бизнес. Это не замедляет проект: ранняя проработка обычно уменьшает объём переделок после начала работ.
Без ТЗ стороны по-разному понимают, какой сайт нужно создать
Самый частый риск отсутствия ТЗ — разное понимание результата. Заказчик может считать, что «личный кабинет» включает персональные цены, документы и историю заказов. Подрядчик может предполагать, что речь только об авторизации и странице профиля.
Проблема возникает не из-за недобросовестности одной из сторон. Обычные слова в веб-разработке скрывают много деталей:
|
Формулировка |
Что может иметь в виду заказчик |
Что может предположить подрядчик |
|
Каталог |
Полный ассортимент с актуальными ценами и фильтрами |
Несколько разделов с карточками товаров |
|
Интеграция с 1С |
Товары, цены, остатки, заказы и статусы |
Базовая выгрузка товаров |
|
Личный кабинет |
Документы, цены, заказы и роли пользователей |
Авторизация и профиль |
|
Интернет-магазин |
Полный процесс покупки и обработки заказа |
Каталог, корзина и форма оформления |
|
Поддержка сайта |
Обновления, исправления и развитие |
Реакция на отдельные заявки |
Если функция не описана, её сложно оценить, реализовать и принять. Чем раньше стороны согласуют смысл ключевых слов, тем меньше риск, что готовая работа окажется «не тем, что ожидали».
Без ТЗ бюджет и сроки становятся менее управляемыми
ТЗ помогает отделить согласованный объём работ от новых идей, появившихся по ходу проекта. Без этой границы каждая дополнительная функция выглядит как продолжение первоначальной задачи, хотя может потребовать отдельного проектирования, разработки и тестирования.
Если в процессе появляется новая роль пользователя, команда должна изменить не только одну страницу. Может потребоваться пересмотреть права доступа, данные в личном кабинете, уведомления, интеграции и сценарии проверки.
Если каталог нужно получать из учётной системы, а этот вопрос не был описан заранее, срок сдвигается не из-за «сложности Битрикса». Сначала нужно определить структуру данных, источник цен и остатков, правила обновления и обработку ошибок.
|
Подход |
Что происходит с бюджетом и сроком |
Ограничение |
|
Начать без ТЗ |
Старт может казаться быстрым |
Неопределённость переносится в разработку |
|
Согласовать ключевые сценарии |
Понятен состав первого запуска |
Нужна предварительная аналитика |
|
Разделить проект на этапы |
Новые функции оцениваются отдельно |
Нужно определить архитектурные зависимости |
|
Включать всё по ходу работы |
Появляется ощущение гибкости |
Сложнее контролировать приоритеты и объём |
Гибкость не означает отсутствие договорённостей. Хорошее ТЗ можно дополнять, но каждое изменение должно быть видно: что добавляется, на что влияет и как меняет план.
Интеграции без ТЗ создают риск ошибок в данных
Интеграция с 1С, CRM, оплатой или доставкой требует больше, чем технического подключения. Команда должна понимать, какие данные передаются, какая система считается источником информации и что произойдёт при ошибке.
Если в ТЗ не зафиксировано, откуда сайт получает цены, то пользователь может увидеть неактуальное значение. Если не описано, как повторно передаётся заказ, есть риск создать дубль. Если не определены роли сотрудников, документы могут оказаться доступны не тем пользователям.
Пример из практики Ameton: компания хотела вывести на сайте цены из учётной системы. В ходе разработки выяснилось, что для разных клиентов действуют разные условия, а часть цен зависит от статуса партнёра. Команда остановила реализацию до уточнения правил: какие цены являются основными, кто видит персональные условия и как обновляются данные. Без этого решения сайт мог бы технически загрузить цены, но показывать клиентам неверную коммерческую информацию.
ТЗ для интеграции должно описывать не только передачу данных, но и ожидаемый бизнес-результат. Например: заказ должен попасть в учётную систему, получить статус и корректно отобразиться в личном кабинете клиента.
Дизайн без сценариев быстро превращается в переделку
Дизайн нельзя качественно согласовать, если неизвестно, что должен делать пользователь. Макет может выглядеть убедительно, но не учитывать поиск товара, оформление заказа, ошибки формы, роль пользователя или работу на разных устройствах.
Если в проекте нет ТЗ, дизайнер и разработчик могут получить разные вводные. Дизайнер подготовит красивую карточку товара, а затем окажется, что в ней нужны персональные цены, несколько складов, документы и действия для разных ролей. Внесение таких изменений после вёрстки обходится сложнее, чем их учёт до начала разработки.
Сначала нужно определить сценарий, затем интерфейс, затем реализацию. Этот порядок помогает избежать ситуации, когда бизнес-правило приходится добавлять в уже утверждённый дизайн.
В Ameton сначала фиксируем не набор экранов, а путь пользователя: что он видит, какое решение принимает, какие данные получает и каким действием завершает сценарий. После этого дизайн становится не украшением сайта, а инструментом для выполнения задачи.
Без критериев приёмки сложно понять, готова ли работа
ТЗ должно содержать признаки готового результата. Иначе заказчик проверяет сайт по общему впечатлению, а подрядчик — по выполненному списку задач. Эти подходы могут не совпадать.
|
Функция |
Слабый критерий |
Проверяемый критерий |
|
Форма заявки |
Форма готова |
Заявка отправляется, приходит ответственному сотруднику и содержит нужные данные |
|
Каталог |
Товары загружены |
Товары, свойства, цены и фильтры отображаются по согласованным правилам |
|
Заказ |
Корзина работает |
Пользователь оформляет заказ, получает уведомление, а заказ передаётся в нужную систему |
|
Личный кабинет |
Есть авторизация |
Каждая роль видит только разрешённые ей разделы, цены и документы |
|
Интеграция |
Обмен настроен |
Данные передаются без дублей, ошибки фиксируются и могут быть обработаны |
Проверяемый критерий защищает обе стороны. Заказчик заранее понимает, что получит, а подрядчик знает, какой результат нужно обеспечить.
Если критерии появляются только в конце проекта, команда может обнаружить, что важные сценарии не были реализованы или проверены. Тогда запуск превращается в этап срочных доработок.
Начать без готового ТЗ можно, но не без аналитики
Разработка без готового ТЗ допустима, если первым этапом проекта становится аналитика и подготовка этого документа. Нельзя безопасно начинать с кода, когда ключевые сценарии ещё не определены.
|
Формат старта |
Когда подходит |
Что получает заказчик |
|
Есть готовое ТЗ |
Требования уже собраны и согласованы |
Оценку разработки и план запуска |
|
Аналитический этап |
Задача понятна в общих чертах, но деталей нет |
Сценарии, структура, требования и план работ |
|
Быстрый типовой запуск |
Сайт простой, функции ограничены |
Базовый результат с минимальной логикой |
|
Разработка «по ходу» |
Не рекомендуется для бизнес-критичного сайта |
Высокий риск переделок и споров |
Аналитика не должна превращаться в формальность. Её результатом должны стать решения, на которые сможет опираться разработка: состав первого запуска, схема ролей, данные, интеграции, ограничения и критерии приёмки.
Если сайт уже существует и его нужно развивать, вместо полного ТЗ может потребоваться технический аудит. Он помогает понять, какие доработки уже есть, с какими системами связан сайт и что нельзя нарушить при следующих изменениях. Подробнее – в статье Зачем нужен аудит сайта на 1С-Битрикс перед стартом поддержки?
Что нужно зафиксировать до начала разработки
Перед стартом не обязательно описывать каждую кнопку, но нужно согласовать решения, которые определяют архитектуру и объём работ.
Проверьте, что в ТЗ есть:
-
цель сайта и ключевые действия посетителей;
-
состав функций первого запуска;
-
роли пользователей и правила доступа;
-
структура каталога, если он нужен;
-
источники товаров, цен, остатков, заявок и заказов;
-
необходимые интеграции;
-
состав контента и ответственность за его подготовку;
-
сценарии проверки и критерии приёмки;
-
ограничения проекта и функции следующих этапов.
ТЗ должно быть достаточно подробным, чтобы команда могла реализовать и проверить ключевые функции, но достаточно гибким, чтобы бизнес мог развивать проект поэтапно. Не стоит пытаться предсказать каждую будущую доработку — важно создать понятную основу для их оценки.
Для сайта на 1С-Битрикс ТЗ особенно важно, если проект должен расти. Чем раньше определены данные, роли и интеграции, тем проще добавлять новые функции без перестройки уже работающего сайта.
Отсутствие ТЗ не делает разработку невозможной, но почти всегда переносит важные решения на самый дорогой этап — когда дизайн и код уже созданы. Риск возникает не из-за самого документа, а из-за отсутствия общего понимания того, что должен делать сайт.
Хорошее ТЗ превращает идею сайта в управляемый план: с функциями первого запуска, границами ответственности и проверяемым результатом. Ameton может начать проект с аналитики, чтобы собрать сценарии, данные и требования до оценки разработки и запуска.