Technical advice

New Download: Non-Functional Requirements Template

Written by Danny Quilton | Jun 29, 2018 10:33:58 AM

Defining the requirements of your software is naturally one of the first steps in any project. These requirements usually take two forms: functional requirements and non-functional requirements (NFRs). Our free non-functional requirements template can help you plan and log the progress of your software’s NFRs.

But what is the difference between the two? And how should you go about documenting and tracking the progress of your system requirements?

What is a Non-Functional Requirement?

Perhaps the best way to explain NFRs is to contrast them with their sister concept - the functional requirement. Functional requirements are ‘what’ the system should do. For example: ‘the system must send an email to the customer when they sign up for email alerts or register as a user on the site.’

Typically, a functional requirement will specify a behaviour or function without going much further than that.

Meanwhile, an NFR specifies ‘how’ a system should perform a function, including any constraints and minimum requirements. For instance: ‘the email must be sent within a period of no more than 12 hours after sign-up.’ To put it another way, you could think of NFRs as the quality attributes of a system. NFRs are often based upon things like:

  • Performance
  • Interoperability
  • Reliability
  • Recoverability
  • Serviceability
  • Security
  • Data integrity
  • Usability

At Capacitas we believe that all performance NFRs should adhere to the seven pillars of software performance, namely throughput and response time, capacity, efficiency, scalability, stability, resilience and instrumentation.

What’s in the Template?

So how can our free template help you document and track the progress of your performance NFRs?

Firstly, the template provides guidance on how to define and identify NFRs for your system, using our unique seven pillars approach.

The template also lays out an easy-to-use framework which categorises NFRs by performance and the area that each NFR applies to. It also includes sections for assessing the NFR's rating in production and testing, giving you an easy way to track the progress of your requirements during the project.

Both elements help you to develop and monitor the right performance NFRs for your system. Through our seven-pillar method, you’ll subject your system to comprehensive performance testing, reducing the likelihood of errors and poor performance as a result.

 

To download this free resource, click here. To learn more about our unique approach to assessing software performance, download a copy of our 7 Pillars of Software Performance infographic here.