Non-functional requirements are requirements which specify criteria that can be used to judge the operation of a system, rather than specific behaviors.
This should be contrasted with functional requirements that specify specific behavior or functions.
Typical non-functional requirements are reliability, scalability, and cost. Other terms for non-functional requirements are "constraints", "quality attributes" and "quality of service requirements".
Typical User Requirements such as those provided by GAMP do not generally separate functional and non functional.
Another example of a Non Functional requirement concerns Ownership of the Application Code