Sei sulla pagina 1di 24

Software Quality

Assurance

Chapter II: Basics and Definitions

Prof. Dr. Gregor Engels


FG Database and
Information Systems
Overview

Basics and Definitions


What is software?
What is quality?
Views of
q y,
quality,
product quality,

Why does the classical approach to QA not apply?

SQA – 2008 University of Paderborn - Gregor Engels 2


Basic Terminology

What is Software?

Software is:
C
Computer
t programs, procedures,
d and
d possibly
ibl associated
i t d
documentation and data pertaining to the operation of a
computer system.
system
[IEEE_Std_610.12-1990]

SQA – 2008 University of Paderborn - Gregor Engels 3


IEEE

SQA – 2008 University of Paderborn - Gregor Engels 4


IEEE Standards Association

SQA – 2008 University of Paderborn - Gregor Engels 5


SQA – 2008 University of Paderborn - Gregor Engels 6
SQA – 2008 University of Paderborn - Gregor Engels 7
SQA – 2008 University of Paderborn - Gregor Engels 8
Basic Terminology

What is quality?

Various definitions:
„The ability to satisfy stated or implied needs“ [ISO 8402]

„A
A product or service free of deficiencies“
[American Society for Quality]

„Fitness for use“ [Joseph M. Juran]


„Degree to which a set of inherent characteristic fulfills
requirements“ [ISO 9001]

SQA – 2008 University of Paderborn - Gregor Engels 9


SQA – 2008 University of Paderborn - Gregor Engels 10
SQA – 2008 University of Paderborn - Gregor Engels 11
SQA – 2008 University of Paderborn - Gregor Engels 12
Overview

Basics and Definitions


What is software?
What is quality?
Views of
q y,
quality,
product quality,

Why does the classical approach to QA not apply?

SQA – 2008 University of Paderborn - Gregor Engels 13


Basic Terminology

What is quality of a product?

The view of quality can differ upon:


The user
The context
The product alternatives
The stage of the lifecycle
[…]
[ ]

SQA – 2008 University of Paderborn - Gregor Engels 14


Different views of quality

Transcendental view: quality is universally identifiable,


absolute unique and perfect
absolute,
Product view: the quality of a product is measurable in
an objective
bj ti manner
User view: quality is fitness for use
Manufacturing view: quality is the result of the right
development
p of the p
product
Value-based view (Economic): quality is a function of
costs and benefits

SQA – 2008 University of Paderborn - Gregor Engels 15


Software Quality – IEEE

Software quality is:


(1) The degree to which a system, component, or
process meets specified requirements.
(2) The degree to which a system, component, or
process meets customer or user needs or
expectations.
[[IEEE_Std_610.12-1990]
_ _ ]

SQA – 2008 University of Paderborn - Gregor Engels 16


Software Quality - Pressman

Software quality is :
Conformance to explicitly stated functional and
performance requirements, explicitly documented
d
development
l t standards,
t d d and d iimplicit
li it characteristics
h t i ti th thatt
are expected of all professionally developed software.

[Roger Pressman. Software Engineering: A Practitioner's


A
Approach.
h McGraw-Hill,
M G Hill 6 ed.,
d 2004]

SQA – 2008 University of Paderborn - Gregor Engels 17


Software Quality Assurance

Software quality assurance (QA) is :


Set of systematic activities providing evidence of the
ability of the software process to produce a software
product
d t that
th t is
i fit tto use”

[G. Schulmeyer and J. McManus, Software Quality Handbook,
Prentice Hall
Hall, 1998
1998.]]

SQA – 2008 University of Paderborn - Gregor Engels 18


Overview

Basics and Definitions


What is software?
What is quality?
Views of
q y,
quality,
product quality,

Why does the classical approach to QA not apply?

SQA – 2008 University of Paderborn - Gregor Engels 19


Why does the classical approach to QA not apply?

Classical approach (from hardware design)

Requirements:
define complete set of external quality characteristics
Æ complete set of internal quality characteristics and
a detailed and complete set of requirements and specifications
Design:
design that satisfies the requirements and specifications
design for reliability (wear out)
design for manufacturability
(e g self
design for maintainability (e.g., diagnosis)
self-diagnosis)
Manufacturing:
statistical production process control with acceptance sampling
f
focall area off quality
li assurance!!
Operation: collect failure data for continuous improvement and predictions
(intelligent maintenance)

SQA – 2008 University of Paderborn - Gregor Engels 20


Why does the classical approach to QA not apply?

What is special about software?

Invisibility of the product


Limited opportunities to detect defects (“bugs”)
Often new demanding functionality has to be realized
Often software has to realize extraordinary high
complexity

[D.
[ Galin,
l Software
f Quality
l Assurance: From theory
h to implementation.
l
Harlow, England: Pearson Addison Wesley, 2004.]

SQA – 2008 University of Paderborn - Gregor Engels 21


Why does the classical approach to QA not apply?

Requirements:
Completeness is hard to achieve (complexity)
Design:
d ig ffor reliability
design li bilit only
l iin special
i l cases
design for manufacturability is not required
design for maintainability in special cases
focal area of software quality assurance!
Manufacturing Ö Implementation:
li i d success with
limited i h statistical
i i l process controll ((metrics)
i )
Operation:
fixing found bugs

SQA – 2008 University of Paderborn - Gregor Engels 22


Quality Models

Old-fashioned methods for quality assurance don’t work


with software
The general definitions of software quality are not
ffi i t in
sufficient i practice
ti
Thus, a standardized quality model is needed!

Current Standard Quality Model:


ISO/IEC 9126-1: Software Engineering – Product Quality, Part 1:
Q
Qualityy Model,, 2001

SQA – 2008 University of Paderborn - Gregor Engels 23


Now: Quality Standards!

SQA – 2008 University of Paderborn - Gregor Engels 24

Potrebbero piacerti anche