0
6.6kviews
What is functional & Non-functional requirement of SRS?

Subject: Software Engineering

Topic: Software Configuration Management

Difficulty: Medium

1 Answer
1
90views

Requirements generally fall into two types: functional and non-functional.

The difference between them is fairly straightforward, nevertheless, in the this article we’ll define the two types of requirements and provide examples of each to point out more concretely the fundamental difference between them. Functional requirements

The definition of a functional requirement is:

Any requirement which specifies what the system should do.

In other words, a functional requirement will describe a particular behaviour of function of the system when certain conditions are met, for example: “Send email when a new customer signs up” or “Open a new account”.

A functional requirement for an everyday object like a cup would be: “ability to contain tea or coffee without leaking”.

Typical functional requirements include:

Business Rules

Transaction corrections, adjustments and cancellations

Administrative functions

Authentication

Authorization levels

Audit Tracking

External Interfaces

Certification Requirements

Reporting Requirements

Historical Data

Legal or Regulatory Requirements

Non-functional requirements:-

The definition of a non-functional requirement is:

Any requirement which specifies how the system performs a certain function.

In other words, a non-functional requirement will describe how a system should behave and what limits there are on its functionality.

Non-functional requirements generally specify the system’s quality attributes or characteristics, for example: “Modified data in a database should be updated for all users accessing it within 2 seconds.”

A non-functional requirement for the cup mentioned previously would be: “contain hot liquid without heating up to more than 45 °C”.

Typical non-functional requirements include:

Performance – for example: response time, throughput, utilization, static volumetric.

Scalability

Capacity

Availability

Reliability

Recoverability

Maintainability

Serviceability

Security

Regulatory

Manageability

Environmental

Data Integrity

Usability

Interoperability

It is important to correctly state non-functional requirements since they’ll affect your users’ experience when interacting with the system.

One way to prevent missing out on important non-functional requirements is to use non-functional requirement groups as a guide for listing them down. This blog post provides an explanation of each of the four main non-functional requirements groups and how they are used.

Please log in to add an answer.