Классическая история из мира корпоративной веб-разработки: генеральный директор выделяет солидный бюджет на создание нового B2B-портала. Маркетолог пишет документ на 3 страницы с названием «Требования к сайту», где указывает, что сайт должен быть «современным», «продающим» и «интегрированным с 1С». Агентство берет проект в работу, спустя 4 месяца сдает результат. И тут начинается кошмар.

Оказывается, что "интеграция с 1С" в понимании агентства - это ручная выгрузка Excel-файла раз в сутки. А в понимании заказчика - это обмен в реальном времени с учетом трех разных типов цен для дилеров. Начинается конфликт, взаимные обвинения, проект уходит в долгострой, а бюджет раздувается в два раза.

Корень зла: «Бриф» вместо Технического Задания

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

Техническое задание (ТЗ) - это юридический и архитектурный документ, который описывает не "ЧТО" должен делать сайт, а "КАК" он должен работать под капотом, какие базы данных использовать и как обрабатывать исключительные ситуации (ошибки пользователя).

ТЗ не пишется бесплатно. Это результат этапа аналитики, который занимает от 2 до 6 недель и оплачивается отдельно. Если агентство готово взять в разработку B2B-портал за 5 миллионов рублей без оплачиваемой предпроектной аналитики - бегите. Вы станете спонсором их экспериментов.

Разница между плохим и хорошим ТЗ

Формулировка заказчика (в Брифе) Формулировка архитектора (в ТЗ)
«Поиск должен быть умным и искать по всему каталогу». «Реализация поиска на базе Elasticsearch. Поиск осуществляется по полям: Название (вес 10), Артикул (вес 15), Бренд (вес 5). Допустимо до 2 опечаток. Результаты выдаются в формате выпадающего списка с миниатюрами (до 5 элементов) с задержкой 300мс после ввода».
«Нужна интеграция цен с 1С». «Двусторонний обмен через REST API. 1С - мастер-система. Выгрузка типов цен (Опт, Розница, Дилер) происходит каждые 30 минут инкрементарно (только измененные узлы). При авторизации на сайте скрипт проверяет группу пользователя и применяет соответствующий тип цен к товарам в корзине».
«Сайт должен быстро работать». «Время ответа сервера (TTFB) не должно превышать 400мс. Метрика LCP (Largest Contentful Paint) на мобильных устройствах не более 2.5 секунд при 3G-соединении (проверка через Google Lighthouse)».

Структура правильного ТЗ на разработку портала

Чтобы документ защищал вас в суде и был понятен программисту, он должен содержать следующие обязательные разделы.

1. Глоссарий терминов

В B2B-разработке одни и те же слова значат разное. Например, "Личный кабинет дилера" для вас - это портал с заказами и документами. А для менеджера агентства - это просто страница с формой обратной связи. Все термины (Лид, Товарное предложение, SKU, Авторизация) должны быть расшифрованы на первой странице.

2. Архитектура баз данных (ER-диаграмма)

Документ должен описывать, какие сущности существуют в системе и как они связаны. У товара может быть несколько категорий? У пользователя может быть несколько компаний-юридических лиц (для выставления счетов)? Если это не заложить на уровне архитектуры БД в самом начале, переделать это потом будет стоить миллионы.

3. Спецификация API и интеграций

Около 70% бюджета сложных проектов сгорает на интеграциях. В ТЗ должно быть четко прописано:

  • С какими внешними системами идет обмен (1С, amoCRM, МойСклад, логистические службы).
  • В каком формате передаются данные (JSON, XML).
  • Кто инициирует запрос (сайт дергает 1С или 1С пушит на сайт).
  • Сценарии обработки ошибок (что делает сайт, если сервер 1С недоступен в момент оформления заказа).

4. Сценарии использования (Use Cases)

Просто нарисовать макеты страниц недостаточно. Программист должен понимать логику переходов. Описание сценария выглядит так: "Пользователь нажимает кнопку [Оформить]. Если сумма заказа < 50 000 руб, показывается ошибка [Минимальная сумма]. Если условия выполнены, сайт отправляет POST-запрос в CRM, переводит статус корзины в [Ожидает оплаты] и перенаправляет на страницу [Успех]".

Ошибки заказчиков при согласовании ТЗ

Многие руководители со стороны клиента не читают ТЗ, потому что оно написано "слишком техническим языком". Они пролистывают 100 страниц текста, смотрят на красивые прототипы в конце и подписывают документ. Это фатальная ошибка.

Техническое задание - это ваш контракт. Если вы подписали документ, в котором написано "интеграция 1С раз в сутки", вы не сможете требовать от программистов обмена в реальном времени, даже если вам это критично нужно для бизнеса. Поэтому, если в вашей компании нет сильного IT-директора (CTO), нанимайте независимого технического консультанта для приемки ТЗ у агентства.

Нужна надежная B2B-разработка?

В LavrAgency процесс создания технического задания - это не формальность, а фундамент. Наши архитекторы погружаются в ваши бизнес-процессы, изучают структуру вашей 1С и пишут документацию, по которой можно построить бесперебойный e-commerce продукт. Если вам нужен предсказуемый результат без переплат на этапе разработки, оставьте заявку на проектирование.

Заказать разработку портала