Software Quality
and
Software Quality
Assurance
(an overview)
Learning Outcomes
Quality Definition, kinds, challenges, importance
Quality Assurance
Quality Control
SQA in SDLC
Software Quality Assurance an
overview
Introduction
Teacher
Class
Subject
Name
Course outline
Books
Project
Assignments
Software Quality Assurance an
overview
Quality - Definitions
A characteristic or attribute of something
As an attribute of an item, quality refers to
measurable characteristics things we are able to
compare to known standards such as length,
color, electrical properties and malleability.
We can say that quality is a relative term, a
variable that can vary and change its
definitions according to needs, scope,
culture,
environment
and
geo-political
effects.
Software Quality Assurance an
overview
Definition- IEEE
The totality of features and characteristics of
a software product that bears on its ability to
satisfy given needs: for example, conform to
specification.
Software Quality Assurance an
overview
Some more definitions
High levels of user satisfaction and adherence to
requirements by Bill Perry , Head of quality
assurance institute
Achieving high level of user satisfaction, portability,
maintainability, robustness and fitness for use by Dr.
Barry Boehm
Low defects levels, adherence of software functions
to users needs and high reliability by John Musa of
Bell Laboratories
Software Quality Assurance an
overview
Kinds of Quality
Quality of Design
Quality of Conformance
Software Quality Assurance an
overview
Quality Challenges
The Quality measures and criteria varies depending upon
Characteristics of the project
User needs
Application requirements of the system and software
The phase of the project at which the evaluation takes
place
Software Quality must be planned into the project right from the
beginning
Quality goals must be clearly defined, effectively monitored, and
rigorously enforced
Software Quality Assurance an
overview
Why Quality is important?
Quality is a competitive issue now
Quality is a must for survival
Quality makes your product globally acceptable
Quality makes your product cost effective
Quality helps retain customers and increase
profits
Quality is the hallmark of world-class business
Quality is due to customer demand
Today Quality is critical for survival and success
Software Quality Assurance an
overview
Six Software Defect Origins
Requirements
Design
Source code
User manuals/training material
Bad fixes or mistakes made during repairs
Flawed test cases used by the application
Software Quality Assurance an
overview
10
Six Root Causes of Poor
Software Quality
Inadequate training of managers and staff
Inadequate defect and cost measurement
Excessive schedule pressure
Insufficient defect removal
High complexity levels
Ambiguous and creeping requirements and
design
Software Quality Assurance an
overview
11
Changing Views of Quality
Past
Present
Quality
is
the
responsibility
of
blue
collar workers and direct
labor employees working
on the product
Quality defects should
be hidden from the
customers
and
management
Quality problem lead to
blame,
faulty
justifications and excuses
Quality
is
everyone's
responsibility,
including
white-collar workers, the
indirect labor force and the
over head staf
Defects
should
be
highlighted and brought to
the surface for corrective
action
Quality problems lead to
co-operative solutions
Software Quality Assurance an
overview
12
continued
Past
Corrections-to-quality
problems
should
be
accompanied
with
minimum
documentation
Increased
quality
will
increase project costs
Quality
is
internally
focused
Quality will not occur
without close supervision
of people
Quality
occurs
during
project execution
Present
Documentation
is
essential
for
lessons
learnt so that mistakes
are not repeated
Improved quality saves
money
and
increases
business
Quality is customer focused
People want to produce
quality products
Quality
occurs
at
project
initiation and must be planned
for within the project
Software Quality Assurance an
overview
13
A Quality software must
Quality of a software is that it
Meets the user requirements
Have sufficient and up to date documentation
Have to be cost effective
Have to be user friendly
Is easy to learn
Is reliable
Is manageable
Is maintainable
Is secure
Software Quality Assurance an
overview
14
Software Quality
in
Business Context
Software Quality Assurance an
overview
15
Quality Control
Quality control involves the series of
inspections, reviews, and tests used
throughout the software process to
ensure each work product meets the
requirements
SQC: checks that the project follows its standards,
processes and procedures, and that the project produces
the required internal and external (deliverables) products.
Software Quality Assurance an
overview
16
Quality Assurance
Quality Assurance consists of the auditing and reporting
functions of management. Its goal is to provide management
with the necessary data of product quality ; there by gaining
insight that product is meeting its goals
SQA: assures that the standards, process and procedures
are appropriate for the project and are correctly implemented.
Software Quality Assurance (SQA) is defined as a planned and
systematic approach to the evaluation of the quality of and adherence
to software product standards, processes, and procedures.
Software Quality Assurance an
overview
17
Quality Control vs. Quality
Assurance
QC
QA
Correction
(Reactive)
Preventive
(Proactive)
Product
Process
Confidence to
Producer
Confidence to
Customer
Line Function
Staf Function
Find Defects
Prevent Defects
Software Quality Assurance an
overview
18
Quality Control vs. Quality
Assurance (Examples)
QC
QA
Walkthrough
Defining Processes
Testing
Quality Audit
Inspection
Selection of Tools
Checkpoint review
Training
Software Quality Assurance an
overview
19
SQA Function
SQA (Software Quality Analyst) A
Role
To monitor the methods and standards the
software developers use and to verify that
they have properly applied these methods to
their work products
SQA (Software Quality Assurance)
A Function
Software Quality Assurance an
overview
20
References
Software Quality Assurance Principles and
Practice by Nina S Godbole
Chapter 1
1.1, 1.2
1.3 (1.3.1, 1.3.2, 1.3.3, 1.3.4, 1.3.5, 1.3.6)
1.4, 1.5
1.7 (1.7.1, 1.7.2, 1.7.3, 1.7.4, 1.7.5)
Software Quality Assurance an
overview
21