Skip to main content
Back to blog
performance 7 February 2020 2 min read

Non Functional Requirements

Understanding non-functional requirements (NFRs) in software testing, covering types, measurement, and business impact for effective quality assurance.

M

Mark

Performance Testing Expert

Testing should be requirements driven and measurable. This foundational principle is essential for quality assurance.

Types of NFRs

Non-functional requirements cover many categories:

  • Scalability - Ability to handle increased load
  • Reliability - Consistent performance over time
  • Regulatory Compliance - Meeting legal and industry standards
  • Recoverability - Ability to recover from failures
  • Capacity - Maximum load the system can handle
  • Maintainability - Ease of making changes
  • Serviceability - Ease of servicing and support
  • Security - Protection against threats
  • Data Integrity - Accuracy and consistency of data
  • Interoperability - Ability to work with other systems
  • Availability - System uptime percentage
  • Usability - Ease of use for end users

Practical Example

A concrete, measurable NFR example: an API must handle 1,000 concurrent transactions per second with one-second response times.

Implementation Approach

The recommended process involves collaboration between business stakeholders, developers, and testers to document business processes and create requirement mappings. This can be accomplished simply using spreadsheet-based tracking.

Addressing Gaps

When communication breaks down between teams, business analysts or senior testers should bridge the gap by gathering business needs and translating them into actionable, measurable specifications.

Business Value

Clear NFRs reduce rework and associated costs by establishing shared understanding of expected product behavior across the organization.

  • Nielsen Norman Group’s response time research
  • Industry guides on non-functional requirements approaches

Tags:

#nfr #requirements #testing #sla #quality-assurance

Need help with performance testing?

Let's discuss how I can help improve your application's performance.

Get in Touch