Os requisitos não funcionais definem as propriedades de sistemas e restrições, por exemplo, confiabilidade: tempo de resposta e espaço em disco; restrições: capacidade dos dispositivos de E/S, representações de dados, etc.. Alguns podem restringir o processo que é utilizado para desenvolver o sistema (ditar um sistema CASE específico, linguagem de programação ou método de desenvolvimento), e ainda podem ser mais críticos que requisitos funcionais. A falha em atender um requisito não funcional de sistema pode inutilizar o sistema. Podemos citar como métricas para requisitos não funcionais exceto: