
Техническое задание на разработку сайта услуг умещается на двух листах: цель, посетители, страницы, функции, дизайн, тексты, технические условия, что передаётся при сдаче и что в работу не входит. Главное в нём: у каждой функции записана проверка, то есть что сделать при сдаче и что должен увидеть человек. Без проверки задание остаётся списком пожеланий.
Ниже пример такого задания, собранный по плану нашего сайта fomenko.by. Дальше прослежу одну функцию, форму заявки, от требования в плане до проверки на рабочем сайте 8 октября 2026 года. Форма сохранила заявку в пределах секунды, как требовал план. Подтверждения на экране посетитель ждал 12 секунд.
Этот пример восстановлен после разработки: наш сайт делали по плану для разработчика от 14 мая 2026 года, а задания для заказчика в таком виде не было. Я собрал пример 8 октября по майскому плану и нынешнему сайту. Личный кабинет и оплату оставил за рамками. Числа в примере, например 2 секунды на подтверждение, это условия заказа: их выбирает заказчик и согласует с подрядчиком.
Чтобы взять пример под свой сайт, замените цель, посетителей, страницы и поля формы своими. Строку «Проверка» оставьте у каждой функции. Срок, этапы и оплату пишут в договоре, а вопросы о них подрядчику собраны в разборе двух смет на сайт.
Техническое задание: сайт услуг частного специалиста Версия 1 от (дата). Изменения записываю сюда с датой и новой проверкой. 1. Цель Посетитель понимает, какие услуги я оказываю и сколько они стоят, и оставляет заявку. Заявка доходит до меня в течение минуты. 2. Посетители Люди, которые ищут мою услугу. Часть приходит из поиска на статьи блога, часть по ссылке из Telegram. Многие открывают сайт с телефона. 3. Страницы - Главная: кто я, услуги, цены «от», как идёт работа, частые вопросы, форма заявки. - Четыре страницы услуг: разработка сайтов, Telegram-боты, автоматизация с ИИ, консультации. На каждой: что входит, срок, цена «от», форма заявки. Новую страницу услуги подрядчик добавляет по отдельной оценке. - Блог: список статей и страница статьи. При сдаче в блоге одна моя статья, дальше пишу и публикую сам. - Политика обработки персональных данных, контакты и реквизиты. 4. Функции и проверка при сдаче - Заявка: имя, email или Telegram, описание задачи, галочка согласия на обработку данных. Все заявки видны в админке, даже если письмо не дошло. Проверка: без галочки заявка не уходит, поле подсвечено. С галочкой подтверждение на экране появляется не позже чем через 2 секунды. Письмо во входящие и сообщение в Telegram приходят мне не позже чем через минуту, заявку нахожу в админке. На тестовой копии подрядчик отключает почту, я отправляю заявку и всё равно нахожу её в админке. - Защита от спама: скрытое поле для ботов и не больше трёх заявок в час с одного интернет-подключения. Тому, кто упёрся в лимит, форма показывает мой Telegram. Проверка: на тестовой копии подрядчик отправляет запрос с заполненным скрытым полем: отказ, новой заявки в админке нет. Перед серией подрядчик сбрасывает лимит для моего подключения на тестовой копии. Отправляю четыре заявки: первые три нахожу в админке, четвёртая отклонена, на экране сообщение с контактом. - Цены и тексты услуг меняю сам. Проверка: меняю цену и текст услуги в админке и вижу оба изменения на странице. - Статьи блога публикую сам. Проверка: создаю черновик с заголовком, текстом и фотографией, публикую и нахожу статью в списке блога. - Счётчик Метрики на моём аккаунте, отправка заявки записывается как цель. Проверка: отправляю заявку и вижу её в отчёте по целям. 5. Дизайн, тексты и фотографии Макет главной и страницы услуги для телефона и компьютера, два круга правок. Проверка: сайт совпадает с утверждённым макетом. Тексты услуг, цены и фотографии даю я до начала вёрстки. Подрядчик не придумывает отзывы, цифры и кейсы. 6. Технические условия - Главная и страница услуги на телефоне готовы к чтению не позже чем через 3 секунды после открытия. Проверка: первое открытие на моём телефоне через мобильный интернет, засекаю секундомером. - На телефоне страницу нельзя сдвинуть пальцем вбок, по каждой кнопке попадаю с первого раза (кнопки не меньше 40 на 40 пикселей). - У каждой страницы свой заголовок и описание для поиска. Проверка: подрядчик даёт согласованный список заголовков и описаний всех страниц из раздела 3. Заголовки сверяю с названиями вкладок, описания подрядчик показывает в исходном коде каждой открытой страницы, сверяю со списком. Отдельно: в Вебмастере на моём аккаунте нет предупреждения, что сайт закрыт от поиска. - Сайт открывается по https на моём домене, хостинг оформлен на меня. 7. Что передаётся при сдаче Домен, хостинг, админка, почта, Метрика, Вебмастер, бот для уведомлений и исходный код: владелец везде я, почта для восстановления моя. Короткая инструкция, как поменять цену и текст услуги. Ошибки, то есть расхождения с этим заданием, подрядчик исправляет бесплатно два месяца после сдачи. Новые пожелания оцениваются отдельно. 8. Не входит в эту работу Личный кабинет клиента, онлайн-оплата, английская версия. Срок, этапы и оплата записаны в договоре.
Короткий ответ: в майском плане проверяли сохранение заявки за секунду. Потом добавили уведомления, проверку оставили прежней, и заявка сохранялась быстро, пока посетитель ждал.
В плане от 14 мая у формы заявки четыре критерия приёмки:
В заметках к плану ещё два решения: пока не уведомлять меня о заявках и показывать посетителю «спасибо» только после ответа сервера.
С мая по август заявки стали приходить мне письмом, в Telegram и уведомлением на компьютер. Критерии в плане остались майскими, и ни один из четырёх так и не отмечен как принятый.
8 октября я проверил критерии на рабочем сайте в окне шириной с телефон. Неправильные данные отправлял на сервер в обход формы: такие запросы заявку не создают. Правильную заявку отправил одну, с нашей тестовой почты.


Все 12 секунд на кнопке крутится индикатор. По временным отметкам заявка появилась в базе примерно через 0,8 секунды после начала отправки, письмо мне отправилось ещё через 9,3 секунды. Оставшиеся две секунды ушли на сообщение в Telegram, постановку уведомления на компьютер в очередь и обратный путь ответа. При сбое почты ждать придётся дольше.
Правило «спасибо только после ответа сервера» работало, пока ответ означал одну запись в базу. Исправление записано в план работ: сервер будет отвечать сразу после записи, уведомления уйдут следом. Пока оно не сделано, наша форма отвечает только после всех уведомлений.
Для задания отсюда два вывода. Пишите критерий про то, что видит человек: «подтверждение на экране не позже чем через 2 секунды» заказчик проверит секундомером на телефоне. Скорость записи в базу заказчик сам не увидит. Как показала наша форма, быстрая запись ещё не гарантирует быстрого подтверждения на экране. А когда требование меняется, вместе с ним переписывают проверку и проходят её заново.

К расплывчатой строке задайте вопрос, ответ на который видно глазами:
Переписанные так строки стоят в разделах 4, 5 и 6 примера. Проверки, которые оставляют лишние заявки, например лимита, проходят на тестовой копии сайта, то есть на отдельном адресе, где можно ломать. Данные для них выбираете вы.
Собираете сайт сами с нейросетью? Отдайте ей задание как спецификацию и попросите тесты по строкам «Проверка». Задержку в 12 секунд поймал бы тест на время ответа с настоящей отправкой письма.
Автоматизация бизнес-процессов с ИИ: как проверить
Отчёт пришёл вовремя, а обвал трафика в нём ложный. Как проверить, что автоматизация бизнес-процессов с помощью ИИ работает: разбор нашего случая.
Opus 5.5 vs Fable 5.1: сравнение в Claude Code
Opus 5.5 и Fable 5.1 в Claude Code на одной задаче: приёмка 57/57 у обеих, Fable на 44% дольше и в 2,4 раза дороже по ценам API. Как повторить у себя.
Нейросеть для презентаций: слайды в HTML и PDF
Нейросеть для презентаций к выступлению: мой опыт с Claude Code, 14 слайдов и проверка PDF. Где потерялся текст и что пришлось исправить перед отправкой.