SlideShare une entreprise Scribd logo
1  sur  42
C afé

                                            Identifying,
                                            Measuring,
                                             Reducing
                                            & Avoiding
                                  Technical Debt

                                            Rob Myers
                                                for
                                             ADP East
                                            10 Nov 2011

09 November 2011   © Agile Institute 2011                  1
time (schedule)




    effort (cost)                                         size (scope)

               Five Core Metrics: The Intelligence Behind Successful Software Management,
                    Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003

09 November 2011                     © Agile Institute 2011                                 2
time (schedule)




    effort (cost)                                         size (scope)

               Five Core Metrics: The Intelligence Behind Successful Software Management,
                    Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003

09 November 2011                     © Agile Institute 2011                                 2
time (schedule)




    effort (cost)                                         size (scope)

               Five Core Metrics: The Intelligence Behind Successful Software Management,
                    Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003

09 November 2011                     © Agile Institute 2011                                 2
time (schedule)




                       productivity



    effort (cost)                                         size (scope)

               Five Core Metrics: The Intelligence Behind Successful Software Management,
                    Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003

09 November 2011                     © Agile Institute 2011                                 2
reliability
                         time (schedule)                                         (quality)




                       productivity



    effort (cost)                                         size (scope)

               Five Core Metrics: The Intelligence Behind Successful Software Management,
                    Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003

09 November 2011                     © Agile Institute 2011                                 2
09 November 2011   © Rob Myers 2011   3
“...having high amounts of Technical Debt is
probably the number one impediment to Teams
being agile.”

                          Dr. Dan Rawsthorne,
             Exploring Scrum:The Fundamentals
• Design Debt
• Design Debt
• Quality Debt
• Design Debt
• Quality Debt
• Testing Debt
•   Design Debt
•   Quality Debt
•   Testing Debt
•   ...ad nauseam
• Design Debt
• Design Debt
  • Cyclomatic complexity
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
  • Mean Time Between Failures
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
  • Mean Time Between Failures
  • Severe-defect count
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
  • Mean Time Between Failures
  • Severe-defect count
• Testing Debt
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
  • Mean Time Between Failures
  • Severe-defect count
• Testing Debt
  • % Covered
• Design Debt
  • Cyclomatic complexity
  • Cycle time
• Quality Debt
  • Mean Time Between Failures
  • Severe-defect count
• Testing Debt
  • % Covered
  • Time to regression test
09 November 2011   © Rob Myers 2011   7
(c) SoftwareHumor.com
       http://theleek.net/software-humor-blog/posters/technical-debt-the-poster/
09 November 2011                   © Rob Myers 2011                                8
Minimal Iteration Debt
      Payment
Test Drive!
09 November 2011   © Rob Myers 2011            10
“The results of the case studies indicate
    that the pre-release defect density of the
    four products decreased between 40%
    and 90% relative to similar projects that
    did not use the TDD practice.
    Subjectively, the teams experienced a
    15–35% increase in initial development
    time after adopting TDD.”
http://research.microsoft.com/en-us/projects/esm/nagappan_tdd.pdf, Nagappan et al,
                   © Springer Science + Business Media, LLC 2008
   09 November 2011               © Rob Myers 2011                          11
Developer’s “Oath of Athens”



 I vow to leave the code as
good as I found it, or better!
• Design Debt
• Design Debt
  • Merciless Refactoring
• Design Debt
  • Merciless Refactoring
• Quality Debt
• Design Debt
  • Merciless Refactoring
• Quality Debt
  • Find bugs before check-in
• Design Debt
  • Merciless Refactoring
• Quality Debt
  • Find bugs before check-in
• Testing Debt
• Design Debt
  • Merciless Refactoring
• Quality Debt
  • Find bugs before check-in
• Testing Debt
  • Fast automation
•   The Wobbly Iron Rhomboid
•   The Wobbly Iron Rhomboid

•   At first, Quality v. Productivity trade-offs
•   The Wobbly Iron Rhomboid

•   At first, Quality v. Productivity trade-offs

•   Sharpen the Chef’s Knives
•   The Wobbly Iron Rhomboid

•   At first, Quality v. Productivity trade-offs

•   Sharpen the Chef’s Knives

•   Quality quickly improves throughput of value
    (Productivity)
Rob.Myers@agileInstitute.com

         http://PowersOfTwo.agileInstitute.com/

                              @agilecoach




09 November 2011        © Agile Institute 2011    15

Contenu connexe

Tendances

DEVNET-2015 DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...
DEVNET-2015	DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...DEVNET-2015	DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...
DEVNET-2015 DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...Cisco DevNet
 
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...Project Controls Expo
 
Mainframe Solutions Introduction
Mainframe Solutions IntroductionMainframe Solutions Introduction
Mainframe Solutions IntroductionMicro Focus
 
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)Leveraging Your Company's DevOps Transformation (AppSec USA 2014)
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)dev2ops
 
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOps
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOpsSpeed Your Apps Launch to Market: Learn Six Best Practices for DevOps
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOpsCompuware APM
 
Ralph jocham agile portfolio based release trains
Ralph jocham agile portfolio based release trainsRalph jocham agile portfolio based release trains
Ralph jocham agile portfolio based release trainsAgora Group
 
Control model testing
Control model testingControl model testing
Control model testingScott Barber
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas EditionEric Ries
 
Testing Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentTesting Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentScott Barber
 
Agile tour 2011 ralph jocham - scrum primer
Agile tour 2011   ralph jocham - scrum primerAgile tour 2011   ralph jocham - scrum primer
Agile tour 2011 ralph jocham - scrum primerAgora Group
 
The DevOps Revolution And Beyond...
The DevOps Revolution And Beyond...The DevOps Revolution And Beyond...
The DevOps Revolution And Beyond...Chris Sterling
 
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy WebinarPutting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy WebinarITSM Academy, Inc.
 
Integrating Quality into Project Portfolio Management
Integrating Quality into Project Portfolio ManagementIntegrating Quality into Project Portfolio Management
Integrating Quality into Project Portfolio ManagementChris Sterling
 
Bs016 Sales Jh
Bs016 Sales JhBs016 Sales Jh
Bs016 Sales Jhgjedelijn
 
Managing Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG SeattleManaging Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG SeattleChris Sterling
 
Innov8ion in enterprise content management
Innov8ion in enterprise content managementInnov8ion in enterprise content management
Innov8ion in enterprise content managementJill Nehrybecki
 
Performance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket SciencePerformance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket ScienceScott Barber
 

Tendances (19)

DEVNET-2015 DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...
DEVNET-2015	DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...DEVNET-2015	DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...
DEVNET-2015 DevOps In Depth - Damon Edwards on DevOps Kaizen: Building an Ent...
 
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...
Project Controls Expo, 13th Nov 2013 - "EVM for the Rest of Us" By Javier Slo...
 
Mainframe Solutions Introduction
Mainframe Solutions IntroductionMainframe Solutions Introduction
Mainframe Solutions Introduction
 
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)Leveraging Your Company's DevOps Transformation (AppSec USA 2014)
Leveraging Your Company's DevOps Transformation (AppSec USA 2014)
 
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOps
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOpsSpeed Your Apps Launch to Market: Learn Six Best Practices for DevOps
Speed Your Apps Launch to Market: Learn Six Best Practices for DevOps
 
Ralph jocham agile portfolio based release trains
Ralph jocham agile portfolio based release trainsRalph jocham agile portfolio based release trains
Ralph jocham agile portfolio based release trains
 
Iqnite keynote
Iqnite keynoteIqnite keynote
Iqnite keynote
 
Control model testing
Control model testingControl model testing
Control model testing
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition
 
Testing Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to AssessmentTesting Missions in Context From Checking to Assessment
Testing Missions in Context From Checking to Assessment
 
Agile tour 2011 ralph jocham - scrum primer
Agile tour 2011   ralph jocham - scrum primerAgile tour 2011   ralph jocham - scrum primer
Agile tour 2011 ralph jocham - scrum primer
 
The DevOps Revolution And Beyond...
The DevOps Revolution And Beyond...The DevOps Revolution And Beyond...
The DevOps Revolution And Beyond...
 
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy WebinarPutting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
 
Integrating Quality into Project Portfolio Management
Integrating Quality into Project Portfolio ManagementIntegrating Quality into Project Portfolio Management
Integrating Quality into Project Portfolio Management
 
Bs016 Sales Jh
Bs016 Sales JhBs016 Sales Jh
Bs016 Sales Jh
 
Managing Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG SeattleManaging Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG Seattle
 
Advanced Scrum
Advanced ScrumAdvanced Scrum
Advanced Scrum
 
Innov8ion in enterprise content management
Innov8ion in enterprise content managementInnov8ion in enterprise content management
Innov8ion in enterprise content management
 
Performance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket SciencePerformance Testing in Context; From Simple to Rocket Science
Performance Testing in Context; From Simple to Rocket Science
 

En vedette

7 Steps to Pay Down the Interest on Your IT Technical Debt
7 Steps to Pay Down the Interest on Your IT Technical Debt7 Steps to Pay Down the Interest on Your IT Technical Debt
7 Steps to Pay Down the Interest on Your IT Technical DebtCAST
 
Metrics As A Learn And Change Agent
Metrics As A Learn And Change AgentMetrics As A Learn And Change Agent
Metrics As A Learn And Change AgentGaetano Mazzanti
 
Building a Compelling Value Proposition - Competitive Advantage for Startups
Building a Compelling Value Proposition - Competitive Advantage for StartupsBuilding a Compelling Value Proposition - Competitive Advantage for Startups
Building a Compelling Value Proposition - Competitive Advantage for StartupsMichael Skok
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance TestingAtul Pant
 
Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationNishanth K Hydru
 
Agile Transformation and Cultural Change
 Agile Transformation and Cultural Change Agile Transformation and Cultural Change
Agile Transformation and Cultural ChangeJohnny Ordóñez
 

En vedette (8)

7 Steps to Pay Down the Interest on Your IT Technical Debt
7 Steps to Pay Down the Interest on Your IT Technical Debt7 Steps to Pay Down the Interest on Your IT Technical Debt
7 Steps to Pay Down the Interest on Your IT Technical Debt
 
Metrics As A Learn And Change Agent
Metrics As A Learn And Change AgentMetrics As A Learn And Change Agent
Metrics As A Learn And Change Agent
 
Adopting Agile
Adopting  AgileAdopting  Agile
Adopting Agile
 
Building a Compelling Value Proposition - Competitive Advantage for Startups
Building a Compelling Value Proposition - Competitive Advantage for StartupsBuilding a Compelling Value Proposition - Competitive Advantage for Startups
Building a Compelling Value Proposition - Competitive Advantage for Startups
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance Testing
 
software engineering
 software engineering software engineering
software engineering
 
Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile Transformation
 
Agile Transformation and Cultural Change
 Agile Transformation and Cultural Change Agile Transformation and Cultural Change
Agile Transformation and Cultural Change
 

Similaire à Technical Debt

Top 7 Myths of Agile Testing - Busted!
Top 7 Myths of Agile Testing - Busted!Top 7 Myths of Agile Testing - Busted!
Top 7 Myths of Agile Testing - Busted!Aricent
 
Things you should know about Scalability!
Things you should know about Scalability!Things you should know about Scalability!
Things you should know about Scalability!Robert Mederer
 
Dan perron lim
Dan perron limDan perron lim
Dan perron limsdeconf
 
Testing in an Agile Context 2011
Testing in an Agile Context 2011Testing in an Agile Context 2011
Testing in an Agile Context 2011Chris Sterling
 
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02Ppwithagileyannhamonqconbeijing 090423081417-phpapp02
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02youzitang
 
Kepner Tregoe Developing Your Hr Project Management Skills
Kepner Tregoe  Developing Your Hr Project Management SkillsKepner Tregoe  Developing Your Hr Project Management Skills
Kepner Tregoe Developing Your Hr Project Management SkillsJessica Booth
 
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...Compuware APM
 
Passing internal and external audits with reporting and dashboards nov 2011
Passing internal and external audits with reporting and dashboards   nov 2011Passing internal and external audits with reporting and dashboards   nov 2011
Passing internal and external audits with reporting and dashboards nov 2011Scott Althouse
 
Passing internal and external audits with reporting and dashboards nov 2011
Passing internal and external audits with reporting and dashboards   nov 2011Passing internal and external audits with reporting and dashboards   nov 2011
Passing internal and external audits with reporting and dashboards nov 2011Scott Althouse
 
The Digital Age: How to get the most out of mobile devices in the legal envir...
The Digital Age: How to get the most out of mobile devices in the legal envir...The Digital Age: How to get the most out of mobile devices in the legal envir...
The Digital Age: How to get the most out of mobile devices in the legal envir...e-ternity
 
Making Scrum Stick Inside Heavy Regulated Industries (2012)
Making Scrum Stick Inside Heavy Regulated Industries (2012) Making Scrum Stick Inside Heavy Regulated Industries (2012)
Making Scrum Stick Inside Heavy Regulated Industries (2012) Laszlo Szalvay
 
Rhodes.donna
Rhodes.donnaRhodes.donna
Rhodes.donnaNASAPMC
 
Agile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, MumbaiAgile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, MumbaiHiren Doshi
 
Agile Practices Proven in Highly Regulated Environments by Craig Langenfeld
Agile Practices Proven in Highly Regulated Environments by Craig LangenfeldAgile Practices Proven in Highly Regulated Environments by Craig Langenfeld
Agile Practices Proven in Highly Regulated Environments by Craig LangenfeldAgile Software Community of India
 
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...Brent Barton
 
How Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering TeamHow Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering TeamSalesforce Developers
 
ETIS11 - Agile Business Intelligence - Presentation
ETIS11 -  Agile Business Intelligence - PresentationETIS11 -  Agile Business Intelligence - Presentation
ETIS11 - Agile Business Intelligence - PresentationDavid Walker
 

Similaire à Technical Debt (20)

Top 7 Myths of Agile Testing - Busted!
Top 7 Myths of Agile Testing - Busted!Top 7 Myths of Agile Testing - Busted!
Top 7 Myths of Agile Testing - Busted!
 
Things you should know about Scalability!
Things you should know about Scalability!Things you should know about Scalability!
Things you should know about Scalability!
 
Dan perron lim
Dan perron limDan perron lim
Dan perron lim
 
Testing in an Agile Context 2011
Testing in an Agile Context 2011Testing in an Agile Context 2011
Testing in an Agile Context 2011
 
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02Ppwithagileyannhamonqconbeijing 090423081417-phpapp02
Ppwithagileyannhamonqconbeijing 090423081417-phpapp02
 
Kepner Tregoe Developing Your Hr Project Management Skills
Kepner Tregoe  Developing Your Hr Project Management SkillsKepner Tregoe  Developing Your Hr Project Management Skills
Kepner Tregoe Developing Your Hr Project Management Skills
 
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...
IDC & Gomez Webinar --Best Practices: Protect Your Online Revenue Through Web...
 
Passing internal and external audits with reporting and dashboards nov 2011
Passing internal and external audits with reporting and dashboards   nov 2011Passing internal and external audits with reporting and dashboards   nov 2011
Passing internal and external audits with reporting and dashboards nov 2011
 
Passing internal and external audits with reporting and dashboards nov 2011
Passing internal and external audits with reporting and dashboards   nov 2011Passing internal and external audits with reporting and dashboards   nov 2011
Passing internal and external audits with reporting and dashboards nov 2011
 
Business value of Agile : A People10 Showcase
Business value of Agile : A People10 ShowcaseBusiness value of Agile : A People10 Showcase
Business value of Agile : A People10 Showcase
 
Introduction to Lean, Agile, Scrum, & XP
Introduction to Lean, Agile, Scrum, & XPIntroduction to Lean, Agile, Scrum, & XP
Introduction to Lean, Agile, Scrum, & XP
 
The Digital Age: How to get the most out of mobile devices in the legal envir...
The Digital Age: How to get the most out of mobile devices in the legal envir...The Digital Age: How to get the most out of mobile devices in the legal envir...
The Digital Age: How to get the most out of mobile devices in the legal envir...
 
Making Scrum Stick Inside Heavy Regulated Industries (2012)
Making Scrum Stick Inside Heavy Regulated Industries (2012) Making Scrum Stick Inside Heavy Regulated Industries (2012)
Making Scrum Stick Inside Heavy Regulated Industries (2012)
 
Rhodes.donna
Rhodes.donnaRhodes.donna
Rhodes.donna
 
Agile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, MumbaiAgile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, Mumbai
 
Agile Practices Proven in Highly Regulated Environments by Craig Langenfeld
Agile Practices Proven in Highly Regulated Environments by Craig LangenfeldAgile Practices Proven in Highly Regulated Environments by Craig Langenfeld
Agile Practices Proven in Highly Regulated Environments by Craig Langenfeld
 
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...
Integrating Quality into Portfolio Management, PMI Silicon Valley Chapter Din...
 
How Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering TeamHow Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering Team
 
Utah PMA Quarterly Meeting, June, 2009
Utah PMA Quarterly Meeting, June, 2009Utah PMA Quarterly Meeting, June, 2009
Utah PMA Quarterly Meeting, June, 2009
 
ETIS11 - Agile Business Intelligence - Presentation
ETIS11 -  Agile Business Intelligence - PresentationETIS11 -  Agile Business Intelligence - Presentation
ETIS11 - Agile Business Intelligence - Presentation
 

Plus de Rob Myers

The Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesThe Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesRob Myers
 
The Business Value of Test-Driven Development
The Business Value of Test-Driven DevelopmentThe Business Value of Test-Driven Development
The Business Value of Test-Driven DevelopmentRob Myers
 
Roots of Agility - Better Software Agile Dev Practices East 2014 Keynote
Roots of Agility - Better Software Agile Dev Practices East 2014 KeynoteRoots of Agility - Better Software Agile Dev Practices East 2014 Keynote
Roots of Agility - Better Software Agile Dev Practices East 2014 KeynoteRob Myers
 
Assessing the business value of Agile Engineering Practices
Assessing the business value of Agile Engineering PracticesAssessing the business value of Agile Engineering Practices
Assessing the business value of Agile Engineering PracticesRob Myers
 
The Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesThe Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesRob Myers
 
Unit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScriptUnit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScriptRob Myers
 
Mock Objects from Concept to Code
Mock Objects from Concept to CodeMock Objects from Concept to Code
Mock Objects from Concept to CodeRob Myers
 
Successful Teams are TDD Teams
Successful Teams are TDD TeamsSuccessful Teams are TDD Teams
Successful Teams are TDD TeamsRob Myers
 
TDD? Sure, but What About My Legacy Code?
TDD? Sure, but What About My Legacy Code?TDD? Sure, but What About My Legacy Code?
TDD? Sure, but What About My Legacy Code?Rob Myers
 
Test-Driven Development Overview
Test-Driven Development OverviewTest-Driven Development Overview
Test-Driven Development OverviewRob Myers
 
Metrics In An Agile World
Metrics In An Agile WorldMetrics In An Agile World
Metrics In An Agile WorldRob Myers
 
The Value of Refactoring on an Agile Team
The Value of Refactoring on an Agile TeamThe Value of Refactoring on an Agile Team
The Value of Refactoring on an Agile TeamRob Myers
 
Successful Teams are Test-Driven Teams
Successful Teams are Test-Driven TeamsSuccessful Teams are Test-Driven Teams
Successful Teams are Test-Driven TeamsRob Myers
 
Agile Testing: Solving the Agilist\'s Dilemma
Agile Testing: Solving the Agilist\'s DilemmaAgile Testing: Solving the Agilist\'s Dilemma
Agile Testing: Solving the Agilist\'s DilemmaRob Myers
 

Plus de Rob Myers (14)

The Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesThe Business Value of Agile Engineering Practices
The Business Value of Agile Engineering Practices
 
The Business Value of Test-Driven Development
The Business Value of Test-Driven DevelopmentThe Business Value of Test-Driven Development
The Business Value of Test-Driven Development
 
Roots of Agility - Better Software Agile Dev Practices East 2014 Keynote
Roots of Agility - Better Software Agile Dev Practices East 2014 KeynoteRoots of Agility - Better Software Agile Dev Practices East 2014 Keynote
Roots of Agility - Better Software Agile Dev Practices East 2014 Keynote
 
Assessing the business value of Agile Engineering Practices
Assessing the business value of Agile Engineering PracticesAssessing the business value of Agile Engineering Practices
Assessing the business value of Agile Engineering Practices
 
The Business Value of Agile Engineering Practices
The Business Value of Agile Engineering PracticesThe Business Value of Agile Engineering Practices
The Business Value of Agile Engineering Practices
 
Unit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScriptUnit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScript
 
Mock Objects from Concept to Code
Mock Objects from Concept to CodeMock Objects from Concept to Code
Mock Objects from Concept to Code
 
Successful Teams are TDD Teams
Successful Teams are TDD TeamsSuccessful Teams are TDD Teams
Successful Teams are TDD Teams
 
TDD? Sure, but What About My Legacy Code?
TDD? Sure, but What About My Legacy Code?TDD? Sure, but What About My Legacy Code?
TDD? Sure, but What About My Legacy Code?
 
Test-Driven Development Overview
Test-Driven Development OverviewTest-Driven Development Overview
Test-Driven Development Overview
 
Metrics In An Agile World
Metrics In An Agile WorldMetrics In An Agile World
Metrics In An Agile World
 
The Value of Refactoring on an Agile Team
The Value of Refactoring on an Agile TeamThe Value of Refactoring on an Agile Team
The Value of Refactoring on an Agile Team
 
Successful Teams are Test-Driven Teams
Successful Teams are Test-Driven TeamsSuccessful Teams are Test-Driven Teams
Successful Teams are Test-Driven Teams
 
Agile Testing: Solving the Agilist\'s Dilemma
Agile Testing: Solving the Agilist\'s DilemmaAgile Testing: Solving the Agilist\'s Dilemma
Agile Testing: Solving the Agilist\'s Dilemma
 

Dernier

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Dernier (20)

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Technical Debt

  • 1. C afé Identifying, Measuring, Reducing & Avoiding Technical Debt Rob Myers for ADP East 10 Nov 2011 09 November 2011 © Agile Institute 2011 1
  • 2. time (schedule) effort (cost) size (scope) Five Core Metrics: The Intelligence Behind Successful Software Management, Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003 09 November 2011 © Agile Institute 2011 2
  • 3. time (schedule) effort (cost) size (scope) Five Core Metrics: The Intelligence Behind Successful Software Management, Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003 09 November 2011 © Agile Institute 2011 2
  • 4. time (schedule) effort (cost) size (scope) Five Core Metrics: The Intelligence Behind Successful Software Management, Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003 09 November 2011 © Agile Institute 2011 2
  • 5. time (schedule) productivity effort (cost) size (scope) Five Core Metrics: The Intelligence Behind Successful Software Management, Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003 09 November 2011 © Agile Institute 2011 2
  • 6. reliability time (schedule) (quality) productivity effort (cost) size (scope) Five Core Metrics: The Intelligence Behind Successful Software Management, Lawrence H. Putnam & Ware Myers, Dorset House Publishing, 2003 09 November 2011 © Agile Institute 2011 2
  • 7. 09 November 2011 © Rob Myers 2011 3
  • 8. “...having high amounts of Technical Debt is probably the number one impediment to Teams being agile.” Dr. Dan Rawsthorne, Exploring Scrum:The Fundamentals
  • 9.
  • 11. • Design Debt • Quality Debt
  • 12. • Design Debt • Quality Debt • Testing Debt
  • 13. Design Debt • Quality Debt • Testing Debt • ...ad nauseam
  • 14.
  • 16. • Design Debt • Cyclomatic complexity
  • 17. • Design Debt • Cyclomatic complexity • Cycle time
  • 18. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt
  • 19. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt • Mean Time Between Failures
  • 20. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt • Mean Time Between Failures • Severe-defect count
  • 21. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt • Mean Time Between Failures • Severe-defect count • Testing Debt
  • 22. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt • Mean Time Between Failures • Severe-defect count • Testing Debt • % Covered
  • 23. • Design Debt • Cyclomatic complexity • Cycle time • Quality Debt • Mean Time Between Failures • Severe-defect count • Testing Debt • % Covered • Time to regression test
  • 24. 09 November 2011 © Rob Myers 2011 7
  • 25. (c) SoftwareHumor.com http://theleek.net/software-humor-blog/posters/technical-debt-the-poster/ 09 November 2011 © Rob Myers 2011 8
  • 27. Test Drive! 09 November 2011 © Rob Myers 2011 10
  • 28. “The results of the case studies indicate that the pre-release defect density of the four products decreased between 40% and 90% relative to similar projects that did not use the TDD practice. Subjectively, the teams experienced a 15–35% increase in initial development time after adopting TDD.” http://research.microsoft.com/en-us/projects/esm/nagappan_tdd.pdf, Nagappan et al, © Springer Science + Business Media, LLC 2008 09 November 2011 © Rob Myers 2011 11
  • 29. Developer’s “Oath of Athens” I vow to leave the code as good as I found it, or better!
  • 30.
  • 32. • Design Debt • Merciless Refactoring
  • 33. • Design Debt • Merciless Refactoring • Quality Debt
  • 34. • Design Debt • Merciless Refactoring • Quality Debt • Find bugs before check-in
  • 35. • Design Debt • Merciless Refactoring • Quality Debt • Find bugs before check-in • Testing Debt
  • 36. • Design Debt • Merciless Refactoring • Quality Debt • Find bugs before check-in • Testing Debt • Fast automation
  • 37.
  • 38. The Wobbly Iron Rhomboid
  • 39. The Wobbly Iron Rhomboid • At first, Quality v. Productivity trade-offs
  • 40. The Wobbly Iron Rhomboid • At first, Quality v. Productivity trade-offs • Sharpen the Chef’s Knives
  • 41. The Wobbly Iron Rhomboid • At first, Quality v. Productivity trade-offs • Sharpen the Chef’s Knives • Quality quickly improves throughput of value (Productivity)
  • 42. Rob.Myers@agileInstitute.com http://PowersOfTwo.agileInstitute.com/ @agilecoach 09 November 2011 © Agile Institute 2011 15

Notes de l'éditeur

  1. \n
  2. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  3. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  4. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  5. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  6. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  7. Looks like Time, Cost, Scope “Iron Triangle”\nPerformance is derived from other direct metrics\nAddition of reliability as quality\nQuality (“Iron Rhomboid”). Productivity is influenced by all but Reliability!\n
  8. Problem: Iterations imply incremental development\nChange can result in a negative feedback loop - ENTROPY: The Agilist’s Dilemma\nWe have to address this. It’s not easy, until it becomes easy. At first, we’d rather not check the oil…\n
  9. ...and I’d add “to products or projects being successful”\n
  10. Types of debt\nThey all have a few things in common: \nDifficult to quantify\nseemingly expensive to fix,\naccrued because we don’t want to (or aren’t sure at the time that we need to) pay now,\n\n
  11. Types of debt\nThey all have a few things in common: \nDifficult to quantify\nseemingly expensive to fix,\naccrued because we don’t want to (or aren’t sure at the time that we need to) pay now,\n\n
  12. Types of debt\nThey all have a few things in common: \nDifficult to quantify\nseemingly expensive to fix,\naccrued because we don’t want to (or aren’t sure at the time that we need to) pay now,\n\n
  13. Types of debt\nThey all have a few things in common: \nDifficult to quantify\nseemingly expensive to fix,\naccrued because we don’t want to (or aren’t sure at the time that we need to) pay now,\n\n
  14. Measures\n
  15. Measures\n
  16. Measures\n
  17. Measures\n
  18. Measures\n
  19. Measures\n
  20. Measures\n
  21. Measures\n
  22. Measures\n
  23. Real Debt! Need QUALITATIVE metrics!\n
  24. Acknowledge the amount of debt\nPay a Minimum\nFind ways to Stop creating debt!\nLet’s look at some methods...\n
  25. Bug fixing, refactoring, legacy-pinning\n
  26. \n
  27. Does TDD Work?\nMicrosoft and IBM…\nAlso, “approximately 40% fewer defects” Laurie Williams for ACM\ndefect rate is considerably lower\nfuture enhancements easier in a dynamic market. \ndefects quickly detected\n
  28. “to leave the city better than I found it”\n\n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. For management to embrace and support...\n\n
  36. For management to embrace and support...\n\n
  37. For management to embrace and support...\n\n
  38. For management to embrace and support...\n\n
  39. Thank you!\n