0% found this document useful (0 votes)
9 views11 pages

Software Requirements

The document outlines the differences between functional and non-functional requirements, defining functional requirements as specific behaviors or functions of a system and non-functional requirements as criteria that judge system performance. It emphasizes that while functional requirements detail what a system should do, non-functional requirements focus on how the system performs those functions, impacting user experience. Examples of both types of requirements are provided, highlighting their importance in system design and usability.

Uploaded by

Ahmad Hassan
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)
9 views11 pages

Software Requirements

The document outlines the differences between functional and non-functional requirements, defining functional requirements as specific behaviors or functions of a system and non-functional requirements as criteria that judge system performance. It emphasizes that while functional requirements detail what a system should do, non-functional requirements focus on how the system performs those functions, impacting user experience. Examples of both types of requirements are provided, highlighting their importance in system design and usability.

Uploaded by

Ahmad Hassan
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/ 11

Requirements

Functional Requirements
“Any Requirement Which Specifies What The System Should Do.”

In other words, a functional requirement will describe a particular behavior 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”.
Cont’d
Functional Requirements
Some of the more 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
“Any Requirement That 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.
Cont’d
Non-functional requirements cover all the remaining requirements which are not
covered by the functional requirements. They specify criteria that judge the
operation of a system, rather than specific behaviours, 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”.
Cont’d
Even in the case when the non-functional requirements are not met the basic
functionality will not be impacted.

If the functionality of the product is not dependent on non-functional requirements


then why are they important?

The answer is in usability. Non-functional requirements affect the user experience


as they define a system’s behavior, features, and general characteristics.
Cont’d
Non-functional requirements when defined and executed well will help to make the
system easy to use and enhance the performance.

Non-functional requirements focus on user expectations, as they are product properties.

Let’s take an example of a functional requirement. A system loads a webpage when


someone clicks on a button. The related non-functional requirement specifies how fast
the webpage must load. A delay in loading will create a negative user experience and
poor quality of the system even though the functional requirement is fully met.
Some typical non-functional requirements are:

● Performance – for example Response Time, Throughput, Utilization, Static Volumetric


● Scalability
● Capacity
● Availability
● Reliability
● Recoverability
● Maintainability
● Security
● Manageability
● Environmental
● Data Integrity
● Usability
Functional Requirements Non-Functional Requirements

1. They define the quality attribute of a system


1. They define a system or its components. 2. It specifies, “How should the system fulfil
the functional requirements?”
2. It specifies, “What should the system do?”
3. Non-functional requirement is specified by
3. User specifies functional requirements. technical peoples e.g. Architect, Technical
leaders and software developers.
4. It is mandatory to meet these requirements. 4. It is not mandatory to meet these
5. It is captured in use cases. requirements.
5. It is captured as a quality attribute.
6. Defined at a component level. 6. Applied to a whole system.
Functional Requirements Non-Functional Requirements

7. Helps you to verify the functionality of the 7. Helps you to verify the performance of the
software.
software.
8. Non-Functional Testing like Performance,
8. Functional Testing like System, Integration, End to
Stress, Usability, Security testing, etc are done.
End, API testing, etc are done.
9. Usually more difficult to define.
9. Usually easy to define.

You might also like