0% found this document useful (0 votes)
17 views58 pages

Understanding Software Quality Metrics

Uploaded by

Sri Meenakshi
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views58 pages

Understanding Software Quality Metrics

Uploaded by

Sri Meenakshi
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

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

You might also like