colored puzzle pieces

Functional Requirements vs Non Functional Requirements

We often get asked the question: “What is the difference between functional requirements and non functional requirements?” Let’s take a closer look at these two complimentatry concepts.

Functional Requirements Defined

According to ReQtest a functional requirement simply tells a system to do something specific. On it’s own, this definition does not really suggest much, but let’s take a real life example to provide more clarity. Functional requirements essentially describe what the product must do or the steps it is going to have to take to perform that action. For instance, everytime a customer places an order online, a confirmation email is sent to them. As a general rule, functional requirements are usually written out as “shall” statements. Here are great examples I found on Volere.co.uk:

fuctional requirements vs non fucntional requirements

Types of functional requirements:

  • Interface
  • Business Requirements
  • Regulatory/Compliance
  • Security

 

(Source: https://stackoverflow.com/)

What is a Non Functional Requirement?

Now that we have a better understanding of what a functional requirement is, let’s explore non-functional requirements. According to Stack Overflow, a non fucntional requirement requirement elaborates a performance characteristic of a particular system. Using the florist and the email example we looked at earlier, a non functional requirement would be the amount of time before an email confirmation is sent out to a customer after he places his order: In other words, “The customer shall receive an email confirmation 5 minutes after his order has been placed online.”

Non functional requirements fall into many of these catgeories:

  • Accessibility
  • Capacity, current and forecast
  • Documentation
  • Efficiency
  • Effectiveness
  • Quality
  • Reliability
  • Response time

 

(Source: https://stackoverflow.com/)

2 thoughts on “Functional Requirements vs Non Functional Requirements”

  1. Send and receive are functional requirements

    The system shall send an email after 5 minutes, it is a business rule through which you derive a product requirement, so it is a functional requirement, the 5 minutes is a business rule. Can you explain why did you consider it a non functional requirement when it is a system doing something?

Comments are closed.

Scroll to Top