The specific criteria which can define the operation of a system rather than the behavior of a system can be termed as Non-Functional requirements. To understand more, let’s try to learn this with the help of Functional Requirement.
Functional requirement essentially specifies something a system should do. Example, a milk carton should be able to contain milk without leaking or when a user types an alphabet on the laptop’s keyboard, that alphabet should be displayed on the screen.
Some of the more typical functional requirements include:
Business Rules
Transaction corrections, adjustments, and cancellations
Administrative functions
Authentication
Authorization levels
Audit Tracking
External Interfaces
Certification Requirements
Reporting Requirements
Historical Data
Legal or Regulatory Requirements
Non-Functional requirements specify how the system should behave. For example, a milk carton should be able to contain a gallon of milk or when a user types an alphabet on the laptop’s keyboard, that alphabet should be displayed on the screen with font and size selected by the user.
The non-functional requirement specifies criteria that judge the operation of a system, rather than specific behaviors, for example: “Modified data in a database should be updated for all users accessing it within 2 seconds.”
Some typical non-functional requirements are:
Performance – for example, Response Time, Throughput, Utilization, Static Volumetric
Scalability
Capacity
Availability
Reliability
Recoverability
Maintainability
Serviceability
Security
Regulatory
Manageability
Environmental
Data Integrity
Usability
Interoperability