The document discusses the concept of technical debt, which is code quality issues or design issues that are intentionally deferred for a future date in order to quickly deliver new features. This debt needs to be paid back at a later time which becomes more difficult and costly the longer it is deferred. The key points made are:
- Technical debt is a metaphor for code quality issues that accrue over time if not addressed.
- Symptoms of high technical debt include slower development velocity, difficulty implementing new features, and low code quality.
- Strategies for managing technical debt include refactoring a little at a time with each change, using the "stangler" pattern of gradually replacing parts of an application, and occasionally stopping
1 of 47
Downloaded 37 times
More Related Content
Technical Debt
1. Technical Debt
The Silent Application Killer
息 ThoughtWorks 2011
Tuesday, 8 November 11
2. Graham Brooks
http://www.thoughtworks.com/blogs/current
http://www.grahambrooks.com/blog
@wookie870
息 ThoughtWorks 2011
Tuesday, 8 November 11
3. Outline
De鍖nition
Why is it important?
Symptoms and signs
Debt resolution strategies
Tuesday, 8 November 11
5. Technical Debt
Metaphor coined by Ward Cunningham to
explain the misalignment between code and
current understanding
Tuesday, 8 November 11
6. Consciously taking on debt might allow
you to get something sooner
Tuesday, 8 November 11
7. Burden
Not paying off - borrowing without paying
it back
Spending power goes to 0
All your money goes into paying interest
Tuesday, 8 November 11
8. Some might see this as an excuse to write
poor code.
Never write poor code
Tuesday, 8 November 11
9. Reckless Prudent
We must ship now
We dont
Deliberate and deal with the
have time
consequences
for design
Now we know
Inadvertent What is layering? how we should
have built it
source: http://martinfowler.com/bliki/TechnicalDebtQuadrant.html
Tuesday, 8 November 11
10. Evidence is anecdotal and based on personal
experience of many projects
Tuesday, 8 November 11
12. A re-write will...
Solve all our problems
If we use language X
The latest framework
A new code generator
A new database
.....
Tuesday, 8 November 11
16. Your codebase can never be in Credit
For commercial projects technical debt is a
fact of life
You either have enough or too much
Tuesday, 8 November 11
28. You know you are working on clean code
when each routine you read turns out to be
pretty much what you expected.You can call
it beautiful code when the code also makes it
look like the language was made for the
problem
Ward Cunningham
Clean Code by Robert C Martin
Tuesday, 8 November 11
43. First Steps
Imagine you have joined a new team
Run metrics
Estimate debt
Plan next steps
Execute the plan
Tuesday, 8 November 11
44. Software Rusts
Things Change
New capabilities
Libraries
Frameworks
OS
Tuesday, 8 November 11
45. Every modi鍖cation of a system might incur
technical debt unless it is accompanied by
some effort to bring the design into line with
the requirements.
Tuesday, 8 November 11