0% found this document useful (0 votes)
143 views44 pages

SQM 1

Software Engineering Tutorials. Crucial for in-depth understanding of how the software industry handles a software through different stages of its life cycle.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
143 views44 pages

SQM 1

Software Engineering Tutorials. Crucial for in-depth understanding of how the software industry handles a software through different stages of its life cycle.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 44

Software Quality

Management

1
Introduction
 How is a quality product
traditionally defined?

 Fitness of purpose:

A quality product does exactly


what the users want it to do.

2
Fitness of Purpose
 What is fitness of purpose for
software products?
 Satisfaction of the requirements specified
in SRS document…

“Quality is conformance to requirements”


-- Philip Crosby, “Quality is Free” 1979

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?

 Therequirements specified in the SRS


document have correctly been
implemented.

 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,

 With other software, etc.


9
Reusability
 When do you say that software
has good reusability?
 If different parts of the
software can easily be reused to
develop a new software.

10
Usability
 When do you say that a software
has good usability?

 If different categories of users


(i.e. both expert and novice users)
can easily invoke the functions of
the product.
11
Maintainability
 A software product is maintainable:

 If errors can be easily corrected as and


when they show up,

 New functions can be easily added to


the product,

 Functionalities of the product can be


easily modified.
12
Two Accepted Definition of “Software
Quality”
 IEEE Glossary:
 Degree to which a system, component, or
process meets (1) specified requirements, and
(2) customer or user needs or expectations

 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

 Boehm’s model Quality Model: A


model with the
 ISO 9126 objective to describe,
assess and/or predict
 Dromey’s Model quality.

15
Boehm’s Quality Model (continued)

 Reflects an understanding of quality where


the software:

 does what the user wants it do

 uses computer resources correctly and


efficiently

 is easy for the user to learn and use

 is well-designed, well-coded, and easily tested


and maintained 16
ISO 9126 Quality Model
 A hierarchical model with six
major attributes contributing to
quality:

 Each right-hand characteristic is


related to only to exactly one
left-hand attribute
17
Dromey Quality Model

 Product quality depends on the


tangible properties of components and
component composition:

 Correctness properties

 Internal properties

 Contextual properties

 Descriptive properties 18
Software Quality Management System

 Also called quality system:


 Principal
methodology used by an
organization to ensure that its
developed software has the
desired quality.

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?

 Quality assurance is a set of


activities for ensuring quality in the
processes by which software is
developed.
 Itaims to prevent defects by
focusing on the process used to make
the product.
21
What is Quality Control?

 Quality control (QC) is a set of


activities for ensuring quality in
products.
 It focuses on identifying defects
in the actual products produced
and causes behind the defects.
22
Process Assessment
 Use of standards and process models:
 High level guideline for Disciplined, controlled process
 Examples include:
 ISO 9001: standard applies to the organizations
engaged in design, development, production and servicing
of goods. Applicable to Most software development
organizations.
 ISO 9002: not design but only involved in production.
Not involve software industry.
-ISO 9003: organizations only involved in installation
and testing
 CMM
 CMU SEI, 5 levels

 SPICE

 A standard for software process assessment 23

 ISO joint committee, Europe, Australia


Product Assessment
 Reviews, inspections, walkthroughs

 Specialized techniques available:


 How to review/assess requirements,
architecture, detailed designs, code
 …
 Testing
 Simulation
 Prototyping
 Formal verification
 Model checking, theorem proving
24
Quality Management System

 A quality system consists of


the following:
 Processes

 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.

 International standards such as ISO


9000 provide:
 Guidance on how to organize a quality
system. 29
Evolution of Quality Systems
 Quality systems have evolved:
 Over the last six decades.
 Prior to World War II:
 Accepted way to produce quality
products:
 Inspect the finished products
 Eliminate defective products.
30
Evolution of Quality Systems
 Since World war II,
 Quality
systems of organizations
have undergone:
 Four stages of evolution.
 Many advances came from
Japanese:
 Helped resurrect Japanese economy.
31
Evolution of Quality Systems

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:

 If an organization's processes are


good and are followed rigorously:

 The products are bound to be of


good quality.
36
Quality Assurance
 All modern quality paradigms
include:
 Guidance for recognizing,
defining, analyzing, and
improving the production
process.

37
Total Quality Management (TQM)

 TQM advocates:
 Continuous
process
improvements through
process measurements.

38
Business Process Reengineering

 BPR:A term related to TQM.


 Process reengineering goes a
step further than quality
assurance:
 Aimsat continuous process
improvement.

39
Business Process Reengineering
 TQM focuses on reengineering
of the software process.

 Whereas BPR aims at reengineering


the way business is carried out in any
organization:

 Not just software development. 40


Total Quality Management (TQM)
 TQM goes beyond documenting
processes
 Optimizes them through redesign.
 Over the years the quality paradigm
has shifted:
 From product assurance to process
assurance.
41
Process and Product Quality
 A good process is usually required to
produce a good product.
 For manufactured goods, process is
the principal quality determinant.
 For design-based activity, other
factors are also involved:
 For example, the capabilities of the
designers. 42
ISO 9000
 ISO (international Standards
Organization):
A consortium of 63 countries
established to formulate and foster
standardization.
 ISO published its 9000 series of
standards in 1987.
43
ISO 9000 Philosophy
 Document what you do
 in
conformance with the requirements
of the applicable standard
 Do what you document
 Record what you did
 Prove it
 maintenance of registration requires
audits every three years, with mini-
audits every six months 44

You might also like