Some categories of tech debt, their causes, potential metrics (and how to avoid their misuse), and ways to pay down the debt, and avoid the accrual of technical debt.
Talk first given at Agile Development Practices East 2011.
8. “...having high amounts of Technical Debt is
probably the number one impediment to Teams
being agile.”
Dr. Dan Rawsthorne,
Exploring Scrum:The Fundamentals
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
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)
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
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
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
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
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
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
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
...and I’d add “to products or projects being successful”\n
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
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
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
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
Measures\n
Measures\n
Measures\n
Measures\n
Measures\n
Measures\n
Measures\n
Measures\n
Measures\n
Real Debt! Need QUALITATIVE metrics!\n
Acknowledge the amount of debt\nPay a Minimum\nFind ways to Stop creating debt!\nLet’s look at some methods...\n
Bug fixing, refactoring, legacy-pinning\n
\n
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
“to leave the city better than I found it”\n\n