Главная/Блог/Разработка/Техническое задание на сайт: что в нём должно быть

Техническое задание на сайт: что в нём должно быть

Техническое задание на сайт: что в нём должно быть

Техническое задание — документ, который многие считают формальностью. Подписали, положили в папку и забыли. А потом, на этапе сдачи проекта, выясняется, что заказчик представлял себе каталог с фильтрами, а разработчик сделал простой список товаров. И оба правы, потому что в ТЗ было написано одно слово: «каталог».

Мы в студии относимся к техническому заданию как к инструменту, который защищает обе стороны. В нём фиксируется, что именно делается, как это работает и по каким признакам работа считается выполненной. Ниже — разбор разделов, которые должны быть в нормальном ТЗ, с примерами формулировок, которые работают, и тех, которые создают проблемы.

Зачем вообще нужен этот документ

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

Хорошее ТЗ даёт несколько практических преимуществ:

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

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

Цели, структура и описание страниц

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

Общие сведения и цели проекта

Начинается документ с контекста. Кратко описывается компания, её продукт или услуги, целевая аудитория и, главное, цели сайта. Не «сделать современный сайт», а конкретные бизнес-задачи.

Плохо: «Сайт должен быть красивым, современным и удобным».
Хорошо: «Основная цель сайта — получение заявок на расчёт стоимости монтажа от частных клиентов Москвы и области. Второстепенная — информирование действующих клиентов о сервисном обслуживании».

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

Структура сайта

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

Пример фрагмента структуры корпоративного сайта:

  • Главная
  • Услуги
    • Страница отдельной услуги (шаблон, около 15 страниц)
  • Портфолио
    • Карточка проекта (шаблон)
  • О компании
  • Блог
    • Статья (шаблон)
  • Контакты

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

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

Описание страниц и блоков

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

  1. Хлебные крошки.
  2. Галерея фотографий: до 10 изображений, увеличение по клику, листание свайпом на мобильных.
  3. Название, артикул, наличие на складе (данные из учётной системы).
  4. Цена, старая цена при наличии скидки.
  5. Кнопка «В корзину», выбор количества.
  6. Табы: описание, характеристики, документы для скачивания.
  7. Блок «С этим товаром покупают» — подбор вручную в админке.

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

Функциональные требования

Самая объёмная и самая важная часть. Здесь описывается, что сайт делает, а не как выглядит. Каждая функция должна быть описана так, чтобы её можно было проверить.

Как описывать функцию

Мы используем простую схему: кто выполняет действие, что происходит, какой результат, что в случае ошибки.

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

Сравните с формулировкой «на сайте должна быть форма обратной связи». Во втором случае каждый поймёт её по-своему.

Что обычно попадает в функциональные требования

  • Формы и их обработка.
  • Поиск по сайту: по каким полям, с подсказками или без.
  • Фильтры и сортировка в каталоге.
  • Корзина, оформление заказа, способы оплаты и доставки.
  • Личный кабинет: регистрация, авторизация, восстановление пароля, история заказов.
  • Калькуляторы и конфигураторы.
  • Мультиязычность, выбор региона.
  • Уведомления: кому, когда и по какому каналу.

Интеграции, админка и нефункциональные требования

Интеграции и административная часть

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

  • с какой системой связываемся;
  • какие данные передаются и в каком направлении;
  • как часто происходит обмен — в реальном времени или по расписанию;
  • кто со стороны заказчика предоставляет доступы и документацию к API.

Отдельно описываются возможности админки: какие разделы редактируются, какие роли пользователей нужны (например, контент-менеджер видит только статьи и новости, а администратор — всё), какие отчёты или выгрузки требуются.

Нефункциональные требования

Это то, что не видно пользователю напрямую, но сильно влияет на качество сайта:

  • Адаптивность. Список разрешений и устройств, на которых проверяется вёрстка.
  • Браузеры. Актуальные версии основных браузеров, нужна ли поддержка устаревших.
  • Скорость. Целевые показатели загрузки ключевых страниц.
  • SEO-требования. Управление мета-тегами, ЧПУ, редиректы, микроразметка, sitemap.
  • Безопасность. SSL, защита форм от спама, резервное копирование.
  • Аналитика. Какие счётчики устанавливаются, какие цели настраиваются.
  • Хостинг. Где будет размещён сайт и кто отвечает за сервер.

Контент и порядок приёмки

Отдельно стоит зафиксировать, кто готовит тексты, фотографии и другие материалы. Это одна из главных причин срыва сроков: сайт готов, а наполнять его нечем. В ТЗ указываем, что предоставляет заказчик, что готовит студия и в какие сроки.

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

Чего в ТЗ быть не должно

Есть формулировки, которые выглядят как требования, но ничего не значат:

  • «Удобный интерфейс», «современный дизайн», «быстрая работа» без конкретных критериев.
  • «И так далее», «и прочее», «аналогично» — каждое такое слово скрывает неописанный объём работ.
  • Ссылки на чужие сайты без пояснений: «сделать как здесь». Что именно «как здесь» — цвет, структуру, функциональность?
  • Требования, противоречащие друг другу в разных разделах.

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

Кто пишет ТЗ

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

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

Вывод

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

← Предыдущая статьяВебвизор и карты кликов: что они расскажут о сайте

Обсудить проект

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