| NFR Category | 
   Non-functional Requirements | 
   Short explanation | 
   Applicable to situation | 
   Can be tested by | 
  
  
   | Constraint | 
   Price | 
   Target price for the solution | 
   Most | 
   Checklist | 
  
  
   | Constraint | 
   Resource constraints | 
   Constraints imposed on development such as constraints imposed due to small screen size of mobile devices. | 
   Most | 
   Checklist | 
  
  
   | Compliance | 
   Compliance | 
   Regulatory compliance. | 
   Health care (HIPAA, FDA) | 
   Integration testing across systems | 
  
  
   | Compliance | 
   Documentation | 
   Documentation requirements. | 
   Health care, Aviation, Automotive | 
   Test cases for color blindness | 
  
  
   | Compliance | 
   Legal and licensing issues or patent-infringement-avoidability | 
   Adhering to compliance requirements. | 
   Most | 
   Test cases verification of record data update | 
  
  
   | Maintainability | 
   Analyzability | 
   Ability to investigate a failure | 
   Most | 
   Backup recovery test | 
  
  
   | Maintainability | 
   Changeability | 
   Ability to change one component without affecting others, and without causing unexpected failures | 
   Most | 
   Review the application code | 
  
  
   | Maintainability | 
   Deployment  | 
   Ease with which an application can be deployed and upgraded. | 
   Most | 
   Review the application code | 
  
  
   | Maintainability | 
   Escrow | 
   Source code of an application is kept securely and available to buyer under certain conditions | 
   Purchased an out-sourced product | 
   Checklist | 
  
  
   | Maintainability | 
   Extensibility / Modifiability | 
   Ability to extend the product easily | 
   Most | 
   Consumer feedback | 
  
  
   | Maintainability | 
   Supportability | 
   Ability to support applications for specific period, locations etc. | 
   Most | 
   Checklist | 
  
  
   | Maintainability | 
   Testability | 
   Ease of test automation | 
   Most | 
   Checklist | 
  
  
   | Performance | 
   Performance / response time (performance engineering) | 
   Time taken to respond to a user request. | 
   Most | 
   Checklist | 
  
  
   | Performance | 
   Resource utilization | 
   % of available capacity used | 
   Most | 
   Checklist | 
  
  
   | Performance | 
   Scalability | 
   Ability to support specified number of users / transactions | 
   Systems supporting large number of users | 
   Review the application code | 
  
  
   | Portability | 
   Interoperability | 
   Ability to work with existing systems. | 
   Most | 
   Review the application code | 
  
  
   | Portability | 
   Platform compatibility | 
   Ability to work with stated platforms. | 
   Most | 
   Review the application code | 
  
  
   | Portability | 
   Replaceability | 
     | 
   Most | 
   Review the application code | 
  
  
   | Reliability | 
   Availability | 
   % of time the system is available. | 
   Critical systems | 
   Latency testing | 
  
  
   | Reliability | 
   Backup | 
   Frequency at which data must be backed-up. | 
   Universal | 
   Test on desired platforms | 
  
  
   | Reliability | 
   Disaster recovery | 
   Time taken to restore the application after a disaster. | 
   Most | 
   Multiple browser test | 
  
  
   | Reliability | 
   Failure management (Fault tolerance) | 
   Ability to manage failures. | 
   Most | 
   Checklist | 
  
  
   | Reliability | 
   Quality (e.g. faults discovered, faults delivered, fault removal efficacy) | 
   Target defect density | 
   Mission critical applications | 
   Code and design Review | 
  
  
   | Reliability | 
   Recovery / recoverability (e.g. mean time to recovery - MTTR) | 
   Ability to recover quickly | 
   Mission critical applications | 
   Review the application code | 
  
  
   | Reliability | 
   Reliability (e.g. mean time between failures - MTBF) | 
   Ability to provide service when needed | 
   Mission critical applications | 
   Review the application code | 
  
  
   | Reliability | 
   Replaceability | 
   Ability to replace a faulty part on the fly | 
   Mission critical applications | 
   Review the application code | 
  
  
   | Reliability | 
   Resilience | 
   Ability to withstand attacks | 
   Mission critical applications | 
   Checklist | 
  
  
   | Reliability | 
   Robustness | 
   Ability to operate continuously even under adverse conditions. | 
   Most | 
   Simulation of internet attack 
   If hardware is present, heat cycle testing | 
  
  
   | Reliability | 
   Stability | 
     | 
   Most | 
   Checklist | 
  
  
   | Security | 
   Audit and control aka Accountability | 
   To track changes made to data. | 
   Finance, Health care | 
   Review the application code | 
  
  
   | Security | 
   Authenticity | 
     | 
   Most | 
   Review the application code | 
  
  
   | Security | 
   Confidentiality | 
   Protect data from being exposed to unauthorized users | 
   Most | 
   Review the application code | 
  
  
   | Security | 
   Integrity | 
   Maintaining correctness of data | 
   Most | 
   Penetration test | 
  
  
   | Security | 
   Privacy | 
   Ability to keep personal data secure. | 
   Health care | 
   Penetration test | 
  
  
   | Usability | 
   Accessibility | 
   Application being usable by persons with special needs such as color blindness. | 
   Government | 
   Review the application code | 
  
  
   | Usability | 
   Ease of use | 
   Limit number of clicks to maximum 3 clicks to complete any transaction | 
   Most | 
   Review the application code | 
  
  
   | Usability | 
   Emotional factors (like fun or absorbing) | 
   Making application likable by a certain audience. | 
   Education | 
   Checklist | 
  
  
   | Usability | 
   Internationalization | 
   Ability to operate the application in different countries such as handling multiple time zone, currency, languages etc. | 
   Most | 
   Review the application code | 
  
  
   | Usability | 
   Learnability | 
   Different user groups should be able to use the product with or without training | 
   Most | 
   Review the application code | 
  
  
   | Usability | 
   Safety | 
   Ensure safe usage of the product and prevent damages caused by the application. For example, safety features for a navigation system. | 
   Where there are dangers to human life. Aviation, Automotive, Health care etc.. | 
   Key board control test | 
  
  
   |   | 
   Certification | 
   Certification on a particular technology such as certified on Azure. | 
   Most | 
   Untrained user test | 
  
  
   |   | 
   Localization | 
   Ability to satisfy needs of a particular country or domain (say petroleum industry) | 
   Most | 
   Review the application code | 
  
  
   |   | 
   Re-usability | 
   Ability to re-use existing components and create new re-usable components | 
   Most | 
   Review the application code | 
  
  
   | Portability | 
   Installability | 
   Ability to install or un-install easily | 
   Most | 
   Review the application code |