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 DeriAgileSparks
 
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 debtFadi 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

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Nidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, TipsNidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, Tips
vrstrong314
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 

Recently uploaded (20)

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Nidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, TipsNidhi Software Price. Fact , Costs, Tips
Nidhi Software Price. Fact , Costs, Tips
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 

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