Хорошее техническое задание на приложение отвечает на пять вопросов: для кого создаётся продукт, какую задачу решает, что входит в первую версию, с какими данными и системами она работает, как стороны проверят результат. Документ не обязан заранее описывать каждую техническую деталь. Его задача состоит в том, чтобы убрать опасные разночтения и сделать объём работы проверяемым.

Начните с короткой версии на 5–10 страниц, таблицы сценариев и списка открытых вопросов. После обсуждения с командой её можно дополнить прототипом, моделью данных и техническими решениями. Такой порядок полезнее, чем большой документ, в котором бизнес-цель теряется среди экранов и кнопок.

Бриф, PRD, ТЗ и user story: что выбрать?

ДокументНа какой вопрос отвечаетКогда нужен
БрифЧто за задача и почему ею занимаемсяПервое знакомство и предварительная оценка
PRDКакой продукт нужен пользователю и бизнесуСогласование цели, функций и границ продукта
Техническое заданиеЧто должно работать и как это проверитьПроектирование, оценка, договор и приёмка
User storyЧто конкретный пользователь хочет сделатьДекомпозиция сценариев для разработки

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

Структура ТЗ на разработку приложения

  1. Контекст и проблема. Как процесс работает сейчас, где возникают потери и почему изменение нужно именно теперь.
  2. Цель и метрика. Измеримый результат: сократить время операции, снизить число ошибок, увеличить долю завершённых заявок.
  3. Пользователи и роли. Кто работает с системой, что видит, создаёт, согласует и администрирует.
  4. Границы версии. Что входит в работу, что выполняется вручную и что перенесено в следующие этапы.
  5. Пользовательские сценарии. Пошаговый маршрут от события до результата, включая ошибки и возврат к предыдущему шагу.
  6. Данные. Сущности, обязательные поля, источники, сроки хранения, поиск и история изменений.
  7. Интеграции. CRM, 1С, платёжные системы, почта и другие сервисы: направление обмена, частота и поведение при сбое.
  8. Бизнес-правила. Расчёты, статусы, лимиты, уведомления и условия перехода между этапами.
  9. Нефункциональные требования. Нагрузка, доступность, устройства, безопасность, журналирование и резервное копирование.
  10. Критерии приёмки. Наблюдаемые условия, при которых функция считается выполненной.

Пример: сервис обработки заявок

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

Слабая формулировкаПроверяемая формулировка
Сделать удобную формуПользователь отправляет имя, телефон и тип услуги за один экран; обязательные поля проверяются до отправки
Интегрировать с CRMПосле отправки система создаёт сделку в выбранной воронке, сохраняет источник и не создаёт дубль при повторном запросе
Быстро уведомлять менеджераОтветственный получает сообщение не позднее 60 секунд после успешного создания сделки
Обеспечить безопасностьОператор видит только назначенные заявки; действия входа, просмотра и изменения статуса записываются в журнал
Сделать красивый кабинетМакеты для мобильной и настольной ширины согласуются отдельно; интерфейс поддерживает перечисленные состояния

Основной сценарий можно записать так: клиент отправляет заявку, система проверяет поля, создаёт карточку, назначает менеджера и отправляет подтверждение. Затем добавляются альтернативы: CRM недоступна, телефон уже существует, ответственный отсутствует, клиент исправляет данные.

Что делать, если часть требований неизвестна?

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

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

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

Как написать критерии приёмки?

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

  1. 01

    Основной случай

    Пользователь проходит весь маршрут с корректными данными.

  2. 02

    Граничные значения

    Пустые поля, лимиты, повторные операции и одновременные изменения.

  3. 03

    Сбой зависимости

    Внешняя система недоступна, отвечает медленно или возвращает ошибку.

  4. 04

    Права доступа

    Каждая роль видит и меняет только разрешённые данные.

  5. 05

    Восстановление

    Понятно, что произойдёт после повтора запроса или возврата сервиса.

Семь ошибок в техническом задании

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

Что передать исполнителю вместе с ТЗ?

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

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

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

Кто должен писать техническое задание?

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

Можно ли начать без готового ТЗ?

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

Нужно ли описывать каждую кнопку?

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

Можно ли менять ТЗ после начала разработки?

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

Чем ТЗ отличается от договора?

ТЗ описывает предмет и проверяемый результат работы. Договор определяет юридические условия: оплату, сроки, права, ответственность, порядок изменений и приёмки. Документы дополняют друг друга.

Источники и границы материала

  1. Atlassian: как составить Product Requirements Document
  2. Atlassian: шаблон продуктовых требований
  3. ISO/IEC/IEEE 29148: requirements engineering

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

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

Превратите идею в проверяемый контур

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

← Все статьи