SlideShare ist ein Scribd-Unternehmen logo
1 von 29
© 2011 VersionOne 1
Managing Technical
Debt
© 2011 VersionOne 2
Let’s Talk
© 2011 VersionOne 3
What is Technical Debt
• Design Compromises
• Choosing to accept something as “done” before its time
© 2011 VersionOne 4
Technical debt is not always represented by
Defects
public void populateList(String food)
{
Food SelectedFood = new Food();
if(food.equalsIgnoreCase("vegetable"))
{
SelectedFood = new Vegetables();
}
else if(food.contains("Legume"))
{
SelectedFood = new Legume();
}
list.setAdapter(mSchedule);
}
© 2011 VersionOne 5
But it usually results in them
© 2011 VersionOne 6
Is technical debt always bad?
• Just as in finance, sometimes taking on a certain level of
debt can be considered an investment.
– This needs to be a decision that is made proactively, not
reactively
© 2011 VersionOne 7
Is a debt free project even possible?
• Mentality of Sufficiency – Perfect is the natural enemy
of Good
© 2011 VersionOne 8
When might debt be ok?
• New architecture
– Perhaps we want to do our migration to the new architecture one
step at a time. Until we have completed the migration we are
choosing debt
• First to Market
– Sometimes, the monetary effect of being first to market is worth
incurring some debt
© 2011 VersionOne 9
Some common ways to incur debt
• Time pressure
– We don’t have enough time to finish, unless we cut some corners
• Competitive pressure
– If we can at least show this feature, we will beat the competitor
to market
© 2011 VersionOne 10
How might we avoid taking on too much
debt?
© 2011 VersionOne 11
Test Driven Development
© 2011 VersionOne 12
Acknowledging the interest rate
• There is a cost to waiting
• Understand what that cost is and call it out
• Remember that interest compounds
© 2011 VersionOne 13
Paying off inherited debt (legacy code)
• Start small, creating tests around any work we do within
the legacy code base
• We own this debt just as much any debt we choose to
take on.
© 2011 VersionOne 14
Refactoring – paying a little at a time
• All debt has a minimum payment, or “debt service”
• We can pay our debt service through improving the design
whenever we are in our code, without changing the
behavior
– Find a place that could use some improvement
– Wrap the change in tests
– Make the change
– Run the tests
• Its ok to pay a little extra, but don’t go overboard
© 2011 VersionOne 15
Some strategies for spending within your
means
• Keep your stories small
• Only sign up for what you can comfortably accomplish
• Stick to your guns, only agree to debt that you can be
comforatable with
© 2011 VersionOne 16
Don’t take on more than you can pay
© 2011 VersionOne 17
Limited WIP and Kanban
• By constraining how much work we take on at one time
we can focus on quality
• Pull oriented processes mean less incentive to “cram
something in”
© 2011 VersionOne 18
Iterative Development and Velocity
• As we identify a cadence and velocity, we see how much
we really can sign on for
• Tight feedback loops give us room to inspect and adapt
© 2011 VersionOne 19
Pay the Biggest interest items first
• Make debt service on all debt
• As you fix the more expensive items, you are freeing up
resources for the less expensive items later
© 2011 VersionOne 20
Debt Restructuring
• Sometimes, but *very* seldom, we have to declare
bankruptcy – Major Rearchitecture
• A better approach is to create a restructuring plan
• A set of payments (backlog items or defects) that are
scheduled at regular intervals, and with higher priority or
Class of Service than new features
© 2011 VersionOne 21
Alternative ways to consider debt
• Choose a metaphor that resonates
• Not everyone is comfortable with the money theme
© 2011 VersionOne 22
Speedboat
• Our product is a speedboat, heading for an exotic harbor
• Our debt is a set of anchors
– Each anchor has a weight associated with the amount of work
to be done
– Each anchor is a different depth, loosely analogous to how long it
will take to pull the anchor up
© 2011 VersionOne 23
Some basic tips
© 2011 VersionOne 24
Recognize your debt
• Don’t sweep it under the rug
• “It goes without saying” doesn’t
© 2011 VersionOne 25
“Borrow” only when absolutely necessary
• Don’t let It become a habit
• By thinking of it as a necessary evil, we can make it
something that is an exception instead of a rule
© 2011 VersionOne 26
Track debt
• Note the “interest rate”
• Calculate the costs at periodic intervals
© 2011 VersionOne 27
Plan to pay your debt, just like you plan for
new features
© 2011 VersionOne 28
Don’t beat yourself up
• We all borrow
• Sometimes we let our borrowing get away from us
• Recriminations do NOTHING to get the debt paid off
© 2011 VersionOne 29
Remember, you can pay me now, or you can
pay me later…

Weitere ähnliche Inhalte

Ähnlich wie Managing Technical Debt

Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Hannah Flynn
 
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Aggregage
 
Managing Technical Debt - by Michael Hall
Managing Technical Debt - by Michael HallManaging Technical Debt - by Michael Hall
Managing Technical Debt - by Michael HallSynerzip
 
Making capital investment decisions
Making capital investment decisionsMaking capital investment decisions
Making capital investment decisionskaylakshmi
 
Agile Testing
Agile Testing Agile Testing
Agile Testing VersionOne
 
Futurum training capital budgeting (intermediate)
Futurum training capital budgeting (intermediate)Futurum training capital budgeting (intermediate)
Futurum training capital budgeting (intermediate)mputrawal
 
Daily Money Management in a Changing Economy
Daily Money Management in a Changing EconomyDaily Money Management in a Changing Economy
Daily Money Management in a Changing Economyschweitzerbrian
 
Iii. principles of_capital_budgeting
Iii. principles of_capital_budgetingIii. principles of_capital_budgeting
Iii. principles of_capital_budgetingEzgi Kurt
 
Specifics of Managing Large, Complex Projects
Specifics of Managing Large, Complex ProjectsSpecifics of Managing Large, Complex Projects
Specifics of Managing Large, Complex ProjectsJeremie Averous
 
IMVU: “But Does It Scale?” from Startup Lessons Learned Conference
IMVU: “But Does It Scale?” from Startup Lessons Learned ConferenceIMVU: “But Does It Scale?” from Startup Lessons Learned Conference
IMVU: “But Does It Scale?” from Startup Lessons Learned ConferenceBrett Durrett
 
Developing a Scalable and Long-Lived System at METRO
Developing a Scalable and Long-Lived System at METRODeveloping a Scalable and Long-Lived System at METRO
Developing a Scalable and Long-Lived System at METRODaniel Löffelholz
 
capital budgeting process investment rules.pptx
capital budgeting process investment rules.pptxcapital budgeting process investment rules.pptx
capital budgeting process investment rules.pptxATEEQURRehman366058
 
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...MassTLC
 
Corporate Finance.ppt
Corporate Finance.pptCorporate Finance.ppt
Corporate Finance.pptmQuangThanhT
 
Going agile with scrum
Going agile with scrumGoing agile with scrum
Going agile with scrumMayur Sand
 
Running successful agile projects
Running successful agile projectsRunning successful agile projects
Running successful agile projectsMartin Aspeli
 

Ähnlich wie Managing Technical Debt (20)

Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
 
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
 
Managing Technical Debt - by Michael Hall
Managing Technical Debt - by Michael HallManaging Technical Debt - by Michael Hall
Managing Technical Debt - by Michael Hall
 
Making capital investment decisions
Making capital investment decisionsMaking capital investment decisions
Making capital investment decisions
 
Agile Testing
Agile Testing Agile Testing
Agile Testing
 
Futurum training capital budgeting (intermediate)
Futurum training capital budgeting (intermediate)Futurum training capital budgeting (intermediate)
Futurum training capital budgeting (intermediate)
 
Agile Release & Iteration Planning
Agile Release & Iteration Planning   Agile Release & Iteration Planning
Agile Release & Iteration Planning
 
Lecture02
Lecture02Lecture02
Lecture02
 
Agile Release & Iteration Planning
Agile Release & Iteration PlanningAgile Release & Iteration Planning
Agile Release & Iteration Planning
 
Daily Money Management in a Changing Economy
Daily Money Management in a Changing EconomyDaily Money Management in a Changing Economy
Daily Money Management in a Changing Economy
 
Iii. principles of_capital_budgeting
Iii. principles of_capital_budgetingIii. principles of_capital_budgeting
Iii. principles of_capital_budgeting
 
Specifics of Managing Large, Complex Projects
Specifics of Managing Large, Complex ProjectsSpecifics of Managing Large, Complex Projects
Specifics of Managing Large, Complex Projects
 
IMVU: “But Does It Scale?” from Startup Lessons Learned Conference
IMVU: “But Does It Scale?” from Startup Lessons Learned ConferenceIMVU: “But Does It Scale?” from Startup Lessons Learned Conference
IMVU: “But Does It Scale?” from Startup Lessons Learned Conference
 
Developing a Scalable and Long-Lived System at METRO
Developing a Scalable and Long-Lived System at METRODeveloping a Scalable and Long-Lived System at METRO
Developing a Scalable and Long-Lived System at METRO
 
capital budgeting process investment rules.pptx
capital budgeting process investment rules.pptxcapital budgeting process investment rules.pptx
capital budgeting process investment rules.pptx
 
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
Gil Irizarry, Constant Contact presentation from MassTLC seminar on taking yo...
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
Corporate Finance.ppt
Corporate Finance.pptCorporate Finance.ppt
Corporate Finance.ppt
 
Going agile with scrum
Going agile with scrumGoing agile with scrum
Going agile with scrum
 
Running successful agile projects
Running successful agile projectsRunning successful agile projects
Running successful agile projects
 

Mehr von VersionOne

AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2VersionOne
 
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1VersionOne
 
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...VersionOne
 
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...VersionOne
 
12 Benefits of Adopting Agile
12 Benefits of Adopting Agile 12 Benefits of Adopting Agile
12 Benefits of Adopting Agile VersionOne
 
What's the State of Agile Software Development?
What's the State of Agile Software Development?What's the State of Agile Software Development?
What's the State of Agile Software Development?VersionOne
 
AgileLIVE: Continuous Product Learning - Part 2
AgileLIVE: Continuous Product Learning - Part 2AgileLIVE: Continuous Product Learning - Part 2
AgileLIVE: Continuous Product Learning - Part 2VersionOne
 
AgileLIVE: Continuous Product Learning - Part 1
AgileLIVE: Continuous Product Learning - Part 1AgileLIVE: Continuous Product Learning - Part 1
AgileLIVE: Continuous Product Learning - Part 1VersionOne
 
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...VersionOne
 
Why VersionOne is Wicked Awesome
Why VersionOne is Wicked AwesomeWhy VersionOne is Wicked Awesome
Why VersionOne is Wicked AwesomeVersionOne
 
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...VersionOne
 
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2VersionOne
 
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1VersionOne
 
AgileLIVE Webinar: Adding UX Value to Agile Development
AgileLIVE Webinar: Adding UX Value to Agile DevelopmentAgileLIVE Webinar: Adding UX Value to Agile Development
AgileLIVE Webinar: Adding UX Value to Agile DevelopmentVersionOne
 
AgileLIVE Webinar: Agile Leadership for the Enterprise
AgileLIVE Webinar: Agile Leadership for the EnterpriseAgileLIVE Webinar: Agile Leadership for the Enterprise
AgileLIVE Webinar: Agile Leadership for the EnterpriseVersionOne
 
AgileLIVE - Collaboration that Scales - Part 2
AgileLIVE - Collaboration that Scales - Part 2AgileLIVE - Collaboration that Scales - Part 2
AgileLIVE - Collaboration that Scales - Part 2VersionOne
 
AgileLIVE - Collaboration that Scales - Part 1
AgileLIVE - Collaboration that Scales - Part 1AgileLIVE - Collaboration that Scales - Part 1
AgileLIVE - Collaboration that Scales - Part 1VersionOne
 
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”VersionOne
 
Agile and Auditors
Agile and AuditorsAgile and Auditors
Agile and AuditorsVersionOne
 
AgileLIVE Part II
AgileLIVE Part IIAgileLIVE Part II
AgileLIVE Part IIVersionOne
 

Mehr von VersionOne (20)

AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 2
 
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
AgileLIVE Webinar: Build a DevOps Culture & Infrastructure for Success Part 1
 
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
 
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
AgileLIVE: Scaling Agile Faster, Easier, Smarter with SAFe and VersionOne - P...
 
12 Benefits of Adopting Agile
12 Benefits of Adopting Agile 12 Benefits of Adopting Agile
12 Benefits of Adopting Agile
 
What's the State of Agile Software Development?
What's the State of Agile Software Development?What's the State of Agile Software Development?
What's the State of Agile Software Development?
 
AgileLIVE: Continuous Product Learning - Part 2
AgileLIVE: Continuous Product Learning - Part 2AgileLIVE: Continuous Product Learning - Part 2
AgileLIVE: Continuous Product Learning - Part 2
 
AgileLIVE: Continuous Product Learning - Part 1
AgileLIVE: Continuous Product Learning - Part 1AgileLIVE: Continuous Product Learning - Part 1
AgileLIVE: Continuous Product Learning - Part 1
 
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...
VersionOne Gartner PPM Presentation 2014: Journey to Value - The PPM/Agile In...
 
Why VersionOne is Wicked Awesome
Why VersionOne is Wicked AwesomeWhy VersionOne is Wicked Awesome
Why VersionOne is Wicked Awesome
 
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...
AgileLIVE™ Webinar Series "Agile Success = Team Success: Tuning the Agile Tea...
 
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 2
 
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1
AgileLIVE: Scaling Agile to the Program & Portfolio Levels - Part 1
 
AgileLIVE Webinar: Adding UX Value to Agile Development
AgileLIVE Webinar: Adding UX Value to Agile DevelopmentAgileLIVE Webinar: Adding UX Value to Agile Development
AgileLIVE Webinar: Adding UX Value to Agile Development
 
AgileLIVE Webinar: Agile Leadership for the Enterprise
AgileLIVE Webinar: Agile Leadership for the EnterpriseAgileLIVE Webinar: Agile Leadership for the Enterprise
AgileLIVE Webinar: Agile Leadership for the Enterprise
 
AgileLIVE - Collaboration that Scales - Part 2
AgileLIVE - Collaboration that Scales - Part 2AgileLIVE - Collaboration that Scales - Part 2
AgileLIVE - Collaboration that Scales - Part 2
 
AgileLIVE - Collaboration that Scales - Part 1
AgileLIVE - Collaboration that Scales - Part 1AgileLIVE - Collaboration that Scales - Part 1
AgileLIVE - Collaboration that Scales - Part 1
 
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
 
Agile and Auditors
Agile and AuditorsAgile and Auditors
Agile and Auditors
 
AgileLIVE Part II
AgileLIVE Part IIAgileLIVE Part II
AgileLIVE Part II
 

Kürzlich hochgeladen

Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...
Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...
Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...ssifa0344
 
20240429 Calibre April 2024 Investor Presentation.pdf
20240429 Calibre April 2024 Investor Presentation.pdf20240429 Calibre April 2024 Investor Presentation.pdf
20240429 Calibre April 2024 Investor Presentation.pdfAdnet Communications
 
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...Call Girls in Nagpur High Profile
 
Log your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignLog your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignHenry Tapper
 
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...ssifa0344
 
Andheri Call Girls In 9825968104 Mumbai Hot Models
Andheri Call Girls In 9825968104 Mumbai Hot ModelsAndheri Call Girls In 9825968104 Mumbai Hot Models
Andheri Call Girls In 9825968104 Mumbai Hot Modelshematsharma006
 
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service Nashik
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service NashikHigh Class Call Girls Nashik Maya 7001305949 Independent Escort Service Nashik
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Dividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxDividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxanshikagoel52
 
The Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfThe Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfGale Pooley
 
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home Delivery
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home DeliveryPooja 9892124323 : Call Girl in Juhu Escorts Service Free Home Delivery
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home DeliveryPooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceanilsa9823
 
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779Best VIP Call Girls Noida Sector 18 Call Me: 8448380779
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779Delhi Call girls
 
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
The Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfThe Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfGale Pooley
 
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsHigh Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...shivangimorya083
 
Q3 2024 Earnings Conference Call and Webcast Slides
Q3 2024 Earnings Conference Call and Webcast SlidesQ3 2024 Earnings Conference Call and Webcast Slides
Q3 2024 Earnings Conference Call and Webcast SlidesMarketing847413
 

Kürzlich hochgeladen (20)

Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...
Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...
Solution Manual for Financial Accounting, 11th Edition by Robert Libby, Patri...
 
20240429 Calibre April 2024 Investor Presentation.pdf
20240429 Calibre April 2024 Investor Presentation.pdf20240429 Calibre April 2024 Investor Presentation.pdf
20240429 Calibre April 2024 Investor Presentation.pdf
 
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
VVIP Pune Call Girls Katraj (7001035870) Pune Escorts Nearby with Complete Sa...
 
Log your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaignLog your LOA pain with Pension Lab's brilliant campaign
Log your LOA pain with Pension Lab's brilliant campaign
 
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...
TEST BANK For Corporate Finance, 13th Edition By Stephen Ross, Randolph Weste...
 
Commercial Bank Economic Capsule - April 2024
Commercial Bank Economic Capsule - April 2024Commercial Bank Economic Capsule - April 2024
Commercial Bank Economic Capsule - April 2024
 
Andheri Call Girls In 9825968104 Mumbai Hot Models
Andheri Call Girls In 9825968104 Mumbai Hot ModelsAndheri Call Girls In 9825968104 Mumbai Hot Models
Andheri Call Girls In 9825968104 Mumbai Hot Models
 
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(DIYA) Bhumkar Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service Nashik
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service NashikHigh Class Call Girls Nashik Maya 7001305949 Independent Escort Service Nashik
High Class Call Girls Nashik Maya 7001305949 Independent Escort Service Nashik
 
Dividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptxDividend Policy and Dividend Decision Theories.pptx
Dividend Policy and Dividend Decision Theories.pptx
 
The Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdfThe Economic History of the U.S. Lecture 18.pdf
The Economic History of the U.S. Lecture 18.pdf
 
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home Delivery
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home DeliveryPooja 9892124323 : Call Girl in Juhu Escorts Service Free Home Delivery
Pooja 9892124323 : Call Girl in Juhu Escorts Service Free Home Delivery
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best sexual service
 
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779Best VIP Call Girls Noida Sector 18 Call Me: 8448380779
Best VIP Call Girls Noida Sector 18 Call Me: 8448380779
 
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Maya Call 7001035870 Meet With Nagpur Escorts
 
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANIKA) Budhwar Peth Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
The Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdfThe Economic History of the U.S. Lecture 22.pdf
The Economic History of the U.S. Lecture 22.pdf
 
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsHigh Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
High Class Call Girls Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...
Russian Call Girls In Gtb Nagar (Delhi) 9711199012 💋✔💕😘 Naughty Call Girls Se...
 
Q3 2024 Earnings Conference Call and Webcast Slides
Q3 2024 Earnings Conference Call and Webcast SlidesQ3 2024 Earnings Conference Call and Webcast Slides
Q3 2024 Earnings Conference Call and Webcast Slides
 

Managing Technical Debt

  • 1. © 2011 VersionOne 1 Managing Technical Debt
  • 2. © 2011 VersionOne 2 Let’s Talk
  • 3. © 2011 VersionOne 3 What is Technical Debt • Design Compromises • Choosing to accept something as “done” before its time
  • 4. © 2011 VersionOne 4 Technical debt is not always represented by Defects public void populateList(String food) { Food SelectedFood = new Food(); if(food.equalsIgnoreCase("vegetable")) { SelectedFood = new Vegetables(); } else if(food.contains("Legume")) { SelectedFood = new Legume(); } list.setAdapter(mSchedule); }
  • 5. © 2011 VersionOne 5 But it usually results in them
  • 6. © 2011 VersionOne 6 Is technical debt always bad? • Just as in finance, sometimes taking on a certain level of debt can be considered an investment. – This needs to be a decision that is made proactively, not reactively
  • 7. © 2011 VersionOne 7 Is a debt free project even possible? • Mentality of Sufficiency – Perfect is the natural enemy of Good
  • 8. © 2011 VersionOne 8 When might debt be ok? • New architecture – Perhaps we want to do our migration to the new architecture one step at a time. Until we have completed the migration we are choosing debt • First to Market – Sometimes, the monetary effect of being first to market is worth incurring some debt
  • 9. © 2011 VersionOne 9 Some common ways to incur debt • Time pressure – We don’t have enough time to finish, unless we cut some corners • Competitive pressure – If we can at least show this feature, we will beat the competitor to market
  • 10. © 2011 VersionOne 10 How might we avoid taking on too much debt?
  • 11. © 2011 VersionOne 11 Test Driven Development
  • 12. © 2011 VersionOne 12 Acknowledging the interest rate • There is a cost to waiting • Understand what that cost is and call it out • Remember that interest compounds
  • 13. © 2011 VersionOne 13 Paying off inherited debt (legacy code) • Start small, creating tests around any work we do within the legacy code base • We own this debt just as much any debt we choose to take on.
  • 14. © 2011 VersionOne 14 Refactoring – paying a little at a time • All debt has a minimum payment, or “debt service” • We can pay our debt service through improving the design whenever we are in our code, without changing the behavior – Find a place that could use some improvement – Wrap the change in tests – Make the change – Run the tests • Its ok to pay a little extra, but don’t go overboard
  • 15. © 2011 VersionOne 15 Some strategies for spending within your means • Keep your stories small • Only sign up for what you can comfortably accomplish • Stick to your guns, only agree to debt that you can be comforatable with
  • 16. © 2011 VersionOne 16 Don’t take on more than you can pay
  • 17. © 2011 VersionOne 17 Limited WIP and Kanban • By constraining how much work we take on at one time we can focus on quality • Pull oriented processes mean less incentive to “cram something in”
  • 18. © 2011 VersionOne 18 Iterative Development and Velocity • As we identify a cadence and velocity, we see how much we really can sign on for • Tight feedback loops give us room to inspect and adapt
  • 19. © 2011 VersionOne 19 Pay the Biggest interest items first • Make debt service on all debt • As you fix the more expensive items, you are freeing up resources for the less expensive items later
  • 20. © 2011 VersionOne 20 Debt Restructuring • Sometimes, but *very* seldom, we have to declare bankruptcy – Major Rearchitecture • A better approach is to create a restructuring plan • A set of payments (backlog items or defects) that are scheduled at regular intervals, and with higher priority or Class of Service than new features
  • 21. © 2011 VersionOne 21 Alternative ways to consider debt • Choose a metaphor that resonates • Not everyone is comfortable with the money theme
  • 22. © 2011 VersionOne 22 Speedboat • Our product is a speedboat, heading for an exotic harbor • Our debt is a set of anchors – Each anchor has a weight associated with the amount of work to be done – Each anchor is a different depth, loosely analogous to how long it will take to pull the anchor up
  • 23. © 2011 VersionOne 23 Some basic tips
  • 24. © 2011 VersionOne 24 Recognize your debt • Don’t sweep it under the rug • “It goes without saying” doesn’t
  • 25. © 2011 VersionOne 25 “Borrow” only when absolutely necessary • Don’t let It become a habit • By thinking of it as a necessary evil, we can make it something that is an exception instead of a rule
  • 26. © 2011 VersionOne 26 Track debt • Note the “interest rate” • Calculate the costs at periodic intervals
  • 27. © 2011 VersionOne 27 Plan to pay your debt, just like you plan for new features
  • 28. © 2011 VersionOne 28 Don’t beat yourself up • We all borrow • Sometimes we let our borrowing get away from us • Recriminations do NOTHING to get the debt paid off
  • 29. © 2011 VersionOne 29 Remember, you can pay me now, or you can pay me later…