0% found this document useful (0 votes)
35 views

Functional Vs Non Functional Requirements

Uploaded by

royale9063
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Functional Vs Non Functional Requirements

Uploaded by

royale9063
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Functional vs Non Functional Requirements

Requirements analysis is a very critical process that enables the success of a


system or software project to be assessed. Requirements are generally split into
two types: Functional and Non-functional requirements.
Understanding and distinguishing between these types of requirements is
essential for the success of any project. Our comprehensive System design
course covers these concepts in detail, providing you with the knowledge and
skills to effectively gather, document, and analyze requirements.
Functional Requirements
These are the requirements that the end user specifically demands as basic
facilities that the system should offer. All these functionalities need to be
necessarily incorporated into the system as a part of the contract.
These are represented or stated in the form of input to be given to the system,
the operation performed and the output expected. They are the requirements
stated by the user which one can see directly in the final product, unlike the
non-functional requirements.
Example:
• What are the features that we need to design for this system?
• What are the edge cases we need to consider, if any, in our design?
Non-Functional Requirements
These are the quality constraints that the system must satisfy according to the
project contract. The priority or extent to which these factors are implemented
varies from one project to another. They are also called non-behavioral
requirements. They deal with issues like:
• Portability
• Security
• Maintainability
• Reliability
• Scalability
• Performance
• Reusability
• Flexibility
Example:
• Each request should be processed with the minimum latency?
• System should be highly valuable.
Extended Requirements
These are basically “nice to have” requirements that might be out of the scope
of the System.
Example:
• Our system should record metrices and analytics.
• Service heath and performance monitoring.
Difference between Functional Requirements and Non-Functional
Requirements:

Functional Requirements Non Functional Requirements

A non-functional requirement defines


A functional requirement defines a
the quality attribute of a software
system or its component.
system.

It places constraints on “How should


It specifies “What should the
the software system fulfill the
software system do?”
functional requirements?”

Non-functional requirement is
Functional requirement is specified specified by technical peoples e.g.
by User. Architect, Technical leaders and
software developers.

It is mandatory. It is not mandatory.


Functional Requirements Non Functional Requirements

It is captured in use case. It is captured as a quality attribute.

Defined at a component level. Applied to a system as a whole.

Helps you verify the functionality of Helps you to verify the performance
the software. of the software.

Functional Testing like System, Non-Functional Testing like


Integration, End to End, API testing, Performance, Stress, Usability,
etc are done. Security testing, etc are done.

Usually easy to define. Usually more difficult to define.

Example
Example
1) Emails should be sent with a
1) Authentication of user whenever
latency of no greater than 12 hours
he/she logs into the system.
from such an activity.
2) System shutdown in case of a
2) The processing of each request
cyber attack.
should be done within 10 seconds
3) A Verification email is sent to user
3) The site should load in 3 seconds
whenever he/she registers for the
when the number of simultaneous
first time on some software system.
users are > 10000

You might also like