1
QUALITY ASSURANCE
What is high quality 2
software? - 1
It must be useful (to the original customer).
It must be portable (work at all of the
customer’s sites).
It must be maintainable.
It must be reliable.
It must have integrity (produces correct results,
with a high degree of accuracy).
What is high quality 3
software? - 2
It must be efficient.
It must have consistency of function (it does
what the user would, reasonably expect it to
do).
It must be accessible (to the user).
It must have good human engineering (easy to
learn and easy to use).
Measurement, 4
Measures, Metrics
Measurement
◦ is the act of obtaining a measure
Measure
◦ provides a quantitative indication of the size of some
product or process attribute, E.g., Number of errors
Metric
◦ is a quantitative measure of the degree to which a
system, component, or process possesses a given
attribute (IEEE Software Engineering Standards 1993) : Software
Quality - E.g., Number of errors found per person hours
expended
IEEE definitions of 5
software quality
metrics
(1) A quantitative measure of the degree to
which an item possesses a given quality
attribute.
(2) A function whose inputs are software data
and whose output is a single numerical value
that can be interpreted as the degree to which
the software possesses a given quality
attribute.
Classification of software 6
quality metrics
Three kinds of Software Quality Metrics
◦ Product Metrics - describe the characteristics of product
size, complexity, design features, performance, and quality level
◦ Process Metrics - used for improving software
development/maintenance process
effectiveness of defect removal, pattern of testing defect arrival,
and response time of fixes
◦ Project Metrics - describe the project characteristics
and execution
number of developers, cost, schedule, productivity, etc.
fairly straight forward
What is Quality?
7
Quality – developed product meets its specification
Problems:
• Development organization has requirements exceeding customer's
specifications (added cost of product development)
• Certain quality characteristics can not be specified in
unambiguous terms (i.e. maintainability)
• Even if the product conforms to it’s specifications, users may
not consider it to be a quality product (because users may not be involved in
the development of the requirements)
What is Quality
Management? 8
Quality Management – ensuring that required level of
product quality is achieved
• Defining procedures and standards
• Applying procedures and standards to the product and
process
• Checking that procedures are followed
• Collecting and analyzing various quality data
Problems:
• Intangible aspects of software quality can’t be standardized
(i.e elegance and readability)
What are SQA, SQP, SQC, and
SQM? 9
SQA includes all 4 elements…
• Software Quality Assurance – establishment of network of
organizational procedures and standards leading to high-
quality software
2. Software Quality Planning – selection of appropriate
procedures and standards from this framework and adaptation
of these to specific software project
3. Software Quality Control – definition and enactment of
processes that ensure that project quality procedures and
standards are being followed by the software development
team
4. Software Quality Metrics – collecting and analyzing quality
data to predict and control quality of the software product
being developed
Why are Standards Important?
10
• Standards provide encapsulation of best, or at least most
appropriate, practice
• Standards provide a framework around which the quality
assurance process may be implemented
• Standards assist in continuity of work when it’s carried out by
different people throughout the software product lifecycle
Standards should not be avoided. If they are too extensive
for the task at hand, then they should be tailored.
11
What is Product
& Process Metrics ?
It Describes the characteristics of the
product such as size, complication,
design features, performance, and level
of quality.
12
Software relatedness
with product process
Metrics
It must be
convenient to the
user
The software
should be start at
all search engines
Itmust have
integrity to
produce results
accurately
13
Why We Have The
Software Product Metrics ?
Helps Software Engineers To Be
Better Understand The Attributes Of
Models And Asses The Quality Of
Software
14
Why We Have The Software
Product Metrics ?[Continued…]
Helps Software
Engineers To
Gain Insight
Into The Design
And
Construction Of
Software
15
Why We Have The Software
Product Metrics ?[Continued…]
Focus On Attributes Of
Software Of Software
Engineering Work
Products Resulting From
Analysis, design,coding
And Testing
16
Why We Have The Software
Product Metrics ?[Continued…]
Provide A
Systematic
Way To Access
Quality Based
On Set Of
Clearly Defined
Rules
17
Why We Have The Software
Product Metrics ?[Continued…]
Provide An
“On The Spot”
Rather Than
“After-the-fact”
Insight Into
The Software Development
18
PROJECT INDICATOR WHAT IS Process
and Project Indicators ?
Process
indicators: are
those indicato
rs that are
used to
measure proje
ct
processes or
activities
PROJECT INDICATOR
FOR EXAMPLE
Process Standards
19
Process Standards – standards that define the process
which should be followed during software development
ISO CMM CMMI
Organizational Organizational
IPDS
Quality Manual SD Process STD’s
Project Project SD Process STD’s Project
SQP (SDP, IP, Method Sheets) SCMP
Product Standards
20
Product Standards – standards that apply to software
product being developed
ISO MIL/ Industry
STD’s STD’s
Organizational
Product STD’s
COTS Project Product STD’s
STD’s (SDP, IP, Method Sheets)
21
What is ISO
ISO [International organization for
standardization] is a non-governmental
organization established in 1946 in Geneva,
Switzerland
22
Introduction to ISO 9000
The ISO 9000 family of standards is
related to quality management
systems and designed to help
organizations to ensure that they meet
the needs of customers and other
stakeholders while meeting statutory
and regulatory requirements.
ISO 9000 deals with the fundamentals
of quality management systems,
including the eight management
principles on which the family of
standards is based.
Eight Quality Management 23
Principles
Custome Involvemen
Leadershi
r p t of
focus people
System
Process approach to Continual
managemen improvemen
t
approac t
h Factual Mutually
approach beneficial
to supplier
decision- relationship
making s
24
ISO 9000
Series
Explains fundamental quality concepts and
ISO provides guidelines for the selection and
application of each standard
9000
• Model for quality assurance in design,
ISO development, production, installation and
9001 servicing.
• Model for quality assurance in the
ISO production and installation of
manufacturing systems
9002
25
ISO • Quality assurance
in final inspection
9003 and testing.
• Guidelines for the applications
ISO
of standards in quality
management and quality
9004 systems.
ISO - 9001 Elements
Quality System Requirements Software Quality 26
Management Responsibility Responsibilities
Quality system Management Responsibility
Contract review Quality system
Design Control
Contract review
Document control
Design Control
Purchasing
Purchaser supplied product Document control
Product identification and traceability Purchasing
Process control Product identification and traceability
Inspection and testing
Process control
Inspection, measuring and test equipment
Inspection and testing
Inspection and test status
Control of non-conforming product Inspection and test status
Corrective action Corrective action
Handling, storage, preservation, packaging and
Quality records
shipping
Quality records Internal quality audits
Internal quality audits Training
Training
Statistical techniques
Servicing
Statistical techniques
Advantages 27
Quality is maintained,
ISO registration also has a significant bearing on market
credibility as well.
Opportunity to compete with larger companies,
More time spent on customer focus,
Confirmation that your company is committed to quality
May facilitate trade and increased market opportunities
Increase customer confidence and satisfaction
TOTAL QUALITY MANAGEMENT
INTRODUCTION TO TQM
What is TQM?
TQM is the integration of all functions and
processes within an organization in order to
achieve continuous improvement of the quality
of goods and services. The goal is customer
satisfaction.
“ No doubt , humans are always deficient”
Term of TQM 30
31
Seven quality management
principles
Customer focus.
Leadership.
Engagement of people.
Process approach.
Improvement.
Evidence-based decision making.
Relationship management.
Stages of TQM 32
Quality
Monitoring variations
Control
Quality
Assurance Standards based
Quality
Improvement Process oriented
Quality
Management Internally motivated
Total Quality Changed organizational
Management
33
TQM Tools
Pareto Principle (how much each cause
contributes to an outcome or effect)
Scatter Plots.
Control Charts.
Flow Charts.
Cause and Effect, Fishbone, Ishikawa Diagram.
Histogram or Bar Graph.
Check Lists.
Check Sheets.
TQM to Software
Development Process
One of Deming ideas
was the Plan, Do, Check,
Action, which is usually
shortened to PDCA.
We can use PDCA cycle
because the basic idea,
for software processes
development to gain
software quality
PDCA & TQM DOSTI!!
The basic need of TQM is
continuous improvement. PDCA TQM
In this competitive world if
you are not in the race you
will lose.
For this continuous
improvement purpose of PCDA
cycle acts as a best tool, so as
to achieve Quality
Also called as deming cycle
PROCESS TO OBTAIN TQM BY
PDCA
Select the project in which TQM to be achieved
Grasp the present status
Analyze the cause
Determine the corrective action
Implement corrective action
Check the effects in terms of quality
Take appropriate action
Conclude and future plans to obtain TQM
PLAN
Select the project in which TQM TO BE IMPLEMENTED
-Project background and reasons for selection
-Set a target
-Prepare a schedule of activities
Grasp the Current status
Analyze the cause and Determine the Corrective Action
-Prepare cause and effect diagram
-Prepare a hypothesis and verify most likely causes
-Document the corrective action
DO
• Implement the corrective action
Prepare instructions and flow charts for
complicated procedures
Adequate training must be provided
Follow the plan exactly
Record any division from plan and collect the
data on results
CHECK
• Check the Effect of corrective action
– Compare over all results
– Analyse failure to achieve results
– Results achieved
• Check appropriate action
– Documentation, standardisation and control
– Training
– Decide on future plans
– The well known seven quality control tools may be
used in this process
Definition
Six Sigma seeks to improve the quality of process outputs by
identifying and removing the causes of defects.
Six Sigma approach is a collection of managerial and
statistical
concept and techniques that focuses on reducing
variation in
processes and preventing deficiencies in product.
The concept of Variation states “NO two items will be
Methodologies
Six Sigma projects follow two project methodologies :
1. DMAIC
2. DMADV
These methodologies, composed of five phases.
1. DMAIC
DMAIC is used for projects aimed at improving an
existing business process.
2.
DMADV
DMADV is used for projects aimed at creating new product
or process designs.
1. DMAIC
The DMAIC project methodology has Five
phases:
1. Define
2. Measure
3. Analyze
4. Improve
5. Control
[Link]
Define the system, the voice of the customer and
their requirements, and the project goals,
specifically.
[Link]
Measure key aspects of the current process and collect relevant
data.
[Link]
Analyze the data to investigate and verify cause-and
effect relationships. Determine what the
relationships are, and attempt to ensure
that all factors have been considered. Seek out
root cause of the defect under investigation.
[Link]
Improve or optimize the current process based upon
data analysis using techniques such as design of
experiments, poka yoke or mistake proofing, and
standard work to create a new, future state
process. Set up pilot runs to establish process
capability.
[Link]
Control the future state process to
ensure that any deviations from target
are corrected before they result in
defects. Implement control systems such
as statistical process control, production
boards, visual workplaces, and
continuously monitor the process.
2.
DMADV
DMADV project methodology has Five phases:
1. Define
2. Measure
3. Analyze
4. Design
5. Verify
[Link] :
Define design goals that are consistent with
customer demands and the enterprise
strategy.
[Link]
Measure and identify CTQs (characteristics that are
Critical To Quality), product capabilities, production
process capability, and risks.
[Link]
Analyze to develop and design alternatives.
4. Design
Design an improved alternative, best suited per analysis in the
previous step
5. Verify
Verify the design, set up pilot runs,
implement the production process
and hand it over to the process
owner(s).
Software used
•Arena for Six Sigma
•ARIS Six Sigma
•Bonita Open Solution BPMN2 standard and
KPIs for statistic monitoring
•JMP
•Mathematical
•MATLAB or GNU Octave
•Microsoft Visio
•STATA
•STATISTICA
And Many more…..