"Functional requirements: These are statements of services the system should provide, how the system should react to particular inputs, and how the system should behave in particular situations. In some cases, the functional requirements may also explicitly state what the system should not do"
Em tradução livre: "Requisitos Funcionais: Esses são declarações de serviços que o sistem deve prover, como o sistema deve reagir a determinado entrada, e como o sistema deve se comportar em uma situação particular. Em alguns casos, os requisitos funcionais podem também explicitamente dizer o que o sistema não deve fazer".
"Non-functional requirements: These are constraints on the services or functions offered by the system. They include timing constraints, constraints on the development process, and constraints imposed by standards. Non-functional requirements often apply to the system as a whole, rather than individual system features or services."
Em tradução livre: "Requisitos não-funcionais: Esses são restrições nos serviços ou funções oferecidas pelo sistema. Eles incluem restrições de time, restrições no processo de desenvolvimento, e restrições imposto por padrões. Requisitos não-funcionais frequentemente aplicam-se ao sistema como um todo, em vez de somente a uma característica do sistema ou do serviço individualmente".
Software engineering / Ian Sommerville. — 9th ed.
Requisitos não funcionais:
1. Requisitos de produto. Esses requisitos especificam ou restringem o comportamento do software. Exemplos incluem os requisitos de desempenho quanto à rapidez com que o sistema deve executar e quanta memória ele requer, os requisitos de confiabilidade que estabelecem a taxa aceitável de falhas, os requisitos de proteção e os requisitos de usabilidade.
2. Requisitos organizacionais. Esses são os requisitos gerais de sistemas derivados das políticas e procedimentos da organização do cliente e do desenvolvedor. Exemplos incluem os requisitos do processo operacional, que definem como o sistema será usado, os requisitos do processo de desenvolvimento que especificam a lingua gem de programação, o ambiente de desenvolvimento ou normas de processo a serem usadas, bem como os requisitos ambientais que especificam o ambiente operacional do sistema.
3. Requisitos externos. Esse tipo abrange todos os requisitos que derivam de fatores externos ao sistema e seu processo de desenvolvimento. Podem incluir requisitos reguladores, que definem o que deve ser feito para que o sistema seja aprovado para uso, por um regulador, tal como um banco central; requisitos legais, que devem ser seguidos para garantir que o sistema opere dentro da lei; e requisitos éticos, que asseguram que o sistema será aceitável para seus usuários e o público em geral.
Fonte: Sommerville, 9 ed.