Non-functional requirement


Non-functional requirement (NFR) within design is a requirement of a system of how it should perform

Non-functional requirements define such as runtime qualities such as scalability, and reliability.

Non-functional requirements often address the User Experience

Non-functional requirements also define qualities including

Agile and Non-functional requirement#

Non-functional requirements are effectivly Backlog Constraints

Non-functional requirement are persistent qualities and constraints that, unlike Functional Requirements, are typically revisited as part of the Definition of Done (DoD) for each Iteration, Program Increment (PI), or release. NFRs influence all backlogs

Non-functional requirements are NOT themselves backlog items. They are constraints on development that limit some degree of design freedom for those building the system. These constraints are often defined in the acceptance criteria (Definition of Done) for multiple backlog items.

Non-functional requirements are often driven by Compliance to ensure the Product meets the Regulatory compliance or Standard compliance

The following criteria help define NFRs:

  • Bounded – When they lack Bounded Context, NFRs may be irrelevant and lead to significant additional work.
    • For example, an airplane’s flight controls should be more rigid reliability than the infotainment system.
  • Independent – NFRs should be independent of each other so that they can be evaluated and tested without consideration of or impact from other system qualities.
  • Negotiable – Understanding NFR business drivers and bounded context mandates negotiability.
  • Testable – NFRs must be stated with objective, measurable, and testable criteria.
© Scaled Agile, Inc.

More Information#

There might be more information for this subject on one of the following: