Какие требования к системе существуют
Что проверяют
Умеете ли вы разложить требования по видам и перевести расплывчатое «должно быстро работать» в проверяемые условия для интерфейса. Следом обычно спрашивают, какое нефункциональное требование сильнее всего повлияло на архитектуру фронтенда в вашем последнем проекте.
Как отвечать
Начните с классической тройки и сразу привяжите каждую группу к фронтенду:
- функциональные: что система делает. Сценарии пользователя, роли и права, формы, валидация, интеграции с API. Проверяются тест-кейсами: «пользователь с ролью менеджера видит кнопку экспорта»;
- нефункциональные: как система это делает. Для фронтенда это производительность, доступность, безопасность, поддержка браузеров и устройств, локализация, работа при плохой сети;
- ограничения: заданные условия, которые не обсуждаются. Стек компании, дизайн-система, сроки, требования регулятора, обязательная поддержка старого браузера у крупного клиента.
Иногда отдельно выделяют бизнес-требования (зачем продукт вообще нужен) и требования пользователей (что человек хочет сделать), из них потом выводятся функциональные.
Главная мысль ответа: нефункциональное требование полезно, только когда измеримо. Вместо «быстро» пишут целевые Core Web Vitals: LCP до 2,5 секунды, INP до 200 мс, CLS до 0,1 на 75-м перцентиле, плюс бюджет размера бандла. Вместо «доступно» указывают уровень WCAG 2.2 AA. Вместо «везде работает» дают матрицу браузеров, например через browserslist. Такие требования прямо влияют на решения: SSR или SPA, стратегия загрузки чанков, выбор библиотеки компонентов, проверки в CI через Lighthouse CI или бюджет в сборщике.
Где спотыкаются
Перечисляют только функциональные требования, а нефункциональные сводят к «красиво и удобно». Для фронтенда это как раз самая интересная часть.
Называют требования без цифр. «Страница грузится быстро» нельзя проверить, а значит, нельзя и выполнить.
Путают требования с решениями: «использовать Redux» это выбор команды, а не потребность бизнеса. Сильный ответ отделяет то, что нужно пользователю, от того, как вы это реализуете.