Date post: | 13-Jan-2015 |
Category: |
Economy & Finance |
Upload: | icsm-2011 |
View: | 443 times |
Download: | 2 times |
Tracking Technical Debt — An Exploratory Case Study
Yuepu Guo, Carolyn Seaman
Information Systems Department, University of Maryland Baltimore County, USA
Rebeka Gomes, Antonio Cavalcanti, Graziela Tonin, Fabio
Q. B. Da Silva, André L. M. Santos, Clauirton Siebra
CIn/UFPE - Center of Informatics at Federal University of Pernambuco, Brazil
ICSM 2011
Williamsburg, VA, USA
May 25 – May 30, 2011
Technical Debt
Delaying software maintenance tasks for short term gain but possible long term cost
Risk – additional cost (interest) and uncertainty of interest payment
Decision – what technical debt should be paid off and when?
Management Practice
IMPLICIT technical debt management
Experience-based decision making (no rigorous measurement)
Proposed Research
Cost-benefit relationships of incurring technical debt
Costs and benefits of EXPLICIT technical debt management
Retrospective study
Research Questions
How and to what extent technical debt affects software projects?
Is the decision simulation is effective to uncover the benefits of explicit technical debt
management?
Introduction
2
Larger Research Project
Measuring and Monitoring Technical Debt
Technical Debt Management Framework
Background
3
TD List
TD Identification
TD Measurement
TD Monitoring
ID 20
Date 7/18/2009
Responsible Rose Angel
Type Documentation
Location Module S
Description In the last release, function F was added to
module S, but the documentation has not
been updated to reflect this change.
Principal 3.5 person-day
Interest Amount: 1.5 person-day
Interest Probability 40%
System Software application from a multi-national company
Client solution for Microsoft Exchange Server
63,218 LOC and over 5 years of evolution with 20 developers involved
Evolution
D1: Decision to maintain WebDAV communication protocol
D2: Decision to couple persistence and communication layers
D3: Decision to upgrade to ActiveSync communication protocol
R1: First system release
R2: Second system release
Technical Debt Item Delayed change of the communication protocol (T1)
Subject Technical Debt Item
4
2011
CostX
D 2R 1
D3R 2
D1: Decision to maintain WebDAV protocolD2: Decision to coupple persistence and communication layersD3: Decision to support MS Exchange 2007R1: First system releaseR2: First maintenance release
D 1
Measurement Technical debt item (T1)
Principal: Effort to switch to ActiveSync (new protocol)
Interest Amount: Rework effort on affected modules
Interest Probability Coupling the communication and persistence layers
Switching to ActiveSync
Impact of T1 Gain: Principal
Loss: Interest Amount × Interest Probability
Decision Simulation Process
Methodology
5
Track TD item at D1
Estimate principal and
interest
Simulate decision
Compare decisions
Decisions
Simulated Cost/Benefit Analysis
Results
6
507 507 507
65
585
929
0
200
400
600
800
1000
D1 D2 D3
Lab
or-
hour
Decision Point
Beneift
Cost
Defer Actual
Decision
Simulated
Decision
D1 D2 D3
Pay
Defer Defer
Pay Pay
The value of explicit
technical debt management
Defer Defer
Pay Pay
Technical debt may have significant impact on software projects (tripled the development cost in this case)
A decision made without careful analysis could aggravate the negative effect of technical debt
Explicit management of technical debt could prevent high cost incurred by technical debt
Decision simulation provides an effective approach to the technical debt problem
Business factors Real benefit of incurring the technical debt
Over-simplicity of the approach
Multi-disciplinary team
Conclusion
7
Questions?
8