SlideShare a Scribd company logo
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
The mythical technical debt
Brooke, please, forgive me
Roberto.Bettazzoni@agile42.com
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Agenda
● What is technical debt?
● Why does tech debt matter?
● Why can technical debt be a threat and an
opportunity?
● How turn technical debt into an opportunity?
● How to deal with technical debt?
● Q&A
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
“Shipping first-time code is like going into debt.
A little debt speeds development so long as it is paid back
promptly with refactoring.
The danger occurs when the debt is not repaid."
Ward Cunningham, OOPSLA 1992
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
“In software-intensive systems, technical debt is a collection of design
or implementation constructs that are expedient in the short term, but
set up a technical context that can make future changes more costly or
impossible. Technical debt presents an actual or contingent liability
whose impact is limited to internal system qualities, primarily
maintainability and evolvability.”
“Managing technical debt in software engineering” Dagstuhl Seminar 16162 - 2016
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
Technical debt is the implied cost of additional rework caused
by choosing an easy (limited) solution now instead of using a
better approach that would take longer.
https://en.wikipedia.org/wiki/Technical_debt (2016)
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
Technical debt describes the consequences of software
development actions that intentionally or unintentionally
prioritize client value and/or project constraints such as
delivery deadlines, over more technical implementation, and
design considerations.
“Measuring And Managing Technical Debt” - Forbes, Aug 2022
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
Tech debt is the off-balance-sheet accumulation of all the
technology work a company needs to do in the future.
Tech debt: Reclaiming tech equity - McKinsey Digital, Oct 2020
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is NOT technical debt?
● Bad code, bugs
● Ignorance, lack of skills
● Operating costs, maintenance, life cycle, amortization plan
● Low-quality services
● Cancel or defer the building of a feature
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
https://martinfowler.com/bliki/TechnicalDebtQuadrant.html
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
What is technical debt?
● Intentional (deliberate)
○ short-term debt - e.g. credit card
○ long-term debt - e.g. house mortgage
● Unintentional (inadvertent)
○ Accidental
○ Inevitable
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Why does tech debt matter?
The Developer Coefficient, Stripe 2018
Gartner predicts, “Through 2023, I&O leaders who actively
manage and reduce technical debt will achieve at least 50%
faster service delivery times to the business.”
Multiple studies estimate the average organization wastes
23%-42% of their development time on technical debt.
A McKinsey study describes one company that estimates the cost of their tech
debt as anywhere between 15%-60% of every dollar spent on IT, which is not
accounted for in their business cases.
Source: Measuring And Managing Technical Debt , Forbes 2022
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Why does tech debt matter?
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Why do agility and tech debt go hand in hand?
By design
● Agility to grasp market opportunities by taking on some technical debt.
● Short-cuts, easy/limited solution to experiment with design.
● By shipping faster we get customer feedback early and can inspect & adapt
accordingly.
● VUCA - Volatility, Uncertainty, Complexity, Ambiguity
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Technical debt as a threat vs. opportunity
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
How turn technical debt into an opportunity?
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Information to visualize tech debt
Origin (Why?)
Dimension (Linear/Complex)
Cost of delay (Risk/urgency)
Location (Where?)
Dependencies (Causes/effects)
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Origin of tech debt
● Business or development or technological choices or shortcuts
● Lack of time or resources or knowledge
● Short-term vision for the architecture/design
● Neglecting maintenance
● Changes in standards or regulations.
● New technologies, new environments, new markets.
● Company mergers or acquisitions that integrate external systems.
Intentional - Unintentional - Ineluctable - f(time)
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Information on tech debt
Tech debt dimension:
● estimation of the cost/time/complexity needed to pay the Tech Debt now.
● The unit of measure could be the same as the team uses to estimate the user
stories (or tasks)
The profile of the cost of delay is the major increment factor in the tech debt, so it is
essential.
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Information on tech debt
The location could be expressed in a relative way to the type of tech debt.
● business / functionality (i.e. Apple Pay service customised for store X )
● architectural / design (i.e. duplicated DB tables)
● code / data / frameworks / tools
…
List of dependencies (also between different tech debts).
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Share all your tech debt
● Map your deliberate tech debt on a backlog or board
● Order by urgency / complexity / risk / cost of delay
● Spot the unintentional tech debt and add it to the map
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Spot the unintentional tech debt
● Ask the team!
○ Area with increasing cost of support / maintenance
○ Unplanned work rising
○ Difficult estimation or forecast (low accuracy)
○ Bug / rework frequency
○ Static code analysis gives unexpected results
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Donʼt forget the inevitable
Estimate the lifecycle and the cost of the worst-case scenario
Define an alarm as a “leading indicator”
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
How to deal with tech debt
Giving an order backlog/map/board of your tech debt
Pay it:
● Have a tech debt refactoring plan
○ Fixed time
○ Planned
○ Increasing urgency / Triage
● pay it on event (ex: at the first bug)
Monitoring the effects of the payment
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
How to deal with the future tech debt
Check the estimation of your tech debt regularly and verify the actual costs
Monitoring your development process
(ex: adding people should reduce production in a typical way)
Set some alarms in your development process to have "leading indicators"
Make a safe-to-fail experiment to speed up production increasing the tech debt
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Takeaways
Technical debt is practically inevitable in software/digital product development
Technical debt can become a threat when it is out of control
Technical debt is an opportunity for business agility
Having your technical debt under control allows you to speed up when it's needed
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
References
● Introduction to the Technical Debt Concept Agile Alliance, 2016
● The Agile Alliance Debt Analysis Model Agile Alliance, 2016
● The Developer Coefficient - Software engineering efficiency and its $3 trillion impact … Stripe, 2018
● Business costs of technical debt CodeScene, 2019
● How to Assess Infrastructure Technical Debt to Prioritize Legacy Modernization Investments Gartner, 2020
● Demystifying digital dark matter: A new standard to tame technical debt McKinsey Digital, 2022
● Measuring And Managing Technical Debt Forbes, 2022
● The Real Cost of Technical Debt J.P.Morgan, 2022
● Breaking technical debtʼs vicious cycle to modernize your business McKinsey Digital, 2023
● Technical debt: How to recognize, understand + manage tech debt Pluralsight blog, 2024
www.agile42.com | All rights reserved. Copyright © 2007 - 2024
Questions

More Related Content

Similar to The mythical technical debt. (Brooke, please, forgive me)

Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran DeriManaging Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
AgileSparks
 
Future Role of the Architect
Future Role of the ArchitectFuture Role of the Architect
Future Role of the Architect
Riccardo Bennett-Lovsey
 
calculate-business-costs-of-technical-debt.pdf
calculate-business-costs-of-technical-debt.pdfcalculate-business-costs-of-technical-debt.pdf
calculate-business-costs-of-technical-debt.pdf
Nicanor Sachahuaman
 
5 Ways to Lower Technical Debt Through Modernization.pptx
5 Ways to Lower Technical Debt Through Modernization.pptx5 Ways to Lower Technical Debt Through Modernization.pptx
5 Ways to Lower Technical Debt Through Modernization.pptx
reachbyteridge
 
What scrum masters and product owners should know about software quality and ...
What scrum masters and product owners should know about software quality and ...What scrum masters and product owners should know about software quality and ...
What scrum masters and product owners should know about software quality and ...
STX Next
 
How To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical DebtHow To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical Debt
Abdul Khan
 
Technical Debt: A Management Problem That Requires a Management Solution
Technical Debt: A Management Problem That Requires a Management SolutionTechnical Debt: A Management Problem That Requires a Management Solution
Technical Debt: A Management Problem That Requires a Management Solution
Scott W. Ambler
 
Prioritizing technical debt using bcg matrix in agile engagement
Prioritizing technical debt using bcg matrix in agile engagementPrioritizing technical debt using bcg matrix in agile engagement
Prioritizing technical debt using bcg matrix in agile engagement
sandeep sapre
 
Technical debt in cyber ark [agile practitioners-2015]
Technical debt in cyber ark [agile practitioners-2015]Technical debt in cyber ark [agile practitioners-2015]
Technical debt in cyber ark [agile practitioners-2015]
AgilePractitionersIL
 
Crushed by technical debt
Crushed by technical debtCrushed by technical debt
Crushed by technical debt
Scott W. Ambler
 
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docxASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
edmondpburgess27164
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debt
Fadi Stephan
 
AEC 2022 Trends – Top 10 Challenges and Opportunities
AEC 2022 Trends – Top 10 Challenges and OpportunitiesAEC 2022 Trends – Top 10 Challenges and Opportunities
AEC 2022 Trends – Top 10 Challenges and Opportunities
Indovance Inc
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
Atish Narlawar
 
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptxvFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
LibbySchulze
 
Managing User Experience During Cloud Migrations
Managing User Experience During Cloud MigrationsManaging User Experience During Cloud Migrations
Managing User Experience During Cloud Migrations
eG Innovations
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
ThousandEyes
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
ThousandEyes
 
Domain-level Technical Debt - "Domain Debt"
Domain-level Technical Debt - "Domain Debt"Domain-level Technical Debt - "Domain Debt"
Domain-level Technical Debt - "Domain Debt"
QAware GmbH
 
Technical debt
Technical debtTechnical debt
Technical debt
Woody Pewitt
 

Similar to The mythical technical debt. (Brooke, please, forgive me) (20)

Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran DeriManaging Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
Managing Technical Debt and Professionalism @ CyberArk - Noam Zweig & Ran Deri
 
Future Role of the Architect
Future Role of the ArchitectFuture Role of the Architect
Future Role of the Architect
 
calculate-business-costs-of-technical-debt.pdf
calculate-business-costs-of-technical-debt.pdfcalculate-business-costs-of-technical-debt.pdf
calculate-business-costs-of-technical-debt.pdf
 
5 Ways to Lower Technical Debt Through Modernization.pptx
5 Ways to Lower Technical Debt Through Modernization.pptx5 Ways to Lower Technical Debt Through Modernization.pptx
5 Ways to Lower Technical Debt Through Modernization.pptx
 
What scrum masters and product owners should know about software quality and ...
What scrum masters and product owners should know about software quality and ...What scrum masters and product owners should know about software quality and ...
What scrum masters and product owners should know about software quality and ...
 
How To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical DebtHow To Manage And Reduce Development Techical Debt
How To Manage And Reduce Development Techical Debt
 
Technical Debt: A Management Problem That Requires a Management Solution
Technical Debt: A Management Problem That Requires a Management SolutionTechnical Debt: A Management Problem That Requires a Management Solution
Technical Debt: A Management Problem That Requires a Management Solution
 
Prioritizing technical debt using bcg matrix in agile engagement
Prioritizing technical debt using bcg matrix in agile engagementPrioritizing technical debt using bcg matrix in agile engagement
Prioritizing technical debt using bcg matrix in agile engagement
 
Technical debt in cyber ark [agile practitioners-2015]
Technical debt in cyber ark [agile practitioners-2015]Technical debt in cyber ark [agile practitioners-2015]
Technical debt in cyber ark [agile practitioners-2015]
 
Crushed by technical debt
Crushed by technical debtCrushed by technical debt
Crushed by technical debt
 
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docxASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
ASSIGNMENT  From Chapter 3, pages 89-90, WEB-BASED CASE.  Rea.docx
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debt
 
AEC 2022 Trends – Top 10 Challenges and Opportunities
AEC 2022 Trends – Top 10 Challenges and OpportunitiesAEC 2022 Trends – Top 10 Challenges and Opportunities
AEC 2022 Trends – Top 10 Challenges and Opportunities
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptxvFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
vFunction Konveyor Meetup - Why App Modernization Projects Fail - Aug 2022.pptx
 
Managing User Experience During Cloud Migrations
Managing User Experience During Cloud MigrationsManaging User Experience During Cloud Migrations
Managing User Experience During Cloud Migrations
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
 
Getting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of ConceptsGetting Started with ThousandEyes Proof of Concepts
Getting Started with ThousandEyes Proof of Concepts
 
Domain-level Technical Debt - "Domain Debt"
Domain-level Technical Debt - "Domain Debt"Domain-level Technical Debt - "Domain Debt"
Domain-level Technical Debt - "Domain Debt"
 
Technical debt
Technical debtTechnical debt
Technical debt
 

More from Roberto Bettazzoni

Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup RemotoGiornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Roberto Bettazzoni
 
Complexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test typesComplexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test types
Roberto Bettazzoni
 
Why you need to change your way of working
Why you need to change your way of workingWhy you need to change your way of working
Why you need to change your way of working
Roberto Bettazzoni
 
TDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding DojoTDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding Dojo
Roberto Bettazzoni
 
Presentation of agile engineering practices
Presentation of agile engineering practicesPresentation of agile engineering practices
Presentation of agile engineering practices
Roberto Bettazzoni
 
Unit test in a nutshell
Unit test in a nutshellUnit test in a nutshell
Unit test in a nutshell
Roberto Bettazzoni
 
Presentation TDD in Python
Presentation TDD in PythonPresentation TDD in Python
Presentation TDD in Python
Roberto Bettazzoni
 
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano) Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Roberto Bettazzoni
 
Pair programming and pair training
Pair programming and pair trainingPair programming and pair training
Pair programming and pair training
Roberto Bettazzoni
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme Programming
Roberto Bettazzoni
 
Agile e Open Source
Agile e Open SourceAgile e Open Source
Agile e Open Source
Roberto Bettazzoni
 
Esempio di code kata
Esempio di code kataEsempio di code kata
Esempio di code kata
Roberto Bettazzoni
 
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Roberto Bettazzoni
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)
Roberto Bettazzoni
 
Scrum in a nutshell
Scrum in a nutshellScrum in a nutshell
Scrum in a nutshell
Roberto Bettazzoni
 
The BDD live show (ITA)
The BDD live show (ITA)The BDD live show (ITA)
The BDD live show (ITA)
Roberto Bettazzoni
 
Programmazione android per esseri umani
Programmazione android per esseri umaniProgrammazione android per esseri umani
Programmazione android per esseri umani
Roberto Bettazzoni
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and Kanban
Roberto Bettazzoni
 

More from Roberto Bettazzoni (18)

Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup RemotoGiornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
Giornat Mondiale della Retrospettiva 2020 - Riassunto Meetup Remoto
 
Complexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test typesComplexity indicators: estimation precision and test types
Complexity indicators: estimation precision and test types
 
Why you need to change your way of working
Why you need to change your way of workingWhy you need to change your way of working
Why you need to change your way of working
 
TDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding DojoTDD Dojo - Test Driven Development Coding Dojo
TDD Dojo - Test Driven Development Coding Dojo
 
Presentation of agile engineering practices
Presentation of agile engineering practicesPresentation of agile engineering practices
Presentation of agile engineering practices
 
Unit test in a nutshell
Unit test in a nutshellUnit test in a nutshell
Unit test in a nutshell
 
Presentation TDD in Python
Presentation TDD in PythonPresentation TDD in Python
Presentation TDD in Python
 
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano) Cynefin Lego Game Agenda (versione 2.0 in Italiano)
Cynefin Lego Game Agenda (versione 2.0 in Italiano)
 
Pair programming and pair training
Pair programming and pair trainingPair programming and pair training
Pair programming and pair training
 
Presentazione eXtreme Programming
Presentazione eXtreme ProgrammingPresentazione eXtreme Programming
Presentazione eXtreme Programming
 
Agile e Open Source
Agile e Open SourceAgile e Open Source
Agile e Open Source
 
Esempio di code kata
Esempio di code kataEsempio di code kata
Esempio di code kata
 
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)
 
Scrum in a nutshell
Scrum in a nutshellScrum in a nutshell
Scrum in a nutshell
 
The BDD live show (ITA)
The BDD live show (ITA)The BDD live show (ITA)
The BDD live show (ITA)
 
Programmazione android per esseri umani
Programmazione android per esseri umaniProgrammazione android per esseri umani
Programmazione android per esseri umani
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and Kanban
 

Recently uploaded

A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio, Inc.
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
The Third Creative Media
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
safelyiotech
 
Manyata Tech Park Bangalore_ Infrastructure, Facilities and More
Manyata Tech Park Bangalore_ Infrastructure, Facilities and MoreManyata Tech Park Bangalore_ Infrastructure, Facilities and More
Manyata Tech Park Bangalore_ Infrastructure, Facilities and More
narinav14
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
kalichargn70th171
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
TMU毕业证书精仿办理
TMU毕业证书精仿办理TMU毕业证书精仿办理
TMU毕业证书精仿办理
aeeva
 
Superpower Your Apache Kafka Applications Development with Complementary Open...
Superpower Your Apache Kafka Applications Development with Complementary Open...Superpower Your Apache Kafka Applications Development with Complementary Open...
Superpower Your Apache Kafka Applications Development with Complementary Open...
Paul Brebner
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Peter Caitens
 
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Paul Brebner
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
widenerjobeyrl638
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
Alberto Brandolini
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
ShulagnaSarkar2
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
kgyxske
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
sandeepmenon62
 

Recently uploaded (20)

A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
 
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
Unlock the Secrets to Effortless Video Creation with Invideo: Your Ultimate G...
 
bgiolcb
bgiolcbbgiolcb
bgiolcb
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
 
Manyata Tech Park Bangalore_ Infrastructure, Facilities and More
Manyata Tech Park Bangalore_ Infrastructure, Facilities and MoreManyata Tech Park Bangalore_ Infrastructure, Facilities and More
Manyata Tech Park Bangalore_ Infrastructure, Facilities and More
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
The Power of Visual Regression Testing_ Why It Is Critical for Enterprise App...
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
TMU毕业证书精仿办理
TMU毕业证书精仿办理TMU毕业证书精仿办理
TMU毕业证书精仿办理
 
Superpower Your Apache Kafka Applications Development with Complementary Open...
Superpower Your Apache Kafka Applications Development with Complementary Open...Superpower Your Apache Kafka Applications Development with Complementary Open...
Superpower Your Apache Kafka Applications Development with Complementary Open...
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
 
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
 

The mythical technical debt. (Brooke, please, forgive me)

  • 1. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 The mythical technical debt Brooke, please, forgive me Roberto.Bettazzoni@agile42.com
  • 2. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Agenda ● What is technical debt? ● Why does tech debt matter? ● Why can technical debt be a threat and an opportunity? ● How turn technical debt into an opportunity? ● How to deal with technical debt? ● Q&A
  • 3. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? “Shipping first-time code is like going into debt. A little debt speeds development so long as it is paid back promptly with refactoring. The danger occurs when the debt is not repaid." Ward Cunningham, OOPSLA 1992
  • 4. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? “In software-intensive systems, technical debt is a collection of design or implementation constructs that are expedient in the short term, but set up a technical context that can make future changes more costly or impossible. Technical debt presents an actual or contingent liability whose impact is limited to internal system qualities, primarily maintainability and evolvability.” “Managing technical debt in software engineering” Dagstuhl Seminar 16162 - 2016
  • 5. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? Technical debt is the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer. https://en.wikipedia.org/wiki/Technical_debt (2016)
  • 6. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? Technical debt describes the consequences of software development actions that intentionally or unintentionally prioritize client value and/or project constraints such as delivery deadlines, over more technical implementation, and design considerations. “Measuring And Managing Technical Debt” - Forbes, Aug 2022
  • 7. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? Tech debt is the off-balance-sheet accumulation of all the technology work a company needs to do in the future. Tech debt: Reclaiming tech equity - McKinsey Digital, Oct 2020
  • 8. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is NOT technical debt? ● Bad code, bugs ● Ignorance, lack of skills ● Operating costs, maintenance, life cycle, amortization plan ● Low-quality services ● Cancel or defer the building of a feature
  • 9. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? https://martinfowler.com/bliki/TechnicalDebtQuadrant.html
  • 10. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 What is technical debt? ● Intentional (deliberate) ○ short-term debt - e.g. credit card ○ long-term debt - e.g. house mortgage ● Unintentional (inadvertent) ○ Accidental ○ Inevitable
  • 11. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Why does tech debt matter? The Developer Coefficient, Stripe 2018 Gartner predicts, “Through 2023, I&O leaders who actively manage and reduce technical debt will achieve at least 50% faster service delivery times to the business.” Multiple studies estimate the average organization wastes 23%-42% of their development time on technical debt. A McKinsey study describes one company that estimates the cost of their tech debt as anywhere between 15%-60% of every dollar spent on IT, which is not accounted for in their business cases. Source: Measuring And Managing Technical Debt , Forbes 2022
  • 12. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Why does tech debt matter?
  • 13. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Why do agility and tech debt go hand in hand? By design ● Agility to grasp market opportunities by taking on some technical debt. ● Short-cuts, easy/limited solution to experiment with design. ● By shipping faster we get customer feedback early and can inspect & adapt accordingly. ● VUCA - Volatility, Uncertainty, Complexity, Ambiguity
  • 14. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Technical debt as a threat vs. opportunity
  • 15. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 How turn technical debt into an opportunity?
  • 16. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Information to visualize tech debt Origin (Why?) Dimension (Linear/Complex) Cost of delay (Risk/urgency) Location (Where?) Dependencies (Causes/effects)
  • 17. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Origin of tech debt ● Business or development or technological choices or shortcuts ● Lack of time or resources or knowledge ● Short-term vision for the architecture/design ● Neglecting maintenance ● Changes in standards or regulations. ● New technologies, new environments, new markets. ● Company mergers or acquisitions that integrate external systems. Intentional - Unintentional - Ineluctable - f(time)
  • 18. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Information on tech debt Tech debt dimension: ● estimation of the cost/time/complexity needed to pay the Tech Debt now. ● The unit of measure could be the same as the team uses to estimate the user stories (or tasks) The profile of the cost of delay is the major increment factor in the tech debt, so it is essential.
  • 19. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Information on tech debt The location could be expressed in a relative way to the type of tech debt. ● business / functionality (i.e. Apple Pay service customised for store X ) ● architectural / design (i.e. duplicated DB tables) ● code / data / frameworks / tools … List of dependencies (also between different tech debts).
  • 20. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Share all your tech debt ● Map your deliberate tech debt on a backlog or board ● Order by urgency / complexity / risk / cost of delay ● Spot the unintentional tech debt and add it to the map
  • 21. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Spot the unintentional tech debt ● Ask the team! ○ Area with increasing cost of support / maintenance ○ Unplanned work rising ○ Difficult estimation or forecast (low accuracy) ○ Bug / rework frequency ○ Static code analysis gives unexpected results
  • 22. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Donʼt forget the inevitable Estimate the lifecycle and the cost of the worst-case scenario Define an alarm as a “leading indicator”
  • 23. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 How to deal with tech debt Giving an order backlog/map/board of your tech debt Pay it: ● Have a tech debt refactoring plan ○ Fixed time ○ Planned ○ Increasing urgency / Triage ● pay it on event (ex: at the first bug) Monitoring the effects of the payment
  • 24. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 How to deal with the future tech debt Check the estimation of your tech debt regularly and verify the actual costs Monitoring your development process (ex: adding people should reduce production in a typical way) Set some alarms in your development process to have "leading indicators" Make a safe-to-fail experiment to speed up production increasing the tech debt
  • 25. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Takeaways Technical debt is practically inevitable in software/digital product development Technical debt can become a threat when it is out of control Technical debt is an opportunity for business agility Having your technical debt under control allows you to speed up when it's needed
  • 26. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 References ● Introduction to the Technical Debt Concept Agile Alliance, 2016 ● The Agile Alliance Debt Analysis Model Agile Alliance, 2016 ● The Developer Coefficient - Software engineering efficiency and its $3 trillion impact … Stripe, 2018 ● Business costs of technical debt CodeScene, 2019 ● How to Assess Infrastructure Technical Debt to Prioritize Legacy Modernization Investments Gartner, 2020 ● Demystifying digital dark matter: A new standard to tame technical debt McKinsey Digital, 2022 ● Measuring And Managing Technical Debt Forbes, 2022 ● The Real Cost of Technical Debt J.P.Morgan, 2022 ● Breaking technical debtʼs vicious cycle to modernize your business McKinsey Digital, 2023 ● Technical debt: How to recognize, understand + manage tech debt Pluralsight blog, 2024
  • 27. www.agile42.com | All rights reserved. Copyright © 2007 - 2024 Questions