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

Functional and Non-Functional Requirements in Software

This document discusses functional and non-functional requirements in software engineering. It defines non-functional requirements as attributes or constraints on a system that are not specifically related to functionality. Non-functional requirements describe qualities like usability, reliability, performance, and security. The document provides several definitions of non-functional requirements from different sources and discusses frameworks for classifying non-functional requirements like ISO 9126 and FURPS.

Uploaded by

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

Functional and Non-Functional Requirements in Software

This document discusses functional and non-functional requirements in software engineering. It defines non-functional requirements as attributes or constraints on a system that are not specifically related to functionality. Non-functional requirements describe qualities like usability, reliability, performance, and security. The document provides several definitions of non-functional requirements from different sources and discusses frameworks for classifying non-functional requirements like ISO 9126 and FURPS.

Uploaded by

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

Functional and NonFunctional Requirements

in Software
Engineering

Systems utility
It is determined by both its functional
(physical requirements) and
non-functional
characteristics
(usability, flexibility, performance,
interoperability and security).

What are Non-Functional


Requirements?
A non-functional requirement is an
attribute of or a constraint on a
system.

Non-functional requirements
a) Describe the non-behavioral aspects of a
system, capturing the properties and
constraints under which a system must operate.

b) The required overall attributes of the system,


including portability, reliability, efficiency,
human engineering, testability,
understandability, and modifiability.
c) Requirements which are not specifically
concerned with the functionality of a system.
They place restrictions on the product being
developed and the development process, and

d) ... global requirements on its development or


operational cost, performance, reliability,
maintainability, portability, robustness, and the
like.There is not a formal definition or a
complete list of nonfunctional requirements.
e) The behavioural properties that the specified
functions must have, such as performance,
usability.
f) A property, or quality, that the product must
have, such as an appearance, or a speed or
accuracy property.
g) A description of a property or characteristic
that a software system must exhibit or a

h) types of concerns: functional concerns associated


with the services to be provided, and nonfunctional
concerns associated with quality of service such as
safety, security, accuracy, performance, and so forth.
[2].
i) The term non-functional requirement is used to
delineate requirements focusing on how good
software does something as opposed to the functional
requirements, which focus on what the software
does.
j) Putting it another way, NFRs constitute the
justifications of design decisions and constrain the way
in which the required functionality may be realized.

More definitions.
Quality: Noun -- S: (n) quality (an essential and
distinguishing attribute of something or someone)
Functional: Adjective -- S: (adj) functional (designed
for or capable of a particular function or use)
Non-functional: Adjective -- S: (adj) non-functional
(not having or performing a function); S: (adj)
malfunctioning, non-functional (not performing or
able to perform its regular function)
Functionality: Noun -- S: (n) functionality (capable of
serving a purpose well)

f: I O (e.g., sum: int x int int)

ISO/IEC 9126
It distinguishes 4 types of quality
levels:

quality in use
external quality
internal quality
process quality.

FURPS
A model for classifying software
quality attributes or non-functional
requirements.
Developed at Hewlett-Packard

Functionality - Feature set, Capabilities, Generality,


Security
Usability - Human factors, Aesthetics, Consistency,
Documentation
Reliability - Frequency/severity of failure,
Recoverability, Predictability, Accuracy, Mean time to
failure
Performance - Speed, Efficiency, Resource
consumption, Throughput, Response time
Supportability - Testability, Extensibility, Adaptability,
Maintainability, Compatibility, Configurability,
Serviceability, Installability, Localizability, Portability

You might also like