Любой ИТ-проект начинается с требований — они определяют архитектуру системы, объём работ и состав команды. Без чётко сформулированных требований разработка идёт вслепую: участники трактуют задачи по-своему, сроки срываются, а итоговый продукт расходится с ожиданиями заказчика.
Функциональные требования (ФТ) описывают, что делает система: конкретные действия, сценарии взаимодействия с пользователем, операции с данными. Нефункциональные требования (НФТ) определяют, насколько качественно она это делает — скорость отклика, надёжность, безопасность данных, устойчивость к нагрузке.
Учитесь бесплатно за счёт государства
Экономия до 100 000 ₽ на любой программе
Оба типа работают только в паре. Без ФТ нет функционала — системе нечего делать. Без НФТ система не выдержит реальной нагрузки и становится источником критических сбоев в продакшне.
В статье разберём определения, ключевые отличия, классификацию и практику составления функциональных и нефункциональных требований к ПО — с примерами из разных предметных областей и реальным кейсом.
Функциональные требования описывают поведение системы при заданных условиях: что она делает, как реагирует на входные данные, как взаимодействует с пользователем. Два вопроса-якоря: «Что делает система?» и «Как взаимодействует с данными?»
Составляют ФТ разные участники команды. Бизнес-аналитик формирует сценарии на уровне пользователя; системный аналитик детализирует их до атомарных операций; менеджер продукта расставляет приоритеты в бэклоге.
Чтобы ФТ были рабочими, их проверяют на три критерия качества: полнота (охвачены все сценарии), однозначность (нет двойных трактовок), непротиворечивость (требования не конфликтуют между собой). Проверка проходит на этапе ревью — до начала разработки.
Проще всего понять функциональные требования к системе через конкретные примеры в разных предметных областях.
| Домен |
Примеры функциональных требований |
|---|---|
| Интернет-магазин | Добавление и удаление товара из корзины; авторизация по логину и паролю; восстановление пароля через email |
| Банковское приложение | Проверка текущего баланса; перевод средств между счетами; заказ выписки; оплата счетов по реквизитам |
| B2B-портал | Авторизация с определением роли пользователя; отображение персонального каталога; оформление заказа с передачей данных в ERP-систему |
Примеры функциональных требований к программному обеспечению в трёх предметных областях.
Каждое из этих требований пользователь может проверить самостоятельно — просто выполнив нужное действие в интерфейсе. Это ключевое свойство функциональных требований: они проверяемы «на ходу», в процессе использования, без специальных инструментов.
Нефункциональные требования описывают качество, устойчивость и предсказуемость системы в реальной эксплуатации. Вопросы-якоря: «Как хорошо работает система?» и «В каких условиях она функционирует?»
Главное правило — НФТ обязательно должны быть измеримыми. «Система должна работать быстро» — это не требование. «Отклик страницы — не более 2 секунд при 1 000 одновременных пользователей» — это требование. Без числового показателя НФТ невозможно ни спроектировать архитектуру, ни протестировать.
Принципиальное отличие от ФТ: нефункциональные требования к системе не проверяются «на ходу». Их валидируют через специализированные тесты — нагрузочное тестирование, пентест (проверку защищённости системы), интеграционное тестирование. Проблемы с НФТ проявляются при активной эксплуатации, а не на старте.
НФТ делятся на четыре группы. Рекомендуемый порядок проработки: сначала ограничения, затем внешние интерфейсы, потом атрибуты качества и системные требования.
| Группа |
Что описывает |
Измеримый пример |
|---|---|---|
| Атрибуты качества | Производительность, надёжность, масштабируемость, безопасность, отказоустойчивость | Отклик < 2 с при 1 000 пользователей; доступность 99,95%; изоляция данных между клиентами |
| Ограничения | Бюджет, сроки, нормативные требования, лицензии | Соответствие ФЗ-152 о персональных данных; только open-source лицензии |
| Внешние интерфейсы | Интеграция с другими системами и оборудованием | Передача заказов в ERP по API; совместимость с CRM-системой |
| Системные требования | Платформа, СУБД, архитектурные решения | Развёртывание на Linux; база данных PostgreSQL |
Атрибуты качества — самая ёмкая группа: производительность, надёжность, масштабируемость, безопасность и отказоустойчивость. Именно их чаще всего откладывают «на потом» — и именно за это дорого платят при росте нагрузки.
Ключевое различие — в предмете описания: ФТ отвечают на вопрос «что делает система?», НФТ — «как хорошо она это делает?». Но разница шире: отличаются способы проверки, моменты критичности и влияние на архитектуру.
| Параметр |
Функциональные требования |
Нефункциональные требования |
|---|---|---|
| Предмет | Поведение системы | Качество системы |
| Проверяемость | Пользователь проверяет «на ходу» | Только через специализированные тесты |
| Измеримость | Необязательна | Обязательна |
| Кто задаёт | Бизнес-аналитик, PM | Архитектор + тестировщик совместно с BA |
| Момент критичности | Выявляется при разработке | Проявляется при нагрузке в продакшне |
| Метод тестирования | Функциональное, приёмочное | Нагрузочное, пентест, интеграционное |
| Уровень абстракции | От бизнес-сценария до атомарной операции | Пронизывают все уровни системы |
| Взаимозависимость | Определяют, что тестировать | Определяют, при каких условиях |
Функциональные требования без нефункциональных — система, которая корректно работает для трёх пользователей и падает при ста. НФТ без ФТ — архитектура без функционала. Оба типа разрабатываются параллельно с первых этапов проекта.

Требования к программному обеспечению выстраиваются в иерархию — от верхнеуровневых бизнес-целей до атомарных операций системы.
Уровень 1 — Бизнес-требования. Отвечают на вопрос «Зачем создаём систему?» Формулирует заказчик совместно с системным аналитиком. Пример: «Автоматизировать обработку заказов дистрибьюторов и снизить время оформления в три раза».
Уровень 2 — Пользовательские требования. Отвечают на вопрос «Что нужно пользователю?» Фиксируются через сценарий использования или юзер-стори (user story): «Я как дистрибьютор хочу видеть персональный каталог с ценами, чтобы быстро оформить заказ».
Уровень 3 — Функциональные требования. Отвечают на вопрос «Что делает система?» Это атомарные сценарии. Пример дробления: «авторизация» → «авторизация по номеру телефона через SMS-код».
Параллельная ветка — НФТ. Нефункциональные требования не встраиваются в иерархию — они пронизывают все уровни. Требование к производительности касается и бизнес-уровня (соглашение об уровне сервиса с заказчиком), и технического (архитектурных решений разработчиков).
Требования составляют сразу после появления идеи или технического задания — не после начала разработки. Чем позже они зафиксированы, тем дороже обходится их изменение.
Хотите сменить профессию или повысить квалификацию?
Федеральный проект «Активные меры содействия занятости» даёт возможность пройти обучение бесплатно за счёт государства
Функциональные требования в ТЗ и рабочей документации записывают тремя способами: юзер-стори, Use Case (сценарий использования) или карточки задач. Для хранения и отслеживания используют Яндекс Трекер, Confluence или Google Doc — выбор зависит от процессов команды.
Готовые ФТ обязательно согласовываются: с заказчиком — по бизнес-смыслу, с пользователями — по сценариям, с внешними командами — по точкам интеграции.
| Этап |
Роль |
Действие |
|---|---|---|
| Сбор | Бизнес-аналитик | Интервью с заказчиком, анализ бизнес-процессов |
| Формализация | Системный аналитик | Юзер-стори, Use Cases, карточки задач |
| Согласование | PM + Заказчик | Валидация с бизнесом и внешними командами |
| Ревью | Разработчик + QA | Проверка реализуемости и тестируемости |
| Документирование | BA + SA | Фиксация в Трекере, Confluence или Google Doc |
Системный аналитик — ключевая роль на этапах формализации и документирования: именно он переводит бизнес-потребности в точные технические сценарии. Освоить работу с требованиями и проектирование систем с нуля можно по программе «Системный аналитик: с нуля до проектирования систем» — 72 часа онлайн, бесплатно по нацпроекту «Кадры».

Рассмотрим типичный сценарий. B2B-портал для дистрибьюторов: команда тщательно проработала все ФТ — авторизация с ролями, персональный каталог, оформление заказа с передачей данных в ERP-систему (система планирования ресурсов предприятия). Запуск прошёл штатно.
Проблемы начались через несколько недель. При 150–200 одновременных пользователях система замедлялась до неприемлемого уровня, в пиковые часы портал падал полностью — заказы не проходили.
Причина: нефункциональные требования по производительности и отказоустойчивости не были зафиксированы до начала разработки. Архитектура строилась «по умолчанию», без расчёта на реальную нагрузку.
Следствие: срочная доработка архитектуры в продакшне обошлась значительно дороже, чем проектирование НФТ заранее. К финансовым потерям добавились простой и репутационный ущерб.
Ошибки в требованиях — это не технический долг. Это прямые потери: перерасход бюджета и сдвиг сроков.

Хотите освоить проектирование систем и работу с требованиями? В рамках федерального проекта «Активные меры содействия занятости» доступна программа «Системный аналитик: с нуля до проектирования систем» — 72 часа, полностью онлайн, бесплатно. Зарплата специалистов — от 130 000 ₽. Обучение с нуля, без требований к предыдущему опыту.
ФТ описывают, что делает система — конкретные действия и операции. НФТ — как хорошо она это делает: скорость, надёжность, безопасность. ФТ проверяет пользователь в процессе работы; НФТ — только через нагрузочное тестирование и специализированные инструменты.
Нет. Система из одних ФТ корректно работает для нескольких пользователей, но не выдержит реальной нагрузки: замедлится, зависнет или нарушит безопасность данных. Оба типа прорабатываются параллельно.
Бизнес-требования — заказчик совместно с системным аналитиком. Функциональные — бизнес-аналитик (BA). НФТ — совместно с архитектором и тестировщиком (QA). Менеджер продукта (PM) отвечает за верхнеуровневые требования и приоритеты бэклога.
Через специализированные тесты: нагрузочное (производительность и время отклика), пентест (безопасность), интеграционное (совместимость систем). В отличие от ФТ, нефункциональные требования нельзя проверить «на ходу» — нужны заранее зафиксированные числовые метрики### Должны ли нефункциональные требования быть измеримыми?
Да, обязательно. «Система должна работать быстро» — не требование. «Отклик не более 2 секунд при 500 одновременных пользователях» — требование. Без числового показателя НФТ невозможно ни спроектировать, ни протестировать.
Шаблон: «Я как [роль] хочу [действие], чтобы [ценность]». Пример: «Я как дистрибьютор хочу видеть персональный каталог с согласованными ценами, чтобы быстро оформить заказ». Из одной юзер-стори дробятся несколько атомарных ФТ.
Сразу после появления идеи или технического задания — не после начала разработки. Функциональные и нефункциональные требования к ПО определяют архитектуру, объём работ и состав команды. Чем позже они зафиксированы, тем дороже обходятся изменения.
Ни одни не важнее: они дополняют друг друга. ФТ без НФТ — система, которая не выдержит нагрузки. НФТ без ФТ — архитектура без функционала. Профессиональный подход: прорабатывать оба типа параллельно, начиная с ограничений.
Подайте заявку —
забронируйте место в группе
45 000 мест на 2026 год. Бесплатное обучение по федеральному проекту «Активные меры содействия занятости»