SlideShare a Scribd company logo
1
Software Metrics
• It refers to a broad range of
quantitative measurements for
computer software that enable to
– improve the software process
continuously
– assist in quality control and productivity
– assess the quality of technical products
– assist in tactical decision-making
By. Dr. B. J. Mohite 9850098225
2
Measure, Metrics, Indicators
• Measure.
– provides a quantitative indication of the
extent, amount, dimension, capacity, or size
of some attributes of a product or process.
• Metrics.
– relates the individual measures in some
way.
• Indicator.
– a combination of metrics that provide insight
into the software process or project or product
itself.
3
What Should Be Measured?
measurement
What do we
use as a
basis?
• size?
• function?
project metrics
process metrics
process
product
product metrics
4
Metrics of Process Improvement
• Focus on Manageable
Repeatable Process
• Use of Statistical SQA
on Process
• Defect Removal
Efficiency
5
Statistical Software Process Improvement
All errors and defects
are categorized by
origin
The cost to correct
each error and defect
is recorded
No. of errors and defects
in each category is
counted and ranked in
descending order
The overall cost in
each category is
computed
Resultant data are
analyzed and the
“culprit” category is
uncovered
Plans are developed
to eliminate the
errors
6
Causes and Origin of Defects
Logic
20%
Sofware Interface
6%
Hardware Interface
8%
User Interface
12%
Data Handling
11%
Error Checking
11%
Standards
7%
Specification
25%
7
Metrics of Project Management
• Budget
• Schedule/ReResource
Management
• Risk Management
• Project goals met or
exceeded
• Customer satisfaction
8
Metrics of the Software Product
• Focus on Deliverable
Quality
• Analysis Products
• Design Product
Complexity – algorithmic,
architectural, data flow
• Code Products
• Production System
9
How Is Quality Measured?
• Analysis Metrics
– Function-based Metrics: Function Points(
Albrecht), Feature Points (C. Jones)
– Bang Metric (DeMarco): Functional Primitives,
Data Elements, Objects, Relationships, States,
Transitions, External Manual Primitives, Input Data
Elements, Output Data Elements, Persistent Data
Elements, Data Tokens, Relationship Connections.
10
Source Lines of Code (SLOC)
• Measures the number of physical lines of
active code
• In general the higher the SLOC in a module
the less understandable and maintainable
the module is
11
Function Oriented Metric -
Function Points
• Function Points are a measure of “how big” is the
program, independently from the actual physical
size of it
• It is a weighted count of several features of the
program
• Dislikers claim FP make no sense wrt the
representational theory of measurement
• There are firms and institutions taking them very
seriously
12
complexity multiplier
function points
number of user inputs
number of user outputs
number of user inquiries
number of files
number of ext.interfaces
measurement parameter
3
4
3
7
5
count
weighting factor
simple avg. complex
4
5
4
10
7
6
7
6
15
10
=
=
=
=
=
count-total
X
X
X
X
X
Analyzing the Information Domain
Assuming all inputs with the same weight, all output with the same weight, …
Complete Formula for the Unadjusted Function Points:
   lesInternalFi terfacesExternalInInquiryOutputInputs
WeiWifWinWoWi
Unadjusted Function Points:
13
Taking Complexity into Account
Factors are rated on a scale of 0 (not important)
to 5 (very important):
data communications
distributed functions
heavily used configuration
transaction rate
on-line data entry
end user efficiency
on-line update
complex processing
installation ease
operational ease
multiple sites
facilitate change
 MultiplierComplexity MultiplierComplexityFCM
Formula:
14
Typical Function-Oriented Metrics
• errors per FP (thousand lines of code)
• defects per FP
• $ per FP
• pages of documentation per FP
• FP per person-month
15
LOC vs. FP
• Relationship between lines of code and
function points depends upon the
programming language that is used to
implement the software and the quality of
the design
• Empirical studies show an approximate
relationship between LOC and FP
16
LOC/FP (average)
Assembly language 320
C 128
COBOL, FORTRAN 106
C++ 64
Visual Basic 32
Smalltalk 22
SQL 12
Graphical languages (icons) 4
17
How Is Quality Measured?
• Design Metrics
– Structural Complexity: fan-in, fan-out, morphology
– System Complexity:
– Data Complexity:
– Component Metrics: Size, Modularity, Localization,
Encapsulation, Information Hiding, Inheritance,
Abstraction, Complexity, Coupling, Cohesion,
Polymorphism
• Implementation Metrics
Size, Complexity, Efficiency, etc.
18
Comment Percentage (CP)
• Number of commented lines of code divided by
the number of non-blank lines of code
• Usually 20% indicates adequate commenting for C
or Fortran code
• The higher the CP value the more maintainable the
module is
19
Size Oriented Metric - Fan In and
Fan Out
• The Fan In of a module is the amount of information
that “enters” the module
• The Fan Out of a module is the amount of
information that “exits” a module
• We assume all the pieces of information with the
same size
• Fan In and Fan Out can be computed for functions,
modules, objects, and also non-code components
• Goal - Low Fan Out for ease of maintenance.
20
Testing Metrics
• Metrics that predict the likely number of
tests required during various testing phases
• Metrics that focus on test coverage for a
given component
21
Views on SE Measurement
22
Views on SE Measurement
23
Views on SE Measurement
24
12 Steps to Useful Software Metrics
Step 1 - Identify Metrics Customers
Step 2 - Target Goals
Step 3 - Ask Questions
Step 4 - Select Metrics
Step 5 - Standardize Definitions
Step 6 - Choose a Model
Step 7 - Establish Counting Criteria
Step 8 - Decide On Decision Criteria
Step 9 - Define Reporting Mechanisms
Step 10 - Determine Additional Qualifiers
Step 11 - Collect Data
Step 12 - Consider Human Factors
25
Step 1 - Identify Metrics
Customers
Who needs the information?
Who’s going to use the metrics?
If the metric does not have a customer --
do not use it.
26
Step 2 - Target Goals
Organizational goals
– Be the low cost provider
– Meet projected revenue targets
Project goals
– Deliver the product by June 1st
– Finish the project within budget
Task goals (entry & exit criteria)
– Effectively inspect software module ABC
– Obtain 100% statement coverage during testing
27
Step 3 - Ask Questions
Goal: Maintain a high level of customer
satisfaction
• What is our current level of customer
satisfaction?
• What attributes of our products and services are
most important to our customers?
• How do we compare with our competition?
28
Step 4 - Select Metrics
Select metrics that provide information
to help answer the questions
• Be practical, realistic, pragmatic
• Consider current engineering environment
• Start with the possible
Metrics don’t solve problems
-- people solve problems
Metrics provide information so people can make
better decisions
29
Selecting Metrics
Goal: Ensure all known defects are corrected
before shipment
•
•
•
•
•
•
•
30
Metrics Objective Statement Template
To
understand
evaluate
control
predict
the
attribute
of the
entity
in order
to
goal(s)
evaluate
% defects
found &
corrected
during
testing
To the
in order
to
ensure all
known defects
are corrected
before
shipment
Example - Metric: % defects corrected
31
Step 5 - Standardize Definitions
Developer User
32
Step 6 - Choose a Measurement
Models for code inspection metrics
• Primitive Measurements:
– Lines of Code Inspected = loc
– Hours Spent Preparing = prep_hrs
– Hours Spent Inspecting = in_hrs
– Discovered Defects = defects
• Other Measurements:
– Preparation Rate = loc / prep_hrs
– Inspection Rate = loc / in_hrs
– Defect Detection Rate = defects / (prep_hrs + in_hrs)
33
Step 7 - Establish Counting
Criteria
Lines of Code
• Variations in counting
• No industry accepted standard
• SEI guideline - check sheets for criteria
• Advice: use a tool
34
Counting Criteria - Effort
What is a Software Project?
• When does it start / stop?
• What activities does it include?
• Who works on it?
35
Step 8 - Decide On Decision Criteria
Establish Baselines
• Current value
– Problem report backlog
– Defect prone modules
• Statistical analysis (mean & distribution)
– Defect density
– Fix response time
– Cycle time
– Variance from budget (e.g., cost, schedule)
36
Step 9 - Define Reporting Mechanisms
Open Fixed Resolved
Jan-97 23 13 3
Feb-97 27 24 11
Mar-97 18 26 15
Apr-97 12 18 27
0
40
80
120
0 20 40 60 80 100 120
0
20
40
60
80
100
1st Qtr 2nd Qtr 3rd Qtr 4th Qtr
1 2 3 4 5 6 7 8 9 10 11 12
0
20
40
60
80
100
Jan Mar May July
0
40
80
120
160
1st Qtr 2nd Qtr 3rd Qtr 4th Qtr
37
Step 10 - Determine Additional
Qualifiers
A good metric is a generic metric
Additional qualifiers:
• Provide demographic information
• Allow detailed analysis at multiple levels
• Define additional data requirements
38
Step 11 – Collect Data
What data to collect?
• Metric primitives
• Additional qualifiers
Who should collect the data?
• The data owner
– Direct access to source of data
– Responsible for generating data
– Owners more likely to detect anomalies
– Eliminates double data entry
39
Examples of Data Ownership
Owner Examples of Data Owned
• Management • Schedule
• Budget
• Engineers • Time spent per task
• Inspection data including defects found
• Root cause of defects
• Testers • Test Cases planned / executed / passed
• Problems
• Test coverage
• Configuration management • Lines of code
specialists • Modules changed
• Users • Problems
• Operation hours
40
Step 12 – Consider Human Factors
The People Side of the Metrics Equation
• How measures affect people
• How people affect measures
“Don’t underestimate the intelligence of your
engineers. For any one metric you can come
up with, they will find at least two ways to
beat it.” [unknown]
41
Don’t
Measure
individuals
Use metrics as
a “stick”
Ignore the data
Use only one
metric
Cost
Quality
Schedule
42
Do
Select metrics
based on goals
Goal 1 Goal 2
Question 1 Question 2 Question 3 Question 4
Metrics 1 Metric 2 Metric 3 Metric 4 Metric 5
[Basili-88]
Focus on processes,
products & services
Processes,
Products &
Services
Provide feedback
Feedback
Data
Data Providers Metrics
Obtain “buy-in”

More Related Content

What's hot

Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
Ramesh Babu
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
Muhammad Yousuf Abdul Qadir
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
Mufaddal Nullwala
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
Amisha Narsingani
 
Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )
Kiran Hanjar
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
Reetesh Gupta
 
Ch 4 components of the sqa system
Ch 4 components of the sqa systemCh 4 components of the sqa system
Ch 4 components of the sqa systemKittitouch Suteeca
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)
ShudipPal
 
Unit I Software Testing and Quality Assurance
Unit I Software Testing and Quality AssuranceUnit I Software Testing and Quality Assurance
Unit I Software Testing and Quality Assurance
VinothkumaR Ramu
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
Hitesh Mohapatra
 
13 software metrics
13 software metrics13 software metrics
Software Project Management (monitoring and control)
Software Project Management (monitoring and control)Software Project Management (monitoring and control)
Software Project Management (monitoring and control)
IsrarDewan
 
Software project management Software economics
Software project management Software economicsSoftware project management Software economics
Software project management Software economics
REHMAT ULLAH
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
Er. Shiva K. Shrestha
 
Introduction to Software Engineering SE1
Introduction to Software Engineering SE1Introduction to Software Engineering SE1
Introduction to Software Engineering SE1koolkampus
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
University of Sargodha
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development processRiant Soft
 
Software project management
Software project managementSoftware project management
Software project management
Indu Sharma Bhardwaj
 
Wideband Delphi Estimation
Wideband Delphi EstimationWideband Delphi Estimation
Wideband Delphi Estimation
Aniruddha Chakrabarti
 

What's hot (20)

Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
 
Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
 
Ch 4 components of the sqa system
Ch 4 components of the sqa systemCh 4 components of the sqa system
Ch 4 components of the sqa system
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Unit I Software Testing and Quality Assurance
Unit I Software Testing and Quality AssuranceUnit I Software Testing and Quality Assurance
Unit I Software Testing and Quality Assurance
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
13 software metrics
13 software metrics13 software metrics
13 software metrics
 
Software Project Management (monitoring and control)
Software Project Management (monitoring and control)Software Project Management (monitoring and control)
Software Project Management (monitoring and control)
 
Software project management Software economics
Software project management Software economicsSoftware project management Software economics
Software project management Software economics
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Introduction to Software Engineering SE1
Introduction to Software Engineering SE1Introduction to Software Engineering SE1
Introduction to Software Engineering SE1
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development process
 
Software project management
Software project managementSoftware project management
Software project management
 
Wideband Delphi Estimation
Wideband Delphi EstimationWideband Delphi Estimation
Wideband Delphi Estimation
 

Viewers also liked

Payback model of risk management by Dr. B. J. Mohite
Payback model of risk management by Dr. B. J. MohitePayback model of risk management by Dr. B. J. Mohite
Payback model of risk management by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Linear programming in market application
Linear programming in market applicationLinear programming in market application
Linear programming in market application
Ahmad Raza Bhatti
 
Greedy method by Dr. B. J. Mohite
Greedy method by Dr. B. J. MohiteGreedy method by Dr. B. J. Mohite
Greedy method by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Function Point Analysis (FPA) by Dr. B. J. Mohite
Function Point Analysis (FPA) by Dr. B. J. MohiteFunction Point Analysis (FPA) by Dr. B. J. Mohite
Function Point Analysis (FPA) by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Pedagogy of science
Pedagogy of sciencePedagogy of science
Pedagogy of science
Abu Bashar
 
Inventory Management
Inventory ManagementInventory Management
Inventory ManagementAbu Bashar
 
Operation research complete note
Operation research  complete noteOperation research  complete note
Operation research complete note
kabul university
 
Unit 4 or
Unit 4 orUnit 4 or
Queuing theory
Queuing theoryQueuing theory
Queuing theoryAbu Bashar
 
Enterprise Resource Management by Dr. B. J. Mohite
Enterprise Resource Management by Dr. B. J. MohiteEnterprise Resource Management by Dr. B. J. Mohite
Enterprise Resource Management by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Design and analysis of Algorithm By Dr. B. J. Mohite
Design and analysis of Algorithm By Dr. B. J. MohiteDesign and analysis of Algorithm By Dr. B. J. Mohite
Design and analysis of Algorithm By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Queuing theory
Queuing theoryQueuing theory
Queuing theoryAbu Bashar
 
Sales forecasting techniques
Sales forecasting techniquesSales forecasting techniques
Sales forecasting techniquesAbu Bashar
 
Plant location and layout
Plant location and layoutPlant location and layout
Plant location and layout
Abu Bashar
 
Functional Modules of ERP By Dr. B. J. Mohite
Functional Modules of ERP By Dr. B. J. MohiteFunctional Modules of ERP By Dr. B. J. Mohite
Functional Modules of ERP By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Problem Definition in research design
Problem Definition in research designProblem Definition in research design
Problem Definition in research design
Abu Bashar
 
Managerial Decision Making by Dr. B. J. Mohite
Managerial Decision Making by Dr. B. J. MohiteManagerial Decision Making by Dr. B. J. Mohite
Managerial Decision Making by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Project management cpm-pert
Project management   cpm-pertProject management   cpm-pert
Project management cpm-pert
Abu Bashar
 
COCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. MohiteCOCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Simplex method
Simplex methodSimplex method
Simplex methodAbu Bashar
 

Viewers also liked (20)

Payback model of risk management by Dr. B. J. Mohite
Payback model of risk management by Dr. B. J. MohitePayback model of risk management by Dr. B. J. Mohite
Payback model of risk management by Dr. B. J. Mohite
 
Linear programming in market application
Linear programming in market applicationLinear programming in market application
Linear programming in market application
 
Greedy method by Dr. B. J. Mohite
Greedy method by Dr. B. J. MohiteGreedy method by Dr. B. J. Mohite
Greedy method by Dr. B. J. Mohite
 
Function Point Analysis (FPA) by Dr. B. J. Mohite
Function Point Analysis (FPA) by Dr. B. J. MohiteFunction Point Analysis (FPA) by Dr. B. J. Mohite
Function Point Analysis (FPA) by Dr. B. J. Mohite
 
Pedagogy of science
Pedagogy of sciencePedagogy of science
Pedagogy of science
 
Inventory Management
Inventory ManagementInventory Management
Inventory Management
 
Operation research complete note
Operation research  complete noteOperation research  complete note
Operation research complete note
 
Unit 4 or
Unit 4 orUnit 4 or
Unit 4 or
 
Queuing theory
Queuing theoryQueuing theory
Queuing theory
 
Enterprise Resource Management by Dr. B. J. Mohite
Enterprise Resource Management by Dr. B. J. MohiteEnterprise Resource Management by Dr. B. J. Mohite
Enterprise Resource Management by Dr. B. J. Mohite
 
Design and analysis of Algorithm By Dr. B. J. Mohite
Design and analysis of Algorithm By Dr. B. J. MohiteDesign and analysis of Algorithm By Dr. B. J. Mohite
Design and analysis of Algorithm By Dr. B. J. Mohite
 
Queuing theory
Queuing theoryQueuing theory
Queuing theory
 
Sales forecasting techniques
Sales forecasting techniquesSales forecasting techniques
Sales forecasting techniques
 
Plant location and layout
Plant location and layoutPlant location and layout
Plant location and layout
 
Functional Modules of ERP By Dr. B. J. Mohite
Functional Modules of ERP By Dr. B. J. MohiteFunctional Modules of ERP By Dr. B. J. Mohite
Functional Modules of ERP By Dr. B. J. Mohite
 
Problem Definition in research design
Problem Definition in research designProblem Definition in research design
Problem Definition in research design
 
Managerial Decision Making by Dr. B. J. Mohite
Managerial Decision Making by Dr. B. J. MohiteManagerial Decision Making by Dr. B. J. Mohite
Managerial Decision Making by Dr. B. J. Mohite
 
Project management cpm-pert
Project management   cpm-pertProject management   cpm-pert
Project management cpm-pert
 
COCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. MohiteCOCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. Mohite
 
Simplex method
Simplex methodSimplex method
Simplex method
 

Similar to Software metrics by Dr. B. J. Mohite

Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
Seema Kamble
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
Indu Sharma Bhardwaj
 
Project Matrix and Measuring S/W
Project Matrix and Measuring S/WProject Matrix and Measuring S/W
Project Matrix and Measuring S/W
Akash Maheshwari
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
Rupesh Vaishnav
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
Saqib Raza
 
Testing Metrics and why Managers like them
Testing Metrics and why Managers like themTesting Metrics and why Managers like them
Testing Metrics and why Managers like them
PractiTest
 
Day 1 1620 - 1705 - maple - pranabendu bhattacharyya
Day 1   1620 - 1705 - maple - pranabendu bhattacharyyaDay 1   1620 - 1705 - maple - pranabendu bhattacharyya
Day 1 1620 - 1705 - maple - pranabendu bhattacharyyaPMI2011
 
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02PMI_IREP_TP
 
Doing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating AnalyticsDoing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating Analytics
Tasktop
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
SHREEHARI WADAWADAGI
 
Unit2 - Metrics.pptx
Unit2 - Metrics.pptxUnit2 - Metrics.pptx
Unit2 - Metrics.pptx
rituah
 
software requirement
software requirement software requirement
software requirement
nimmik4u
 
Software Quality Dashboard Benchmarking Study
Software Quality Dashboard Benchmarking StudySoftware Quality Dashboard Benchmarking Study
Software Quality Dashboard Benchmarking Study
John Carter
 
Trends in-om-scm-27-july-2012-2
Trends in-om-scm-27-july-2012-2Trends in-om-scm-27-july-2012-2
Trends in-om-scm-27-july-2012-2
Sanjeev Deshmukh
 
Software Matrix it's a topic in software quality.pptx
Software Matrix it's a topic in software quality.pptxSoftware Matrix it's a topic in software quality.pptx
Software Matrix it's a topic in software quality.pptx
abpassion478
 
Software metrics
Software metricsSoftware metrics
Software metrics
Aadarsh Sharma
 
Testing Metrics and Tools, Analyse de tests
Testing Metrics and Tools, Analyse de testsTesting Metrics and Tools, Analyse de tests
Testing Metrics and Tools, Analyse de tests
HervKoya
 
DIGITAL TRANSFORMATION AND STRATEGY_final.pptx
DIGITAL TRANSFORMATION AND STRATEGY_final.pptxDIGITAL TRANSFORMATION AND STRATEGY_final.pptx
DIGITAL TRANSFORMATION AND STRATEGY_final.pptx
GeorgeDiamandis11
 
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
Renato Gonzalez
 

Similar to Software metrics by Dr. B. J. Mohite (20)

Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Project Matrix and Measuring S/W
Project Matrix and Measuring S/WProject Matrix and Measuring S/W
Project Matrix and Measuring S/W
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
 
Testing Metrics and why Managers like them
Testing Metrics and why Managers like themTesting Metrics and why Managers like them
Testing Metrics and why Managers like them
 
Day 1 1620 - 1705 - maple - pranabendu bhattacharyya
Day 1   1620 - 1705 - maple - pranabendu bhattacharyyaDay 1   1620 - 1705 - maple - pranabendu bhattacharyya
Day 1 1620 - 1705 - maple - pranabendu bhattacharyya
 
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02
Day1 1620-1705-maple-pranabendubhattacharyya-131008043643-phpapp02
 
Doing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating AnalyticsDoing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating Analytics
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
Unit2 - Metrics.pptx
Unit2 - Metrics.pptxUnit2 - Metrics.pptx
Unit2 - Metrics.pptx
 
software requirement
software requirement software requirement
software requirement
 
Software Quality Dashboard Benchmarking Study
Software Quality Dashboard Benchmarking StudySoftware Quality Dashboard Benchmarking Study
Software Quality Dashboard Benchmarking Study
 
Trends in-om-scm-27-july-2012-2
Trends in-om-scm-27-july-2012-2Trends in-om-scm-27-july-2012-2
Trends in-om-scm-27-july-2012-2
 
Software Matrix it's a topic in software quality.pptx
Software Matrix it's a topic in software quality.pptxSoftware Matrix it's a topic in software quality.pptx
Software Matrix it's a topic in software quality.pptx
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Testing Metrics and Tools, Analyse de tests
Testing Metrics and Tools, Analyse de testsTesting Metrics and Tools, Analyse de tests
Testing Metrics and Tools, Analyse de tests
 
RFP Presentation Example
RFP Presentation ExampleRFP Presentation Example
RFP Presentation Example
 
DIGITAL TRANSFORMATION AND STRATEGY_final.pptx
DIGITAL TRANSFORMATION AND STRATEGY_final.pptxDIGITAL TRANSFORMATION AND STRATEGY_final.pptx
DIGITAL TRANSFORMATION AND STRATEGY_final.pptx
 
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
 

More from Zeal Education Society, Pune

Knowledge Management System By Dr. B. J. Mohite
Knowledge Management System By Dr. B. J. MohiteKnowledge Management System By Dr. B. J. Mohite
Knowledge Management System By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Ms-Project by Dr. B. J. Mohite
Ms-Project by Dr. B. J. MohiteMs-Project by Dr. B. J. Mohite
Ms-Project by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Software Project Management by Dr. B. J. Mohite
Software Project Management by Dr. B. J. MohiteSoftware Project Management by Dr. B. J. Mohite
Software Project Management by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Fundamentals of Organizational Behavior by Dr. B. J. Mohite
Fundamentals of Organizational Behavior by Dr. B. J. MohiteFundamentals of Organizational Behavior by Dr. B. J. Mohite
Fundamentals of Organizational Behavior by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Principles and Practices of Management By Dr. B. J. Mohite
Principles and Practices of Management By Dr. B. J. MohitePrinciples and Practices of Management By Dr. B. J. Mohite
Principles and Practices of Management By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Queuing Theory by Dr. B. J. Mohite
Queuing Theory by Dr. B. J. MohiteQueuing Theory by Dr. B. J. Mohite
Queuing Theory by Dr. B. J. Mohite
Zeal Education Society, Pune
 
Replacement Theory. by Dr. Babasaheb. J. Mohite
Replacement Theory. by  Dr. Babasaheb. J. MohiteReplacement Theory. by  Dr. Babasaheb. J. Mohite
Replacement Theory. by Dr. Babasaheb. J. Mohite
Zeal Education Society, Pune
 

More from Zeal Education Society, Pune (7)

Knowledge Management System By Dr. B. J. Mohite
Knowledge Management System By Dr. B. J. MohiteKnowledge Management System By Dr. B. J. Mohite
Knowledge Management System By Dr. B. J. Mohite
 
Ms-Project by Dr. B. J. Mohite
Ms-Project by Dr. B. J. MohiteMs-Project by Dr. B. J. Mohite
Ms-Project by Dr. B. J. Mohite
 
Software Project Management by Dr. B. J. Mohite
Software Project Management by Dr. B. J. MohiteSoftware Project Management by Dr. B. J. Mohite
Software Project Management by Dr. B. J. Mohite
 
Fundamentals of Organizational Behavior by Dr. B. J. Mohite
Fundamentals of Organizational Behavior by Dr. B. J. MohiteFundamentals of Organizational Behavior by Dr. B. J. Mohite
Fundamentals of Organizational Behavior by Dr. B. J. Mohite
 
Principles and Practices of Management By Dr. B. J. Mohite
Principles and Practices of Management By Dr. B. J. MohitePrinciples and Practices of Management By Dr. B. J. Mohite
Principles and Practices of Management By Dr. B. J. Mohite
 
Queuing Theory by Dr. B. J. Mohite
Queuing Theory by Dr. B. J. MohiteQueuing Theory by Dr. B. J. Mohite
Queuing Theory by Dr. B. J. Mohite
 
Replacement Theory. by Dr. Babasaheb. J. Mohite
Replacement Theory. by  Dr. Babasaheb. J. MohiteReplacement Theory. by  Dr. Babasaheb. J. Mohite
Replacement Theory. by Dr. Babasaheb. J. Mohite
 

Recently uploaded

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
CarlosHernanMontoyab2
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
timhan337
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
BhavyaRajput3
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
Peter Windle
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 

Recently uploaded (20)

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 

Software metrics by Dr. B. J. Mohite

  • 1. 1 Software Metrics • It refers to a broad range of quantitative measurements for computer software that enable to – improve the software process continuously – assist in quality control and productivity – assess the quality of technical products – assist in tactical decision-making By. Dr. B. J. Mohite 9850098225
  • 2. 2 Measure, Metrics, Indicators • Measure. – provides a quantitative indication of the extent, amount, dimension, capacity, or size of some attributes of a product or process. • Metrics. – relates the individual measures in some way. • Indicator. – a combination of metrics that provide insight into the software process or project or product itself.
  • 3. 3 What Should Be Measured? measurement What do we use as a basis? • size? • function? project metrics process metrics process product product metrics
  • 4. 4 Metrics of Process Improvement • Focus on Manageable Repeatable Process • Use of Statistical SQA on Process • Defect Removal Efficiency
  • 5. 5 Statistical Software Process Improvement All errors and defects are categorized by origin The cost to correct each error and defect is recorded No. of errors and defects in each category is counted and ranked in descending order The overall cost in each category is computed Resultant data are analyzed and the “culprit” category is uncovered Plans are developed to eliminate the errors
  • 6. 6 Causes and Origin of Defects Logic 20% Sofware Interface 6% Hardware Interface 8% User Interface 12% Data Handling 11% Error Checking 11% Standards 7% Specification 25%
  • 7. 7 Metrics of Project Management • Budget • Schedule/ReResource Management • Risk Management • Project goals met or exceeded • Customer satisfaction
  • 8. 8 Metrics of the Software Product • Focus on Deliverable Quality • Analysis Products • Design Product Complexity – algorithmic, architectural, data flow • Code Products • Production System
  • 9. 9 How Is Quality Measured? • Analysis Metrics – Function-based Metrics: Function Points( Albrecht), Feature Points (C. Jones) – Bang Metric (DeMarco): Functional Primitives, Data Elements, Objects, Relationships, States, Transitions, External Manual Primitives, Input Data Elements, Output Data Elements, Persistent Data Elements, Data Tokens, Relationship Connections.
  • 10. 10 Source Lines of Code (SLOC) • Measures the number of physical lines of active code • In general the higher the SLOC in a module the less understandable and maintainable the module is
  • 11. 11 Function Oriented Metric - Function Points • Function Points are a measure of “how big” is the program, independently from the actual physical size of it • It is a weighted count of several features of the program • Dislikers claim FP make no sense wrt the representational theory of measurement • There are firms and institutions taking them very seriously
  • 12. 12 complexity multiplier function points number of user inputs number of user outputs number of user inquiries number of files number of ext.interfaces measurement parameter 3 4 3 7 5 count weighting factor simple avg. complex 4 5 4 10 7 6 7 6 15 10 = = = = = count-total X X X X X Analyzing the Information Domain Assuming all inputs with the same weight, all output with the same weight, … Complete Formula for the Unadjusted Function Points:    lesInternalFi terfacesExternalInInquiryOutputInputs WeiWifWinWoWi Unadjusted Function Points:
  • 13. 13 Taking Complexity into Account Factors are rated on a scale of 0 (not important) to 5 (very important): data communications distributed functions heavily used configuration transaction rate on-line data entry end user efficiency on-line update complex processing installation ease operational ease multiple sites facilitate change  MultiplierComplexity MultiplierComplexityFCM Formula:
  • 14. 14 Typical Function-Oriented Metrics • errors per FP (thousand lines of code) • defects per FP • $ per FP • pages of documentation per FP • FP per person-month
  • 15. 15 LOC vs. FP • Relationship between lines of code and function points depends upon the programming language that is used to implement the software and the quality of the design • Empirical studies show an approximate relationship between LOC and FP
  • 16. 16 LOC/FP (average) Assembly language 320 C 128 COBOL, FORTRAN 106 C++ 64 Visual Basic 32 Smalltalk 22 SQL 12 Graphical languages (icons) 4
  • 17. 17 How Is Quality Measured? • Design Metrics – Structural Complexity: fan-in, fan-out, morphology – System Complexity: – Data Complexity: – Component Metrics: Size, Modularity, Localization, Encapsulation, Information Hiding, Inheritance, Abstraction, Complexity, Coupling, Cohesion, Polymorphism • Implementation Metrics Size, Complexity, Efficiency, etc.
  • 18. 18 Comment Percentage (CP) • Number of commented lines of code divided by the number of non-blank lines of code • Usually 20% indicates adequate commenting for C or Fortran code • The higher the CP value the more maintainable the module is
  • 19. 19 Size Oriented Metric - Fan In and Fan Out • The Fan In of a module is the amount of information that “enters” the module • The Fan Out of a module is the amount of information that “exits” a module • We assume all the pieces of information with the same size • Fan In and Fan Out can be computed for functions, modules, objects, and also non-code components • Goal - Low Fan Out for ease of maintenance.
  • 20. 20 Testing Metrics • Metrics that predict the likely number of tests required during various testing phases • Metrics that focus on test coverage for a given component
  • 21. 21 Views on SE Measurement
  • 22. 22 Views on SE Measurement
  • 23. 23 Views on SE Measurement
  • 24. 24 12 Steps to Useful Software Metrics Step 1 - Identify Metrics Customers Step 2 - Target Goals Step 3 - Ask Questions Step 4 - Select Metrics Step 5 - Standardize Definitions Step 6 - Choose a Model Step 7 - Establish Counting Criteria Step 8 - Decide On Decision Criteria Step 9 - Define Reporting Mechanisms Step 10 - Determine Additional Qualifiers Step 11 - Collect Data Step 12 - Consider Human Factors
  • 25. 25 Step 1 - Identify Metrics Customers Who needs the information? Who’s going to use the metrics? If the metric does not have a customer -- do not use it.
  • 26. 26 Step 2 - Target Goals Organizational goals – Be the low cost provider – Meet projected revenue targets Project goals – Deliver the product by June 1st – Finish the project within budget Task goals (entry & exit criteria) – Effectively inspect software module ABC – Obtain 100% statement coverage during testing
  • 27. 27 Step 3 - Ask Questions Goal: Maintain a high level of customer satisfaction • What is our current level of customer satisfaction? • What attributes of our products and services are most important to our customers? • How do we compare with our competition?
  • 28. 28 Step 4 - Select Metrics Select metrics that provide information to help answer the questions • Be practical, realistic, pragmatic • Consider current engineering environment • Start with the possible Metrics don’t solve problems -- people solve problems Metrics provide information so people can make better decisions
  • 29. 29 Selecting Metrics Goal: Ensure all known defects are corrected before shipment • • • • • • •
  • 30. 30 Metrics Objective Statement Template To understand evaluate control predict the attribute of the entity in order to goal(s) evaluate % defects found & corrected during testing To the in order to ensure all known defects are corrected before shipment Example - Metric: % defects corrected
  • 31. 31 Step 5 - Standardize Definitions Developer User
  • 32. 32 Step 6 - Choose a Measurement Models for code inspection metrics • Primitive Measurements: – Lines of Code Inspected = loc – Hours Spent Preparing = prep_hrs – Hours Spent Inspecting = in_hrs – Discovered Defects = defects • Other Measurements: – Preparation Rate = loc / prep_hrs – Inspection Rate = loc / in_hrs – Defect Detection Rate = defects / (prep_hrs + in_hrs)
  • 33. 33 Step 7 - Establish Counting Criteria Lines of Code • Variations in counting • No industry accepted standard • SEI guideline - check sheets for criteria • Advice: use a tool
  • 34. 34 Counting Criteria - Effort What is a Software Project? • When does it start / stop? • What activities does it include? • Who works on it?
  • 35. 35 Step 8 - Decide On Decision Criteria Establish Baselines • Current value – Problem report backlog – Defect prone modules • Statistical analysis (mean & distribution) – Defect density – Fix response time – Cycle time – Variance from budget (e.g., cost, schedule)
  • 36. 36 Step 9 - Define Reporting Mechanisms Open Fixed Resolved Jan-97 23 13 3 Feb-97 27 24 11 Mar-97 18 26 15 Apr-97 12 18 27 0 40 80 120 0 20 40 60 80 100 120 0 20 40 60 80 100 1st Qtr 2nd Qtr 3rd Qtr 4th Qtr 1 2 3 4 5 6 7 8 9 10 11 12 0 20 40 60 80 100 Jan Mar May July 0 40 80 120 160 1st Qtr 2nd Qtr 3rd Qtr 4th Qtr
  • 37. 37 Step 10 - Determine Additional Qualifiers A good metric is a generic metric Additional qualifiers: • Provide demographic information • Allow detailed analysis at multiple levels • Define additional data requirements
  • 38. 38 Step 11 – Collect Data What data to collect? • Metric primitives • Additional qualifiers Who should collect the data? • The data owner – Direct access to source of data – Responsible for generating data – Owners more likely to detect anomalies – Eliminates double data entry
  • 39. 39 Examples of Data Ownership Owner Examples of Data Owned • Management • Schedule • Budget • Engineers • Time spent per task • Inspection data including defects found • Root cause of defects • Testers • Test Cases planned / executed / passed • Problems • Test coverage • Configuration management • Lines of code specialists • Modules changed • Users • Problems • Operation hours
  • 40. 40 Step 12 – Consider Human Factors The People Side of the Metrics Equation • How measures affect people • How people affect measures “Don’t underestimate the intelligence of your engineers. For any one metric you can come up with, they will find at least two ways to beat it.” [unknown]
  • 41. 41 Don’t Measure individuals Use metrics as a “stick” Ignore the data Use only one metric Cost Quality Schedule
  • 42. 42 Do Select metrics based on goals Goal 1 Goal 2 Question 1 Question 2 Question 3 Question 4 Metrics 1 Metric 2 Metric 3 Metric 4 Metric 5 [Basili-88] Focus on processes, products & services Processes, Products & Services Provide feedback Feedback Data Data Providers Metrics Obtain “buy-in”