Розглянемо приклад функціональної вимоги. Система завантажує веб-сторінку, коли хтось натискає кнопку. Відповідна нефункціональна вимога визначає швидкість завантаження веб-сторінки. 4 квітня 2012 р.
Приклади функціональних вимог включають: автентифікація користувачів, управління даними, робочий процес і бізнес-логіка, звітність і аналітика, а також інтеграція із зовнішніми системами. Нефункціональні вимоги визначають якості та обмеження, яким має відповідати система.
Прикладом функціональної вимоги до месенджера буде щось на зразок «Користувач повинен мати можливість редагувати повідомлення після їх надсилання.” (Ну так, Meta, система повинна забезпечувати цю функціональність. Просто щоб ви знали.) Нефункціональні вимоги визначають, як повинна працювати система.
Порівняння функціонального та нефункціонального тестування
| Категорія | Функціональне тестування | Нефункціональне тестування |
|---|---|---|
| Коли виконувати | Перед нефункціональним тестуванням | Після функціонального тестування |
| Приклад типів тестування | Тестування диму, тестування на осудність, регресійне тестування | Тестування навантаження, стрес-тестування, тестування доступності |
Кілька типів тестування вважаються функціональними тестуваннями, як-от тестування диму, тестування на осудність, регресійне тестування тощо. З іншого боку, цілі нефункціонального тестування полягають у перевірці багатьох елементів, таких як продуктивність, безпека, зручність використання тощо.
Нефункціональне тестування включає продуктивність, надійність, зручність використання та стрес-тести для перевірки властивостей системи. Функціональне тестування включає API, систему, програми, функції, наскрізні та інтеграційні тести для перевірки процесів системи.
Нефункціональні вимоги
- Продуктивність: наскільки швидко система повинна відповідати на запити.
- Масштабованість: наскільки добре система справляється зі збільшенням кількості користувачів або робочого навантаження.
- Безпека: наскільки добре система захищає від несанкціонованого доступу та порушень даних.
- Зручність використання: наскільки легко використовувати систему.