Final SQA Final
Final SQA Final
1
MAKE OR BUY expected cost = (path probability)i x (estimated path cost)I
where i is the decision
tree path.
expected costbuild = 0.30 ($380K) + 0.70 ($450K) = $429K
2
Software Quality Assurance
3
Project Planning
- Quality Concepts
- Quality
- Quality Control
- Quality Assurance
- Cost of Quality
- Software Quality Assurance
- Software Reviews
- Formal Technical Reviews
- The Review Meeting
- Review Reporting and Record Keeping
- Review Guidelines
- Formal Approaches to SQA
- Statistical Quality Assurance
- Software Reliability
- The SQA Plan
4
Quality Concepts
SQA encompasses:
i. a quality management approach
ii. effective software engineering technology
iii. formal technical reviews
iv. a multi-tiered testing strategy
v. document change control
vi. software development standard and its control procedure
vii. measurement and reporting mechanism
5
Quality Concepts
Quality
- refers to measurable characteristics of a software.
These items can be compared based on a given standard
6
Quality Control
What is quality control
-- the series of inspections, reviews, and test used throughout the
develop cycle of a software product
Objective
---> minimize the produced defects, increase the product quality
Implementation approaches:
- Fully automated
- Entirely manual
- Combination of automated tools and human interactions
7
Quality Control
Goal
--> provide management with the necessary data about
product quality.
--> gain the insight and confidence of product quality
8
Quality Concepts
How do I ensure that
I’ve done the right thing or have I done it right?
Variation control is the heart of quality control.
9
Cost of Quality
Cost of quality --> includes all costs incurred in the pursuit of
quality or perform quality related work
- Failure cost:
internal failure cost:
- rework, repair, and failure mode analysis
external failure cost:
- complaint resolution
- product return and replacement
- help line support
- warranty work
10
Software Quality Assurance
Goal: to achieve high-quality software product
Quality definition:
“Conformance to explicitly stated functional and performance requirements,
explicitly documented development standards, and implicit characteristics that
expected of al professional developed software.”
11
Software Quality Assurance
About Quality Assurance:
- The first formal quality assurance and control function was introduced at
- During the 1950s and 1960s, the programmers controlled their product
quality.
12
SQA Group
Who involves quality assurance activities?
Software engineers, project managers, customers, sale people, SQA group
13
SQA Group
The SQA group’s tasks:
14
Software Reviews
What is software reviews?
- a “filter” for the software engineering process.
Purpose:
- serves to uncover errors in analysis, design, coding, and testing.
15
Reviews
16
What Are Reviews?
a training ground
17
What Reviews Are Not
18
What Do We Look For?
Defect
- a quality problem found only after the software has
been released to end-users
19
Defect Amplification
A Defect Amplification Model can be used to illustrate the
generation and detection of errors during the design and code
generation actions of a software process.
Defects Detection
Errors from Errors passed through
Previous step Percent Errors passed
Amplified errors 1:x Efficiency To next step
Development step
20
Defect Amplification
21
Formal Technical Reviews (FTR)
Objectives of FTR:
22
Formal Technical Reviews (FTR)
Purposes of FTR:
- serves as a training ground for junior engineers
- promote backup and continuity
23
Formal Technical Reviews (FTR)
The preparation of a review meeting:
- a meeting agenda and schedule (by review leader)
- review material and distribution (by the producer)
- review in advance (by reviewers)
24
Formal Technical Reviews (FTR)
25
Review Guidelines (for FTR)
A minimum set of guidelines for FTR:
26
The Players
review
leader standards bearer (SQA)
producer
maintenance
oracle
recorder reviewer
user rep
27
Statistical Quality
Assurance
Statistical quality assurance reflects a growing trend
throughout industry to become more quantitative about
quality.
28
Statistical Quality
Assurance
Causes of Errors:
29
Statistical Quality
Assurance
In conjunction with the collection of defect information,
software developers can calculate an error index (EI) for
each major step in the software engineering process.
Ei = the total no. of errors uncovered during the ith step in the process.
Si = the no. of serious errors
Mi = the no. of moderate errors
Ti = the no. of minor errors
PS = the size of the product at the ith step.
30
Statistical Quality
Assurance
31
Statistical Quality
Assurance
32
ISO
33
ISO 9000
34
ISO 9000
A quality assurance system may be defined
as the organizational structure,
responsibilities, procedures, processes,
Quality assurance systems are created to
and resources for implementing quality
help organizations ensure their products
management
and services satisfy customer
expectations by meeting their
specifications.
35
ISO 9000
These systems cover a wide variety of
activities encompassing a product’s
entire life cycle including planning,
controlling, measuring, testing and
reporting, and improving
After adopting quality
the standards, levels
a country
throughout the development
typically permits and
only ISO registered
manufacturing process.
companies to supply goods and services to
government agencies and public utilities.
36
ISObecome
To 9000 registered to one of the
quality assurance system models
contained in ISO 9000, a company’s
quality system and operations are
Upon successful registration, a company
scrutinized by third party auditors for
is issued a certificate from a registration
compliance to the standard and for
body represented by the auditors.
effective operation.
Semi-annual surveillance audits ensure
continued compliance to the standard.
37
ISO 9000
38
terms.
ISO 9000
These elements include the
organizational structure, procedures,
processes, and resources needed to
implement quality planning, quality
control, quality assurance, and quality
improvement.
39
ISO 9001
40
ISO 9001
41
ISO 9001
43
ISO 9003
44
Why get ISO 9000 Certification?
45
How to get ISO 9000 Certification
Application Pre-assessment
Document Review
Compliance Audit
Registration
Surveillance
46
Shortcomings of ISO Certification
Requires software production process to
adhere to high quality. (No guidelines for defining an
appropriate process)
of awarding certificates
Variations in the norms
among different accreditation agencies
48
SEI Capability Maturity Model (CMM)
49
CMM Level1 - Initial
Competent People
50
CMM Level2 - Repeatable
51
CMM Level3 - Defined
52
CMM Level4 - Managed
Product and Process metrics collected
54
ISO and CMM
ISO:
CMM:
57
CMM Focus Key Process Areas
Basic items:
- purpose of plan and its scope
- management
- organization structure, SQA tasks, their placement in the process
- roles and responsibilities related to product quality
- documentation
- project documents, models, technical documents, user documents.
59
The SQA Plan
60