Quality Management
Quality Management
Quality Management
Quality ?
Quality,simplistically, means that a
product should meet its specification
◦ The software product should deliver
the required functionality (functional
requirements) with the required
quality attributes (non–functional
requirements)
Software Quality
Conformance to explicitly stated functional and
performance requirements, explicitly
documented development standards and
implicitly characteristics that are expected of
all professionally developed software
Software Quality
Software requirements are the foundation from
which quality is measured. Lack of conformance
to requirements is lack of quality.
product.
The output of verification is a nearly perfect set of documents, plans,
development standards
Measurement and reporting mechanisms
Cost of Quality
Includes all costs incurred in the pursuit(search, detection,
tracking down) of quality or perform quality related work.
Prevention costs - quality planning, formal technical
reviews, test equipment, training
Appraisal costs - in-process and inter-process
inspection, equipment calibration and maintenance,
testing
Failure costs
◦ Internal failure costs - rework, repair, failure mode analysis
◦ External failure costs - complaint resolution, product return and
replacement, help line support, warranty work
Prevention Appraisal Failure Costs
Cost Costs
Quality In process and Internal External
planning inter process failure failure
inspection
Product return
and
replacement
SQA ACTIVITIES
Prepares an SQA plan for a project
◦ Evaluations to be performed
◦ Audits and reviews to be performed
◦ Standards that are applicable to the project
◦ Procedures for error reporting and tracking
◦ Documents to be produced by the SQA group
Participates in the development of the
software process description
Software Reviews
What is software reviews?
a “filter” for the software engineering process.
Purpose: serves to uncover errors in analysis, design, coding, and testing.
Why software reviews?
To err is human
Easy to catch the errors in engineers’ work
A review --> a way to
- identify the needed improvements of the parts in a product
- confirm the improvement parts of a product.
- achieve technical work of more uniform, predicable, and manageable.
Different types of reviews:
- Informal reviews: informal meeting and informal desk checking
- Formal reviews: (design to an audience of customers, management, and staff)
Walkthrough, inspection, and round-robin reviews)
Software Reviews - Objectives
The primary objective of technical reviews is
to find errors during the process so that they
do not become defects after the release of
the software.
Point out needed improvements in the
product
Conform those parts of a product in which
person) required
Duration of review meeting should be less than 2 hours
* MTBF = Mean Time Between Failure(is the time from one failure to
another. )
*MTTR = Mean Time to Repair(is the average time that it takes to repair
something after a failure)
*MTTF = Mean Time to Failure(is something that cannot be repaired)
Software Availability
Availability =MTTF/(MTTF + MTTR) * 100%
21
November 15, 1997
Reliability should always take
precedence over efficiency.
Why?
Reasons
Computers are now cheap and fast
Unreliable software is liable to be discarded
by users
System failure cost may be enormous
Unreliable systems are difficult to improve
Unreliable systems may cause information
loss
Inefficiency is predictable
Software Safety
Software safety is software quality assurance activity that
focuses on the identification and assessment of potential
hazards that may affect software negatively and cause entire
system to fail.
Loss of heat
..
Power failure Computer failure
. Incorrect
input
SW failed to
throw switch
..
throw switch
Logic reversed
.
November 15, 1997
Statistical Quality Assurance
Information about software defects is
collected and categorized
Each defect is traced back to its cause
Using the Pareto principle (80% of the defects
(MCC)
Intentional deviation from specification (IDS)
Violation of programming standards (VPS)
Error in data representation (EDR)
Inconsistent component interface (ICI)
Error in design logic (EDL)
What is Six Sigma??
Six Sigma is a set of techniques and tools for process
improvement.
a philosophy
• a performance measurement
• an improvement framework
• a set of improvement tools
• a structured approach for business improvement (a business
strategy)
Six Sigma Software Engineering