Copyright © 2012-2014 by Mark J. Sebern Software Engineering Process I SE-2800-07 Technical debt.
-
Upload
gerald-norton -
Category
Documents
-
view
213 -
download
0
Transcript of Copyright © 2012-2014 by Mark J. Sebern Software Engineering Process I SE-2800-07 Technical debt.
Copyright © 2012-2014 by Mark J. Sebern
Technical Debt• What is debt (in a financial sense)?
• Principal, interest, payments, compounding
• What’s the basic idea of “technical debt”?
• Is “debt” (always? ever?) a bad thing?
• Is “debt” (always? ever?) a good thing?
Copyright © 2012-2014 by Mark J. Sebern
Kinds of Technical Debt
• Unfit (bad) design
• Defects
• Insufficient test coverage
• Excessive manual testing
• Poor integration and release management
• Lack of platform experience
• Other kinds?
Briefly, define each kind
Copyright © 2012-2014 by Mark J. Sebern
Types of Technical Debt
• How do the following types differ?
• Naive technical debt
• Unavoidable technical debt
• Strategic technical debt
Copyright © 2012-2014 by Mark J. Sebern
Consequences of Technical Debt
Unpredictable tipping point
Increased delivery
time
Significant # of
defects
Rising development & support costs
Product atrophy
Decreased
predictability
Under-performan
ce
Universal frustration
Decreased customer
satisfaction
Copyright © 2012-2014 by Mark J. Sebern
Causes ofTechnical Debt
Deadline pressure
False “acceleratio
n”
Decreased verificatio
n
Cumulative debt effects (decreasing
velocity)
Copyright © 2012-2014 by Mark J. Sebern
Managing Technical Debt
Managing debt accrual
Making debt visible
Servicing the debt
Copyright © 2012-2014 by Mark J. Sebern
Managing Technical Debt
Managing debt accrual
Making debt visible
Servicing the debt
Good technical practices
Strong “done” definition
Understanding of debt economics (delay vs repayment costs)
Copyright © 2012-2014 by Mark J. Sebern
Managing debt accrual
Making debt visible
Servicing the debt
Good technical practices
Strong “done” definition
Understanding of debt economics (delay vs repayment costs)
Managing Technical Debt
Don’t forget that debt bears interest!
Copyright © 2012-2014 by Mark J. Sebern
Managing Technical Debt
Managing debt accrual
Making debt visible
Servicing the debt
Good technical practices
Visibility at the business level
(balance sheet)
Strong “done” definition
Visibility at the technical level (defects, PBIs, cards)
Understanding of debt economics (delay vs repayment costs)
Copyright © 2012-2014 by Mark J. Sebern
Managing Technical Debt
Managing debt accrual
Making debt visible
Servicing the debt
Good technical practices
Visibility at the business level
(balance sheet)
Deciding whether to repay
Strong “done” definition
Visibility at the technical level (defects, PBIs, cards)
Repay when found,
incrementally, high-interest first
Understanding of debt economics (delay vs repayment costs)
Repay while producing value
(avoid balloon payments)