Є кілька класів нефункціональних вимог, суттєвих для більшості програмних систем, які виражають обмеження, актуальні для багатьох проблемних галузей. Серед них назвемо такі:
- вимоги конфіденціальності;
- відмовостійкість;
- число клієнтів, котрі одночасно мають доступ до системи;
- вимоги безпеки;
- час чекання відповіді на звернення до системи;
- виконавські якості системи (обмеження щодо ресурсів пам’яті, швидкість реакції на звернення до системи тощо).
Для більшості названих класів може бути зафіксовано спектр характерних понять, які позначаються терміном дескриптор і які застосовуються для розкриття їхньої суті. Склад дескрипторів закріплено у відповідних міжнародних та відомчих стандартах, що дозволяє уникнути неоднозначності тлумачення зібраних вимог.