Ответ
Функциональные требования (ФТ) описывают, что должна делать система, её конкретные функции и возможности. Они отвечают на вопрос: "Как система должна вести себя в определённых условиях?"
Пример:
Для интернет-магазина ФТ могут включать:
- Пользователь может добавить товар в корзину.
- Система должна рассчитывать итоговую сумму с учётом скидки.
Ключевые характеристики:
- Конкретность – чёткие формулировки без двусмысленностей.
- Измеримость – можно проверить выполнение (например, через тесты).
- Связанность с ролями – кто (пользователь, админ) и что может делать.
Пример с кодом (псевдокод):
def apply_discount(total, discount_percent):
if discount_percent > 0:
return total * (1 - discount_percent / 100)
return total
ФТ для этой функции: "Система применяет скидку к итоговой сумме, если процент скидки больше нуля".
Нюансы:
- ФТ ≠ нефункциональные требования (производительность, безопасность).
- Должны быть задокументированы (например, в user stories или спецификациях).