Нефункциональные требования (non-functional requirements
80
) описывают
свойства системы (удобство использования, безопасность, надёжность, расширяе-
мость и т.д.), которыми она должна обладать при реализации своего поведения.
Здесь приводится более техническое и детальное описание атрибутов качества. В
контексте проектирования нефункциональные требования в основном влияют на
архитектуру системы.
Несколько простых, изолированных от контекста и друг от друга примеров
нефункциональных требований:
•
При одновременной непрерывной работе с системой 1000 пользователей, минимальное время между возникновением сбоев должно быть более или равно 100 часов. •
Ни при каких условиях общий объём используемой приложением памяти не может превышать 2 ГБ. •
Размер шрифта для любой надписи на экране должен поддерживать настройку в диапазоне от 5 до 15 пунктов. Следующие требования в общем случае могут быть отнесены к нефункцио-
нальным, однако их часто выделяют в отдельные подгруппы (здесь для простоты
рассмотрены лишь три таких подгруппы, но их может быть и гораздо больше; как
правило, они проистекают из атрибутов качества, но высокая степень детализации
позволяет отнести их к уровню требований к продукту).
79
Functional requirement. A requirement that specifies a function that a component or system must perform. [ISTQB Glossary]
Functional requirements describe the observable behaviors the system will exhibit under certain conditions and the actions the
system will let users take. [
«Software Requirements (3
rd
edition)
», Karl Wiegers and Joy Beatty]
80
Non-functional requirement. A requirement that does not relate to functionality, but to attributes such as reliability, efficiency,
usability, maintainability and portability. [ISTQB Glossary]