Генератор

Техническое задание: пример и шаблон для разработки с ИИ

Редакция ProtoSpec · проверено: 03.11.2026

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

Техническое задание (ТЗ) — документ, в котором записано, что нужно сделать, в каких границах и как проверить, что работа готова. Ниже — шаблон ТЗ на разработку сайта, веб-сервиса или отдельной функции и пример его заполнения. Шаблон подходит и для исполнителя-человека, и для ИИ-агента вроде Cursor или Claude Code: и тем и другим нужны одни и те же вещи — цель, границы и проверяемый результат.

Если нужен процесс (с чего начать, какие вопросы задать заказчику, как проверить готовое ТЗ), читайте как написать ТЗ. Если ТЗ сразу пойдёт кодинг-агенту, есть короткая версия для нейросети.

Из чего состоит ТЗ на разработку#

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

Разделы 1 и 8 нужны в первую очередь людям: договориться о сроках и оплате. Разделы 4, 7 и 9 особенно важны для ИИ-агента: без них он додумывает сам.

Шаблон ТЗ: скопируйте и заполните#

В квадратных скобках — что заменить. Строки с > — подсказки, их можно удалить.

md
# Техническое задание: [название проекта]

## 1. Общие сведения
- Проект: [название, одна фраза о нём]
- Заказчик: [имя / компания]
- Исполнитель: [имя / студия / ИИ-агент под контролем разработчика]
- Версия ТЗ и дата: [1.0, дд.мм.гггг]
- Срок: [дата или «по этапам», см. раздел 8]

## 2. Цель
> Одна-три фразы. Что появится и что изменится для бизнеса или пользователя.
[...]

## 3. Пользователи и сценарии
> Роли и что каждая делает по шагам. Сценарий = действие → результат.
Роль [название]:
- [действие] → [что видит или получает]

## 4. Функции
Входит:
- [функция]
Не входит (в этой версии):
- [что не делаем, даже если кажется логичным]

## 5. Данные
- [Сущность]: [поля, обязательные отмечены *]
- Откуда берутся: [ввод пользователя / импорт / API]
- Где хранятся: [база, файл, сторонний сервис]

## 6. Интерфейс
> Экраны по порядку. Для каждого: содержимое, состояния (пусто, ошибка, загрузка), мобильная версия.
1. [Экран]: [содержимое]

## 7. Технические требования
- Стек: [язык, фреймворк, база]
- Хостинг и домен: [...]
- Интеграции: [платёжка, почта, мессенджер, CRM]
- Безопасность: [доступы, хранение паролей, ключи только в переменных окружения]
- Ограничения: [без новых зависимостей без согласования / бюджет на сервисы]

## 8. Этапы
| № | Этап | Результат этапа | Срок |
|---|---|---|---|
| 1 | [этап] | [что сдаётся] | [дата] |

## 9. Критерии приёмки
> Только проверяемое: сценарий, команда, видимый результат.
- [сценарий]: [ожидаемый результат]

## 10. Открытые вопросы
- [вопрос] — кто решает: [...], до: [дата]

Пример заполненного ТЗ#

Проект для примера: сервис онлайн-записи к одному мастеру (маникюр, барбер, репетитор). Имена, сроки и сервисы условные.

md
# Техническое задание: онлайн-запись к мастеру

## 1. Общие сведения
- Проект: страница, где клиент сам выбирает услугу и свободное время.
- Заказчик: частный мастер, работает один.
- Исполнитель: разработчик + кодинг-агент (Cursor).
- Версия ТЗ и дата: 1.0, 22.10.2026
- Срок: по этапам, см. раздел 8.

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

## 3. Пользователи и сценарии
Клиент:
- открывает страницу → видит список услуг с ценой и длительностью;
- выбирает услугу → видит свободные слоты на 14 дней вперёд;
- выбирает слот, вводит имя и телефон → видит «Вы записаны на [дата, время]».
Мастер:
- входит по паролю → видит записи на неделю, может отменить запись;
- задаёт рабочие часы и выходные → слоты пересчитываются.

## 4. Функции
Входит:
- каталог услуг (название, цена, длительность);
- расчёт свободных слотов по рабочим часам и уже занятым записям;
- форма записи, уведомление мастеру в Telegram;
- кабинет мастера: список записей, отмена, рабочие часы.
Не входит (в этой версии):
- онлайн-оплата и предоплата;
- несколько мастеров и филиалы;
- SMS-напоминания клиентам;
- регистрация клиентов.

## 5. Данные
- Услуга: название*, цена*, длительность в минутах*.
- Запись: услуга*, дата и время начала*, имя*, телефон*, статус (активна / отменена).
- Рабочие часы: день недели, начало, конец; список выходных дат.
- Хранение: SQLite на сервере.

## 6. Интерфейс
1. Главная: имя мастера, фото, список услуг.
2. Выбор времени: календарь на 14 дней, слоты кнопками; если слотов нет —
   «На эти дни всё занято».
3. Форма: имя, телефон, кнопка «Записаться»; ошибки под полями.
4. Подтверждение: дата, время, услуга, адрес.
5. Кабинет мастера: таблица записей, кнопка «Отменить», настройки часов.
Всё работает на телефоне от 360 px.

## 7. Технические требования
- Стек: Next.js, SQLite, без отдельного бэкенда.
- Хостинг: VPS заказчика.
- Интеграции: Telegram-бот для уведомлений, токен в переменной окружения.
- Безопасность: пароль мастера хранится в виде хеша; телефоны клиентов
  не видны без входа.
- Ограничения: новые npm-пакеты — только после согласования.

## 8. Этапы
| № | Этап | Результат этапа | Срок |
|---|---|---|---|
| 1 | Услуги и слоты | Клиент видит услуги и свободное время | неделя 1 |
| 2 | Запись | Запись сохраняется, слот пропадает | неделя 1 |
| 3 | Уведомления | Мастер получает сообщение в Telegram | неделя 2 |
| 4 | Кабинет мастера | Список, отмена, рабочие часы | неделя 2 |

## 9. Критерии приёмки
- Два клиента не могут записаться на одно время: второй видит «Время уже занято».
- После отмены записи слот снова доступен.
- Слоты не выходят за рабочие часы и не попадают на выходные.
- Через минуту после записи в Telegram мастера приходит сообщение с услугой,
  временем и телефоном.
- Сборка проходит без ошибок, в коде нет токенов и паролей.

## 10. Открытые вопросы
- Нужен ли перерыв между записями? — решает заказчик, до начала этапа 1.

Что стоит заметить в примере:

  • «Не входит» заполнен конкретно. Онлайн-оплата и несколько мастеров — то, что исполнитель (и тем более агент) часто «добавляет по умолчанию».
  • Критерии приёмки проверяются за минуты. Двойная запись, отмена, выходные — это сценарии, а не «удобно и надёжно».
  • Открытые вопросы вынесены отдельно. Лучше честно записать, что не решено, чем оставить дыру, которую кто-то заполнит сам.

Короткие образцы под другие задачи#

Не каждой работе нужны все десять разделов. Для небольших задач достаточно четырёх-пяти.

Доработка существующего проекта:

md
# ТЗ: экспорт заказов в CSV
Цель: менеджер выгружает заказы за период в Excel.
Входит: кнопка «Экспорт» на странице заказов, выбор дат, файл CSV (UTF-8, разделитель «;»).
Не входит: другие форматы, экспорт по расписанию.
Затронуто: страница заказов, API заказов. Схему базы не меняем.
Приёмка: файл за октябрь открывается в Excel без «кракозябр», строк столько же, сколько заказов в списке.

Исправление ошибки:

md
# ТЗ: форма не отправляется на iPhone
Что происходит: в Safari на iOS кнопка «Отправить» не реагирует.
Ожидается: заявка уходит, как в Chrome.
Как воспроизвести: [шаги, версия iOS].
Не трогать: дизайн формы, другие страницы.
Приёмка: заявка из Safari на iOS приходит; в Chrome поведение не изменилось.

Готовые ТЗ под конкретные задачи — в разделе задачи: сайт и Telegram-бот.

Как использовать шаблон с ИИ-агентом#

  1. Сохраните ТЗ файлом в проект, например docs/spec.md. Так его можно подключать в каждом новом чате (в Cursor — через @), и детали не теряются в длинной переписке.
  2. Первым промтом попросите агента прочитать ТЗ, задать вопросы и предложить план — без кода. В Cursor и Claude Code для этого есть режим плана.
  3. Отдавайте этапы из раздела 8 по одному и после каждого проверяйте критерии из раздела 9.

Так же устроены спецификации в инструментах для разработки с ИИ: в Kiro у каждой спецификации есть файлы требований с критериями приёмки, дизайна и списка задач, в GitHub Spec Kit работа идёт от спецификации к плану и задачам. Разделы «функции», «технические требования» и «этапы» нашего шаблона примерно соответствуют этим трём шагам.

Не хотите заполнять вручную — генератор ТЗ соберёт документ по полям.

Частые ошибки в образцах ТЗ из интернета#

  1. Скопирован ГОСТ целиком для лендинга. Половина разделов пустая, а главного — критериев приёмки — нет.
  2. Требования без чисел. «Быстро загружается», «современный дизайн». Замените на проверяемое или уберите.
  3. Нет раздела «не входит». Споры о том, входила ли админка, начинаются именно здесь.
  4. ТЗ описывает решение, а не задачу. «Сделать таблицу на React» вместо «менеджер видит заказы за период». Решение пусть предлагает исполнитель, если стек не принципиален.
  5. ТЗ не обновляется. Договорились о новом в чате — внесите в документ и поднимите версию.

Вопросы и ответы

Что должно быть в техническом задании?

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

Чем этот шаблон отличается от ТЗ по ГОСТ 34?

ГОСТ 34.602-2020 нужен для автоматизированных систем и договоров, где важен формальный порядок приёмки и документации. Этот шаблон короче и рассчитан на небольшие проекты: сайт, сервис, бот, отдельная функция. Если заказчик требует ГОСТ, берите ГОСТ, а наш шаблон используйте как рабочую версию для исполнителя.

Можно ли отдать это ТЗ нейросети?

Да. Шаблон написан так, чтобы его понял и человек, и кодинг-агент. Перед передачей Cursor или Claude Code положите ТЗ файлом в проект и попросите агента сначала задать вопросы и предложить план. Короткую версию под агента смотрите на странице «ТЗ для нейросети».

Какого объёма должно быть ТЗ?

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

Где взять образец ТЗ в Word?

Скопируйте шаблон с этой страницы: он в формате Markdown, его можно вставить в Word, Google Docs или Notion. Заполнить поля по шагам можно в генераторе ProtoSpec.