← Back to Home

Non-Functional Requirement (NFR)

A Non-Functional Requirement (NFR) defines how well the system performs, rather than what it does. It specifies quality attributes, constraints, and operational characteristics of the application.

Non-functional requirements answer: “How should the system behave under certain conditions?”

1. Definition

A Non-Functional Requirement (NFR) defines how well the system performs, rather than what it does. It specifies quality attributes, constraints, and operational characteristics of the application.

Non-functional requirements answer: “How should the system behave under certain conditions?”

2. Purpose of Non-Functional Requirements

  • Define quality standards
  • Set user experience expectations
  • Ensure system reliability and stability
  • Reduce business and operational risk
  • Provide acceptance benchmarks beyond functionality

3. Key Characteristics of Good NFRs

  • Measurable and verifiable
  • Clear and specific
  • Testable (even if conceptually/manual)
  • Aligned with business expectations
  • Not implementation-specific

4. Common Types of Non-Functional Requirements

4.1 Performance

  • Response time
  • Throughput
  • Resource usage

Example: Page should load within 3 seconds under normal load.

4.2 Security

  • Authentication and authorization rules
  • Data protection
  • Session handling

Example: User session expires after 15 minutes of inactivity.

4.3 Usability

  • Ease of use
  • Error message clarity
  • Navigation simplicity

Example: Error messages must be user-friendly and actionable.

4.4 Reliability

  • System availability
  • Failure handling
  • Recovery behavior

Example: System should recover automatically after restart.

4.5 Compatibility

  • Browser, OS, device support

Example: Application must work on Chrome, Edge, and Firefox.

4.6 Scalability

  • Ability to handle growth

Example: System should support 2× user growth without degradation.

4.7 Accessibility

  • Support for users with disabilities

Example: Application must support keyboard navigation.

5. Manual Tester’s Role in NFR Validation

  • Review NFRs during requirement analysis
  • Identify missing quality attributes
  • Validate NFRs conceptually or through observation
  • Raise risks where measurement is unclear
  • Ensure NFRs are included in acceptance discussions

6. Non-Functional Requirement vs Functional Requirement

Aspect Functional Requirement Non-Functional Requirement
Defines What system does How system behaves
Examples Login, Checkout Performance, Security
Failure impact Feature broken Poor user experience / risk

7. Common Issues with NFRs

  • Not documented explicitly
  • Too vague (“fast”, “secure”)
  • Assumed instead of specified
  • Tested too late

8. Real-Time Example

Functional: User can submit a form.

Non-Functional:

  • Form submission completes within 2 seconds
  • Error message displayed clearly on failure

9. Interview-Ready Answers

Short answer:

Non-functional requirements define how well a system should perform rather than what it should do.

Detailed answer:

Non-functional requirements specify quality attributes such as performance, security, usability, and reliability, ensuring the system meets user and business expectations.

10. Key Takeaway

Non-Functional Requirements define quality expectations—a system can be functionally correct but still fail without strong NFRs.