SQM 1
SQM 1
Management
1
Introduction
How is a quality product
traditionally defined?
Fitness of purpose:
2
Fitness of Purpose
What is fitness of purpose for
software products?
Satisfaction of the requirements specified
in SRS document…
3
Fitness of Purpose
Basically user’s view…
A satisfactory definition of quality
for many products:
A car, a table fan, a food mixer,
microwave oven, etc.
But, not satisfactory for software
products.
Why?
4
Quality for Software Products
Consider a software product:
Functionally correct:
Performs all functions as specified in
the SRS document.
But,has an almost unusable user
interface.
Would you consider it as a quality
product? 5
Quality for Software Products
Consider another example:
A product which does everything
that users want.
But
has an incomprehensible and
unmaintainable code.
Will you call it a quality product?
Quality needs to described in terms
of a set of quality attributes. 6
Product Quality Attributes
Attributes of a good software:
Correctness
Reliability
Efficiency:Software should not make wasteful use
of system resources (disk and memory space, CPU
time, etc.) and should satisfy response time
requirements
Portability
Usability
Reusability
Maintainability
7
Correctness
When do you call a software
correct?
Failures
do not show up during the normal
operation of the software.
8
Portability
When do you call a software to
be portable?
If it can be easily made to work
In different operating systems.
In different machines,
10
Usability
When do you say that a software
has good usability?
ISO:
The totality of features and characteristics
of a product or service that bear on its ability
to satisfy specified or implied needs 13
Measuring Quality
Measurement allows us to establish
baselines for qualities.
Developers must know the minimum
level of quality required.
The present level of quality of a
product needs to be evaluated:
Can evaluate improvements due to some
quality initiative. 14
Quality Models
15
Boehm’s Quality Model (continued)
Correctness properties
Internal properties
Contextual properties
Descriptive properties 18
Software Quality Management System
19
Quality Management Activities
Quality assurance
set of activities for ensuring quality of the processes by which
software is developed
Quality planning
selecting and modifying applicable quality standards and
procedures for a particular project
Quality control
series of inspections, reviews, and tests used to ensure
conformance of a work product to its specifications
ensuring quality standards and procedures are followed by
development team
Note: Quality management should be separated from project
management to ensure independence. 20
What is Quality Assurance?
SPICE
Managerial Structure
Individual Responsibilities.
25
Quality Management System
Every quality conscious organization
has an independent quality department:
Performs several quality system
activities.
Needs support of top management.
Withoutsupport at a high level in a
company:
Many employees may not take the quality
system seriously.
26
Quality System Activities
Auditing of projects
Development of:
standards, procedures, and guidelines.
Production of reports for the top
management:
Summarizing the effectiveness of the
quality system in the organization.
Review of the quality system itself. 27
Quality System
A good quality system must be well
documented.
Without a properly documented
quality system,
Application of quality procedures
become ad hoc,
Results in large variations in the quality
of the products delivered. 28
Quality System
An undocumented quality system:
Sends clear messages to the staff about
the attitude of the organization towards
quality assurance.
32
Evolution of Quality Systems
Initial product inspection method:
Gave way to quality control (QC).
Quality control:
Notonly detect the defective
products and eliminate them
Butalso determine the causes
behind the defects.
33
Quality Control (QC)
Quality control aims at correcting the
causes of errors:
Not just rejecting defective products.
Statistical quality control (SQC):
Inspection
or testing of all products is
cumbersome and many times not
feasible.
Quality of the output of the process
is inferred using statistical methods.
34
Quality Control (QC)
The next breakthrough:
Development of quality
assurance principles.
35
Quality Assurance
Basic premise of modern quality
assurance:
37
Total Quality Management (TQM)
TQM advocates:
Continuous
process
improvements through
process measurements.
38
Business Process Reengineering
39
Business Process Reengineering
TQM focuses on reengineering
of the software process.