SlideShare a Scribd company logo
1 of 17
Download to read offline
The Non-intuitive Impact of Software Defects
  on Development Efforts Time Estimates




                Copyrights (c) 2011-2013 Pragmatic
                                                     1
                       Cohesion Consulting
Motivation
• Many software development projects rely on software
  implementation time estimates provided by the
  development team to forecast the total duration of a
  software implementation effort.
• This presentation takes a rational look at the non-intuitive
  impact of software defects on development time estimates.
• We have derived a simple equation that can be used to
  more accurately estimate the time needed to implement a
  set of R software requirements .
• The equation results can also be used to adjust the
  development team work schedule, the number of
  developers, or the project number of software
  requirements to implement.

                      Copyrights (c) 2011-2013 Pragmatic
                                                             2
                             Cohesion Consulting
Equation Variables
• R = number of requirements that need to be
  implemented in the software
• I = mean implementation rate of software
  requirements. I unit is in Requirements per time
  unit (for example 23 requirements per week)
• D = mean implemented requirements defect
  ratio. For example if D=20% then for every 10
  implemented requirements, 2 of them are not
  properly implemented.
                  Copyrights (c) 2011-2013 Pragmatic
                                                       3
                         Cohesion Consulting
Defect Ratio
• Many factors influence the value of the Defect
  ratio such as
  – Misunderstanding of requirements from the
    designer and/or developer resulting in software
    behavior that does not fully fulfill the
    requirements
  – Errors in software code
• The reader can refer to the Wikipedia article
  on software bug for more details.
                  Copyrights (c) 2011-2013 Pragmatic
                                                       4
                         Cohesion Consulting
Defect Ratio
• The Defect ratio we are talking about is an
  average value.
• This average (or mean) value can be
  determined through historical metrics
  gathered by the software development
  organization or team over an appropriate
  timespan and over a set of past development
  efforts.


                Copyrights (c) 2011-2013 Pragmatic
                                                     5
                       Cohesion Consulting
Defect Ratio
• The Defect ratio can also be determined as the
  probability that an implemented requirement
  generates a defect at any point in time during
  an entire software development project.
• The reader can refer to our SlideShare
  presentation “The dynamic interaction of
  passed and failed requirements during
  software testing” for further details on how to
  calculate such probabilities.


                 Copyrights (c) 2011-2013 Pragmatic
                                                      6
                        Cohesion Consulting
The Equation
• T = time needed to implement a set of R
  software requirements. It is given by this
  equation [E]:

               𝑅
        𝑇=
           𝐼(1 − 𝐷)
                  Copyrights (c) 2011-2013 Pragmatic
                                                       7
                         Cohesion Consulting
Equation Interpretation
• When the defect ratio is D = 0 then the time
  needed to implement R software requirements is:
                𝑅
         𝑇=
                𝐼
• “I (1-D)” represents an adjusted Implementation
  rate that decreases in direct proportion to the
  defect ratio. It captures the effect of rework
  efforts that slow down production throughput.
• As the defect ratio varies from 0 to 1 , the time
  needed to implement the set of R software
  requirements increases in a non-linear way.
                    Copyrights (c) 2011-2013 Pragmatic
                                                         8
                           Cohesion Consulting
Equation Illustration
• Assume that R=100 requirements need to be
  implemented at a rate I=10 requirements per
  week
• The chart of T (time needed to implement the
  100 requirements) as a function of D
  (implemented requirements defect ratio) is
  presented on the next slide


                Copyrights (c) 2011-2013 Pragmatic
                                                     9
                       Cohesion Consulting
Equation Chart




  Copyrights (c) 2011-2013 Pragmatic
                                       10
         Cohesion Consulting
Equation Illustration
• In this example, when D=0 it takes 10 weeks
  to implement the 100 requirements. This is
  the common way of estimating
  implementation time where defects rework is
  not taken into account.
• Equation [E] explicitly incorporates the impact
  of defects on the total time needed for
  implementing the set of R requirements.

                  Copyrights (c) 2011-2013 Pragmatic
                                                       11
                         Cohesion Consulting
Non-intuitive Impact of Defects
• With a 20% Defect ratio, the implementation
  time of the 100 requirements goes from 10
  weeks to 12.5 weeks which is a 25% increase.
• A 30% Defect ratio results in 42% increase in
  implementation time: T goes from 10 weeks
  to 14.2 weeks!
• A 50% defect ratio results in 100% increase in
  implementation time: T goes from 10 weeks
  to 20 weeks!

                 Copyrights (c) 2011-2013 Pragmatic
                                                      12
                        Cohesion Consulting
Impact of High Defect Ratios
• As the Defect ratio approaches 100%, the
  Implementation time grows at a faster rate
  towards infinity.
• This behavior can be intuitively understood if one
  considers that with 100% defect nothing gets
  properly implemented and every requirement
  needs to be re-implemented over and over again
  leading to an infinite implementation time.
• What is not so easily understood is the non-linear
  increasing rate of growth in Implementation time
  as the Defect ratio increases.
                  Copyrights (c) 2011-2013 Pragmatic
                                                       13
                         Cohesion Consulting
Impact on Software Requirements
        Implementation Rate
• Lets examine again the case where the Defect
  ratio is D=0%. It would take 10 weeks to
  implement the 100 requirements at a rate of 10
  requirements/week.
• If the defect ratio is actually 30%, it now takes
  14.2 weeks to implement the 100 requirements.
  To implement the 100 requirements in the initial
  10 weeks, the Implementation rate must
  increase. Using [E]:
   T = 10 = 100/(I x (1-0.3)
   I = 100/(10 x 0.7) = 14.2 requirements/week

                   Copyrights (c) 2011-2013 Pragmatic
                                                        14
                          Cohesion Consulting
Impact on Software Requirements
       Implementation Rate
• An implementation rate of I = 14.2
  requirements/week can be obtained in several
  ways:
  – If the development team remains the same size,
    then we must increase its weekly hours by 42%
  – If weekly hours cannot be increased then we must
    increase the size of the development team by
    42%, so if we had initially 5 developers we now
    need 2 more developers to have 7 developers!

                  Copyrights (c) 2011-2013 Pragmatic
                                                       15
                         Cohesion Consulting
Impact on Software Requirements Size
• With the Defect ratio D=30%, if we had to
  keep the same development team size, the
  same implementation rate, and the same
  implementation time, then we must reduce
  the number of requirements from 100 to:
   T = 10 = R /(10 x (1-0.3)
   R = 10 x 10 x 0.7 = 70 Requirements!



                  Copyrights (c) 2011-2013 Pragmatic
                                                       16
                         Cohesion Consulting
For Comments and Questions contact didier@pragmaticohesion.com


                      Copyrights (c) 2011-2013 Pragmatic
                                                                 17
                             Cohesion Consulting

More Related Content

What's hot

Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 
Manual testing good notes
Manual testing good notesManual testing good notes
Manual testing good notes
dkns0906
 
Inrotduction of Testing
Inrotduction of TestingInrotduction of Testing
Inrotduction of Testing
Palash Ghosh
 
software testing for beginners
software testing for beginnerssoftware testing for beginners
software testing for beginners
Bharathi Ashok
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
karanmca
 

What's hot (20)

Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering Overview
 
Software testing-in-gurgaon
Software testing-in-gurgaonSoftware testing-in-gurgaon
Software testing-in-gurgaon
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answers
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Istqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparationIstqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparation
 
Beginners QA Testing
Beginners QA TestingBeginners QA Testing
Beginners QA Testing
 
Manual testing good notes
Manual testing good notesManual testing good notes
Manual testing good notes
 
Inrotduction of Testing
Inrotduction of TestingInrotduction of Testing
Inrotduction of Testing
 
Coding and testing in Software Engineering
Coding and testing in Software EngineeringCoding and testing in Software Engineering
Coding and testing in Software Engineering
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Notes on agile
Notes on agileNotes on agile
Notes on agile
 
software testing for beginners
software testing for beginnerssoftware testing for beginners
software testing for beginners
 
Software testing
Software testingSoftware testing
Software testing
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
 
Software testing course - Manual
Software testing course - ManualSoftware testing course - Manual
Software testing course - Manual
 
Manual Testing Material by Durgasoft
Manual Testing Material by DurgasoftManual Testing Material by Durgasoft
Manual Testing Material by Durgasoft
 
QA Interview Questions With Answers
QA Interview Questions With AnswersQA Interview Questions With Answers
QA Interview Questions With Answers
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For Agile
 
Slides chapter 5
Slides chapter 5Slides chapter 5
Slides chapter 5
 

Similar to The non intuitive impact of software defects on development efforts time estimates

Pm610 1103 b-02-schwappach-loren-p2-ip2
Pm610 1103 b-02-schwappach-loren-p2-ip2Pm610 1103 b-02-schwappach-loren-p2-ip2
Pm610 1103 b-02-schwappach-loren-p2-ip2
Loren Schwappach
 

Similar to The non intuitive impact of software defects on development efforts time estimates (20)

Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
 
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
Site Reliability Engineering: An Enterprise Adoption Story (an ITSM Academy W...
 
DevOps Torino Meetup - SRE Concepts
DevOps Torino Meetup - SRE ConceptsDevOps Torino Meetup - SRE Concepts
DevOps Torino Meetup - SRE Concepts
 
Exp 02-COCOMO (1).pptx
Exp 02-COCOMO (1).pptxExp 02-COCOMO (1).pptx
Exp 02-COCOMO (1).pptx
 
DevOps Transformation Solution Recommendation.pptx
DevOps Transformation Solution Recommendation.pptxDevOps Transformation Solution Recommendation.pptx
DevOps Transformation Solution Recommendation.pptx
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
 
Driving DevOps
Driving DevOpsDriving DevOps
Driving DevOps
 
Software Project Planning II
Software Project Planning IISoftware Project Planning II
Software Project Planning II
 
Releasing Software Without Testing Team
Releasing Software Without Testing TeamReleasing Software Without Testing Team
Releasing Software Without Testing Team
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 
SE Unit 1
SE Unit 1SE Unit 1
SE Unit 1
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
 
Project Scheduling
Project SchedulingProject Scheduling
Project Scheduling
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based Systems
 
Pm610 1103 b-02-schwappach-loren-p2-ip2
Pm610 1103 b-02-schwappach-loren-p2-ip2Pm610 1103 b-02-schwappach-loren-p2-ip2
Pm610 1103 b-02-schwappach-loren-p2-ip2
 
Predicting the impact of stakeholders decisions
Predicting the impact of stakeholders decisionsPredicting the impact of stakeholders decisions
Predicting the impact of stakeholders decisions
 
Effort estimation( software Engineering)
Effort estimation( software Engineering)Effort estimation( software Engineering)
Effort estimation( software Engineering)
 
Hill - Are we really bad? A look at software estimation accuracy
Hill - Are we really bad? A look at software estimation accuracyHill - Are we really bad? A look at software estimation accuracy
Hill - Are we really bad? A look at software estimation accuracy
 
Software project plannings
Software project planningsSoftware project plannings
Software project plannings
 

More from Pragmatic Cohesion Consulting, LLC

More from Pragmatic Cohesion Consulting, LLC (20)

Applying the integrative propositional analysis (ipa) to the ebmm – triads
Applying the integrative propositional analysis (ipa) to the ebmm – triadsApplying the integrative propositional analysis (ipa) to the ebmm – triads
Applying the integrative propositional analysis (ipa) to the ebmm – triads
 
Viewers locations usa - 30000
Viewers locations usa - 30000Viewers locations usa - 30000
Viewers locations usa - 30000
 
Viewers locations outside USA - 30000
Viewers locations outside USA - 30000Viewers locations outside USA - 30000
Viewers locations outside USA - 30000
 
Comparing four major organizational cultures and the challenges faced when tr...
Comparing four major organizational cultures and the challenges faced when tr...Comparing four major organizational cultures and the challenges faced when tr...
Comparing four major organizational cultures and the challenges faced when tr...
 
Obstacles to effective knowledge elicitation
Obstacles to effective knowledge elicitationObstacles to effective knowledge elicitation
Obstacles to effective knowledge elicitation
 
Viewers locations in the USA
Viewers locations in the USAViewers locations in the USA
Viewers locations in the USA
 
Viewers locations outside the USA
Viewers locations outside the USAViewers locations outside the USA
Viewers locations outside the USA
 
Framework for assessing business analysts situational awareness
Framework for assessing business analysts situational awarenessFramework for assessing business analysts situational awareness
Framework for assessing business analysts situational awareness
 
The dynamics of cohesive and inconsistent project requirements and how they i...
The dynamics of cohesive and inconsistent project requirements and how they i...The dynamics of cohesive and inconsistent project requirements and how they i...
The dynamics of cohesive and inconsistent project requirements and how they i...
 
Creating queuing system simulations with enterprise architect sysml parametri...
Creating queuing system simulations with enterprise architect sysml parametri...Creating queuing system simulations with enterprise architect sysml parametri...
Creating queuing system simulations with enterprise architect sysml parametri...
 
The dynamic interaction of passed and failed requirements during software tes...
The dynamic interaction of passed and failed requirements during software tes...The dynamic interaction of passed and failed requirements during software tes...
The dynamic interaction of passed and failed requirements during software tes...
 
Balancing software project drivers a rational quantitative approach
Balancing software project drivers   a rational quantitative approachBalancing software project drivers   a rational quantitative approach
Balancing software project drivers a rational quantitative approach
 
M theory for business analysts - 11 dimensions of empowerment
M theory for business analysts - 11 dimensions of empowermentM theory for business analysts - 11 dimensions of empowerment
M theory for business analysts - 11 dimensions of empowerment
 
Effective Listening - a cornerstone of effective business analysis
Effective Listening - a cornerstone of effective business analysisEffective Listening - a cornerstone of effective business analysis
Effective Listening - a cornerstone of effective business analysis
 
About the benefits and pitfalls of relying on analytical methods
About the benefits and pitfalls of relying on analytical methodsAbout the benefits and pitfalls of relying on analytical methods
About the benefits and pitfalls of relying on analytical methods
 
Deductive, inductive, and abductive reasoning and their application in trans...
Deductive, inductive, and abductive reasoning and their application in  trans...Deductive, inductive, and abductive reasoning and their application in  trans...
Deductive, inductive, and abductive reasoning and their application in trans...
 
34,000 delicious Food and Beverage combinations for your holidays!
34,000 delicious Food and Beverage combinations for your holidays!34,000 delicious Food and Beverage combinations for your holidays!
34,000 delicious Food and Beverage combinations for your holidays!
 
Business analysis compass mapping to the iiba babok v2
Business analysis compass mapping to the iiba babok v2Business analysis compass mapping to the iiba babok v2
Business analysis compass mapping to the iiba babok v2
 
Business analysis and business framework driven projects - Example of the Mic...
Business analysis and business framework driven projects - Example of the Mic...Business analysis and business framework driven projects - Example of the Mic...
Business analysis and business framework driven projects - Example of the Mic...
 
Business requirements what versus how
Business requirements what versus howBusiness requirements what versus how
Business requirements what versus how
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
FIDO Alliance
 

Recently uploaded (20)

Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 

The non intuitive impact of software defects on development efforts time estimates

  • 1. The Non-intuitive Impact of Software Defects on Development Efforts Time Estimates Copyrights (c) 2011-2013 Pragmatic 1 Cohesion Consulting
  • 2. Motivation • Many software development projects rely on software implementation time estimates provided by the development team to forecast the total duration of a software implementation effort. • This presentation takes a rational look at the non-intuitive impact of software defects on development time estimates. • We have derived a simple equation that can be used to more accurately estimate the time needed to implement a set of R software requirements . • The equation results can also be used to adjust the development team work schedule, the number of developers, or the project number of software requirements to implement. Copyrights (c) 2011-2013 Pragmatic 2 Cohesion Consulting
  • 3. Equation Variables • R = number of requirements that need to be implemented in the software • I = mean implementation rate of software requirements. I unit is in Requirements per time unit (for example 23 requirements per week) • D = mean implemented requirements defect ratio. For example if D=20% then for every 10 implemented requirements, 2 of them are not properly implemented. Copyrights (c) 2011-2013 Pragmatic 3 Cohesion Consulting
  • 4. Defect Ratio • Many factors influence the value of the Defect ratio such as – Misunderstanding of requirements from the designer and/or developer resulting in software behavior that does not fully fulfill the requirements – Errors in software code • The reader can refer to the Wikipedia article on software bug for more details. Copyrights (c) 2011-2013 Pragmatic 4 Cohesion Consulting
  • 5. Defect Ratio • The Defect ratio we are talking about is an average value. • This average (or mean) value can be determined through historical metrics gathered by the software development organization or team over an appropriate timespan and over a set of past development efforts. Copyrights (c) 2011-2013 Pragmatic 5 Cohesion Consulting
  • 6. Defect Ratio • The Defect ratio can also be determined as the probability that an implemented requirement generates a defect at any point in time during an entire software development project. • The reader can refer to our SlideShare presentation “The dynamic interaction of passed and failed requirements during software testing” for further details on how to calculate such probabilities. Copyrights (c) 2011-2013 Pragmatic 6 Cohesion Consulting
  • 7. The Equation • T = time needed to implement a set of R software requirements. It is given by this equation [E]: 𝑅 𝑇= 𝐼(1 − 𝐷) Copyrights (c) 2011-2013 Pragmatic 7 Cohesion Consulting
  • 8. Equation Interpretation • When the defect ratio is D = 0 then the time needed to implement R software requirements is: 𝑅 𝑇= 𝐼 • “I (1-D)” represents an adjusted Implementation rate that decreases in direct proportion to the defect ratio. It captures the effect of rework efforts that slow down production throughput. • As the defect ratio varies from 0 to 1 , the time needed to implement the set of R software requirements increases in a non-linear way. Copyrights (c) 2011-2013 Pragmatic 8 Cohesion Consulting
  • 9. Equation Illustration • Assume that R=100 requirements need to be implemented at a rate I=10 requirements per week • The chart of T (time needed to implement the 100 requirements) as a function of D (implemented requirements defect ratio) is presented on the next slide Copyrights (c) 2011-2013 Pragmatic 9 Cohesion Consulting
  • 10. Equation Chart Copyrights (c) 2011-2013 Pragmatic 10 Cohesion Consulting
  • 11. Equation Illustration • In this example, when D=0 it takes 10 weeks to implement the 100 requirements. This is the common way of estimating implementation time where defects rework is not taken into account. • Equation [E] explicitly incorporates the impact of defects on the total time needed for implementing the set of R requirements. Copyrights (c) 2011-2013 Pragmatic 11 Cohesion Consulting
  • 12. Non-intuitive Impact of Defects • With a 20% Defect ratio, the implementation time of the 100 requirements goes from 10 weeks to 12.5 weeks which is a 25% increase. • A 30% Defect ratio results in 42% increase in implementation time: T goes from 10 weeks to 14.2 weeks! • A 50% defect ratio results in 100% increase in implementation time: T goes from 10 weeks to 20 weeks! Copyrights (c) 2011-2013 Pragmatic 12 Cohesion Consulting
  • 13. Impact of High Defect Ratios • As the Defect ratio approaches 100%, the Implementation time grows at a faster rate towards infinity. • This behavior can be intuitively understood if one considers that with 100% defect nothing gets properly implemented and every requirement needs to be re-implemented over and over again leading to an infinite implementation time. • What is not so easily understood is the non-linear increasing rate of growth in Implementation time as the Defect ratio increases. Copyrights (c) 2011-2013 Pragmatic 13 Cohesion Consulting
  • 14. Impact on Software Requirements Implementation Rate • Lets examine again the case where the Defect ratio is D=0%. It would take 10 weeks to implement the 100 requirements at a rate of 10 requirements/week. • If the defect ratio is actually 30%, it now takes 14.2 weeks to implement the 100 requirements. To implement the 100 requirements in the initial 10 weeks, the Implementation rate must increase. Using [E]:  T = 10 = 100/(I x (1-0.3)  I = 100/(10 x 0.7) = 14.2 requirements/week Copyrights (c) 2011-2013 Pragmatic 14 Cohesion Consulting
  • 15. Impact on Software Requirements Implementation Rate • An implementation rate of I = 14.2 requirements/week can be obtained in several ways: – If the development team remains the same size, then we must increase its weekly hours by 42% – If weekly hours cannot be increased then we must increase the size of the development team by 42%, so if we had initially 5 developers we now need 2 more developers to have 7 developers! Copyrights (c) 2011-2013 Pragmatic 15 Cohesion Consulting
  • 16. Impact on Software Requirements Size • With the Defect ratio D=30%, if we had to keep the same development team size, the same implementation rate, and the same implementation time, then we must reduce the number of requirements from 100 to:  T = 10 = R /(10 x (1-0.3)  R = 10 x 10 x 0.7 = 70 Requirements! Copyrights (c) 2011-2013 Pragmatic 16 Cohesion Consulting
  • 17. For Comments and Questions contact didier@pragmaticohesion.com Copyrights (c) 2011-2013 Pragmatic 17 Cohesion Consulting