SEG3101-ch3-4 - Non-Functional Requirements - Qualities

[Pages:31]SEG3101 (Fall 2010)

Non-Functional Requirements

Gregor v. Bochmann, University of Ottawa

Based on Powerpoint slides by Gunter Mussbacher (2009) with material from:

Jo Atlee, Dan Berry (both University of Waterloo); R. Pressman; D. Damian; Amyot 2008, Som? 2008

Table of Contents

? Non-Functional Requirements and Software Quality

Attributes

? Software Quality ? Classifications of Non-Functional Requirements ? Quality Measures

? To measure is to know. If you can not measure it, you can not

improve it.1

[1] Lord Kelvin (1824 - 1907)

2

SEG3101 (Fall 2010). Non-Functional requirements

3

SEG3101 (Fall 2010). Non-Functional requirements

Introduction to Requirements Specification

Software Quality

Software Quality (1)

Classifications of NFRs

Quality Measures

? Most definitions require compliance with requirements

? "Conformance to explicitly stated functional and performance

requirements, explicitly documented development standards,

and implicit characteristics that are expected of all professionally developed software."1

? Implication:

? We need to be able to explicitly quantify requirements and verify that any solution meets them

? We need measures

[1] Pressman, 1997

4

SEG3101 (Fall 2010). Non-Functional requirements

Introduction to Requirements Specification

Software Quality

Software Quality (2)

? An interesting phenomenon:

Classifications of NFRs

Quality Measures

Measurable objectives are usually achieved!

? Therefore, unless you have unrealistic values, requirements

are usually met

? Important to know what measures exist! ? The chosen values, however, will have an impact on the

amount of work during development as well as the number of alternatives and architectural designs from which developers may choose to meet the requirements

5

SEG3101 (Fall 2010). Non-Functional requirements

Introduction to Requirements Specification

Software Quality

Classifications of NFRs

Quality Measures

Types of Non-Functional Requirements (NFRs)

Non-fu nctional requir ement s

Pro du ct requir ements

Or gan izational requir ement s

Ex ternal requ irements

Ef ficiency requ ir ements

Reliab ility requir ements

Port ability requirement s

Interoperabilit y requirement s

Et hi cal requ irements

Usab ility requ ire m ent s

Del ive ry re qu irem ent s

Im pl em ent at io n requir ement s

Standard s requ irements

Leg is lat ive re qu irem ent s

P erfo rm ance requ ire m ent s

S p ace requ ir ements

Priv acy requ irements

Safety re qu irem ent s

Source: Gerald Kotonya and Ian Sommerville, Requirements Engineering ? Processes and Techniques, Wiley, 1998

6

SEG3101 (Fall 2010). Non-Functional requirements

Introduction to Requirements Specification

Software Quality

Classifications of NFRs

Other Classification of NFRs (1)

Quality Measures

? Product-oriented attributes

? Performance : (a) response time, (b) throughput (number of operations performed per second)

? Usability: effort required to learn, use, provide input and interpret results of a program

? Efficiency: minimal use of resources (memory, processor, disk, network...)

? Reliability: of computations, precision ? Security ? Robustness: in the presence of faults, stress, invalid inputs... ? Adaptability: to other environments or problems ? Scalability: for large number of users or quantities of data ? Cost: total cost of ownership (TCO) for acquisition, installation, use,

disposal

7

SEG3101 (Fall 2010). Non-Functional requirements

Introduction to Requirements Specification

Software Quality

Classifications of NFRs

Other Classification of NFRs (2)

Quality Measures

? Product family-oriented attributes

? Portability: does it work for several platforms ? Modifiability: addition of new functionalities ? Reusability: of components, code, designs, and even requirements in

other systems

? They are frequently demanded by developers to:

? Reduce development costs ? Increase revenues by creating several versions derived from a product or

by personalizing it

8

SEG3101 (Fall 2010). Non-Functional requirements

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download