SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
Dan Nicola | Maxcode Florin Cardasim | Endava
Code Debt
Architectural Debt
Test Debt
Knowledge Debt
Technological Debt
Customers are annoyed by bugs or
missing features due to low productivity.
This leads to additional costs for the helpdesk,
which annoys the people there, too.
Increased development time and quality
issues are also a problem for marketing.
Bugs lead to frequent patches,
which annoys the operations team.
Many annoyed parties definitely
don’t make the management happy.
Last but not least also the developers
are suffering. No one wants to deliver
bad work.
“the only one who can ever change this code is Claudiu”
“let’s just copy & paste this code”
“it’s ok for now but we’ll refactor it later!”
“if I touch that code everything will break”
“ToDo/FixMe: this should be fixed before release”
“let’s finish the testing in the next release”
Cover it with tests and then modify it
Making it extensible and then extend it
Make it modular and then rewrite it
e.g. 10% of the available time
Some teams do a purely technical release to improve the
codebase from time to time
This approach is only useful if a list with the really necessary
refactoring already exists
Established best practice to define purely technical work
packages
Technical change to be made
Why this technical change is important for the project
In which part of the code the technical change has to be
performed
Debt repayment
Debt conversion
Just pay the interest
Technical Debt is unavoidable
Technical Debt is not always bad, no need to be (fully) repaid in
every case
We’ve got tools (Sonar, inCode, many others)
Technical Debt is often a cultural issue, not a technical one
Please fill in the evaluation forms

Mais conteúdo relacionado

Mais procurados

Agile Testing Dilemmas
Agile Testing DilemmasAgile Testing Dilemmas
Agile Testing DilemmasAman King
 
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...eazynow
 
The Why and How of Continuous Delivery
The Why and How of Continuous DeliveryThe Why and How of Continuous Delivery
The Why and How of Continuous DeliveryNigel McNie
 
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineeringguest472f47
 
Boost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingBoost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingApplause
 
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...Beyond Technical Debt: Unconventional techniques to uncover technical and soc...
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...Juraj Martinka
 
Scrum in Wonderland
Scrum in WonderlandScrum in Wonderland
Scrum in Wonderlandsjmarsh
 
Agile Software Development for Non-Developers
Agile Software Development for Non-DevelopersAgile Software Development for Non-Developers
Agile Software Development for Non-Developershamvocke
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentZendCon
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical DebtJeremy Horn
 
Bringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsBringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsApplitools
 
Why Do User Research And Usability Testing
Why Do User Research And Usability TestingWhy Do User Research And Usability Testing
Why Do User Research And Usability TestingRobert Stackhouse
 
How selenium can transform your qa career
How selenium can transform your qa careerHow selenium can transform your qa career
How selenium can transform your qa careerShama Ugale
 
One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truthPaul Boocock
 
TLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingAnna Royzman
 
Nikolay Faletskyi - How tester can to survive in lean startup
Nikolay Faletskyi - How tester can to survive in lean startupNikolay Faletskyi - How tester can to survive in lean startup
Nikolay Faletskyi - How tester can to survive in lean startupIevgenii Katsan
 
Agile xp crash_course_2010_05_21
Agile xp crash_course_2010_05_21Agile xp crash_course_2010_05_21
Agile xp crash_course_2010_05_21Balint Erdi
 

Mais procurados (20)

rookie with zero bugs
rookie with zero bugsrookie with zero bugs
rookie with zero bugs
 
Agile Testing Dilemmas
Agile Testing DilemmasAgile Testing Dilemmas
Agile Testing Dilemmas
 
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...
Twiliocon Europe 2013: From PoC to Production, Lessons Learnt, by Erol Ziya &...
 
The Why and How of Continuous Delivery
The Why and How of Continuous DeliveryThe Why and How of Continuous Delivery
The Why and How of Continuous Delivery
 
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
 
Tester vs Developer
Tester vs DeveloperTester vs Developer
Tester vs Developer
 
Boost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingBoost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX Testing
 
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...Beyond Technical Debt: Unconventional techniques to uncover technical and soc...
Beyond Technical Debt: Unconventional techniques to uncover technical and soc...
 
Scrum in Wonderland
Scrum in WonderlandScrum in Wonderland
Scrum in Wonderland
 
Agile Software Development for Non-Developers
Agile Software Development for Non-DevelopersAgile Software Development for Non-Developers
Agile Software Development for Non-Developers
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
Bringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & ApplitoolsBringing Quality Design Systems to Life with Storybook & Applitools
Bringing Quality Design Systems to Life with Storybook & Applitools
 
Why Do User Research And Usability Testing
Why Do User Research And Usability TestingWhy Do User Research And Usability Testing
Why Do User Research And Usability Testing
 
How selenium can transform your qa career
How selenium can transform your qa careerHow selenium can transform your qa career
How selenium can transform your qa career
 
One trunk one pipeline one truth
One trunk one pipeline one truthOne trunk one pipeline one truth
One trunk one pipeline one truth
 
TLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing TestingTLC2018 Shyam Sunder: Legoizing Testing
TLC2018 Shyam Sunder: Legoizing Testing
 
Test pyramid
Test pyramidTest pyramid
Test pyramid
 
Nikolay Faletskyi - How tester can to survive in lean startup
Nikolay Faletskyi - How tester can to survive in lean startupNikolay Faletskyi - How tester can to survive in lean startup
Nikolay Faletskyi - How tester can to survive in lean startup
 
Agile xp crash_course_2010_05_21
Agile xp crash_course_2010_05_21Agile xp crash_course_2010_05_21
Agile xp crash_course_2010_05_21
 

Destaque

Angajatori de Top Iasi - Nov 2013
Angajatori de Top Iasi - Nov 2013Angajatori de Top Iasi - Nov 2013
Angajatori de Top Iasi - Nov 2013Codecamp Romania
 
Iulian dogariu the sad story of the server etc
Iulian dogariu   the sad story of the server etcIulian dogariu   the sad story of the server etc
Iulian dogariu the sad story of the server etcCodecamp Romania
 
Codecamp Iasi 7 mai 2011 Exception tail.com
Codecamp Iasi 7 mai 2011 Exception tail.comCodecamp Iasi 7 mai 2011 Exception tail.com
Codecamp Iasi 7 mai 2011 Exception tail.comCodecamp Romania
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in androidCodecamp Romania
 
Iasi code camp 12 october 2013 play oriented development - leon daniel
Iasi code camp 12 october 2013   play oriented development - leon danielIasi code camp 12 october 2013   play oriented development - leon daniel
Iasi code camp 12 october 2013 play oriented development - leon danielCodecamp Romania
 
Mihai mahulea the zen of test driven development
Mihai mahulea   the zen of test driven developmentMihai mahulea   the zen of test driven development
Mihai mahulea the zen of test driven developmentCodecamp Romania
 
Eugen Constantinescu - Genivi - Codecamp 10 may 2014
Eugen Constantinescu - Genivi - Codecamp 10 may 2014Eugen Constantinescu - Genivi - Codecamp 10 may 2014
Eugen Constantinescu - Genivi - Codecamp 10 may 2014Codecamp Romania
 
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...Codecamp Romania
 
Cristi Ursachi - Xamarin - CodeCamp 10 may 2014
Cristi Ursachi  - Xamarin - CodeCamp 10 may 2014Cristi Ursachi  - Xamarin - CodeCamp 10 may 2014
Cristi Ursachi - Xamarin - CodeCamp 10 may 2014Codecamp Romania
 
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
Code camp iasi   silviu niculita - machine learning for mere mortals with azu...Code camp iasi   silviu niculita - machine learning for mere mortals with azu...
Code camp iasi silviu niculita - machine learning for mere mortals with azu...Codecamp Romania
 
Ana milutinovic quality awareness when practicing agile testing
Ana milutinovic   quality awareness when practicing agile testingAna milutinovic   quality awareness when practicing agile testing
Ana milutinovic quality awareness when practicing agile testingCodecamp Romania
 
Iasi code camp 12 october 2013 an invitation to agile product management - ...
Iasi code camp 12 october 2013   an invitation to agile product management - ...Iasi code camp 12 october 2013   an invitation to agile product management - ...
Iasi code camp 12 october 2013 an invitation to agile product management - ...Codecamp Romania
 
Intro CodeCamp/IASI 16 oct 2010
Intro CodeCamp/IASI 16 oct 2010Intro CodeCamp/IASI 16 oct 2010
Intro CodeCamp/IASI 16 oct 2010Codecamp Romania
 
Iasi code camp 12 october 2013 jax-rs-jee-ecosystem - catalin mihalache
Iasi code camp 12 october 2013   jax-rs-jee-ecosystem - catalin mihalacheIasi code camp 12 october 2013   jax-rs-jee-ecosystem - catalin mihalache
Iasi code camp 12 october 2013 jax-rs-jee-ecosystem - catalin mihalacheCodecamp Romania
 
Iasi code camp 12 october 2013 typescript vs coffeescript - vlad iliescu
Iasi code camp 12 october 2013   typescript vs coffeescript - vlad iliescuIasi code camp 12 october 2013   typescript vs coffeescript - vlad iliescu
Iasi code camp 12 october 2013 typescript vs coffeescript - vlad iliescuCodecamp Romania
 

Destaque (18)

Angajatori de Top Iasi - Nov 2013
Angajatori de Top Iasi - Nov 2013Angajatori de Top Iasi - Nov 2013
Angajatori de Top Iasi - Nov 2013
 
Iulian dogariu the sad story of the server etc
Iulian dogariu   the sad story of the server etcIulian dogariu   the sad story of the server etc
Iulian dogariu the sad story of the server etc
 
Codecamp Iasi 7 mai 2011 Exception tail.com
Codecamp Iasi 7 mai 2011 Exception tail.comCodecamp Iasi 7 mai 2011 Exception tail.com
Codecamp Iasi 7 mai 2011 Exception tail.com
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in android
 
Ccp
CcpCcp
Ccp
 
Iasi code camp 12 october 2013 play oriented development - leon daniel
Iasi code camp 12 october 2013   play oriented development - leon danielIasi code camp 12 october 2013   play oriented development - leon daniel
Iasi code camp 12 october 2013 play oriented development - leon daniel
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
 
Mihai mahulea the zen of test driven development
Mihai mahulea   the zen of test driven developmentMihai mahulea   the zen of test driven development
Mihai mahulea the zen of test driven development
 
Eugen Constantinescu - Genivi - Codecamp 10 may 2014
Eugen Constantinescu - Genivi - Codecamp 10 may 2014Eugen Constantinescu - Genivi - Codecamp 10 may 2014
Eugen Constantinescu - Genivi - Codecamp 10 may 2014
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
 
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
 
Cristi Ursachi - Xamarin - CodeCamp 10 may 2014
Cristi Ursachi  - Xamarin - CodeCamp 10 may 2014Cristi Ursachi  - Xamarin - CodeCamp 10 may 2014
Cristi Ursachi - Xamarin - CodeCamp 10 may 2014
 
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
Code camp iasi   silviu niculita - machine learning for mere mortals with azu...Code camp iasi   silviu niculita - machine learning for mere mortals with azu...
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
 
Ana milutinovic quality awareness when practicing agile testing
Ana milutinovic   quality awareness when practicing agile testingAna milutinovic   quality awareness when practicing agile testing
Ana milutinovic quality awareness when practicing agile testing
 
Iasi code camp 12 october 2013 an invitation to agile product management - ...
Iasi code camp 12 october 2013   an invitation to agile product management - ...Iasi code camp 12 october 2013   an invitation to agile product management - ...
Iasi code camp 12 october 2013 an invitation to agile product management - ...
 
Intro CodeCamp/IASI 16 oct 2010
Intro CodeCamp/IASI 16 oct 2010Intro CodeCamp/IASI 16 oct 2010
Intro CodeCamp/IASI 16 oct 2010
 
Iasi code camp 12 october 2013 jax-rs-jee-ecosystem - catalin mihalache
Iasi code camp 12 october 2013   jax-rs-jee-ecosystem - catalin mihalacheIasi code camp 12 october 2013   jax-rs-jee-ecosystem - catalin mihalache
Iasi code camp 12 october 2013 jax-rs-jee-ecosystem - catalin mihalache
 
Iasi code camp 12 october 2013 typescript vs coffeescript - vlad iliescu
Iasi code camp 12 october 2013   typescript vs coffeescript - vlad iliescuIasi code camp 12 october 2013   typescript vs coffeescript - vlad iliescu
Iasi code camp 12 october 2013 typescript vs coffeescript - vlad iliescu
 

Semelhante a Managing technical debt - Dan Nicola - Florin Cardasim

Technical Debt (Dan Nicola, Florin Cardasim)
Technical Debt (Dan Nicola, Florin Cardasim)Technical Debt (Dan Nicola, Florin Cardasim)
Technical Debt (Dan Nicola, Florin Cardasim)ITCamp
 
Continuous Delivery (The newest)
Continuous Delivery (The newest)Continuous Delivery (The newest)
Continuous Delivery (The newest)Eduards Sizovs
 
Introducing Continuous Integration Using Vsts
Introducing Continuous Integration Using VstsIntroducing Continuous Integration Using Vsts
Introducing Continuous Integration Using VstsMohamed Samy
 
Continuous Delivery
Continuous Delivery Continuous Delivery
Continuous Delivery Dmitry Buzdin
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationBoris Dominic
 
How to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringHow to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringAndré Agostinho
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuousMichele Orselli
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
 
Technical Debt for Product Managers by Square Sr PM
Technical Debt for Product Managers by Square Sr PMTechnical Debt for Product Managers by Square Sr PM
Technical Debt for Product Managers by Square Sr PMProduct School
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debtFadi Stephan
 
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
 
Technical debt management strategies
Technical debt management strategiesTechnical debt management strategies
Technical debt management strategiesRaquel Pau
 
Software Development in 21st Century
Software Development in 21st CenturySoftware Development in 21st Century
Software Development in 21st CenturyHenry Jacob
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
 
Tales of modernizing trello's web stack
Tales of modernizing trello's web stackTales of modernizing trello's web stack
Tales of modernizing trello's web stackVincent Kok
 
“High performance teams" - Marco Cecconi
“High performance teams" - Marco Cecconi“High performance teams" - Marco Cecconi
“High performance teams" - Marco CecconiSpeck&Tech
 

Semelhante a Managing technical debt - Dan Nicola - Florin Cardasim (20)

Technical Debt (Dan Nicola, Florin Cardasim)
Technical Debt (Dan Nicola, Florin Cardasim)Technical Debt (Dan Nicola, Florin Cardasim)
Technical Debt (Dan Nicola, Florin Cardasim)
 
Continuous Delivery (The newest)
Continuous Delivery (The newest)Continuous Delivery (The newest)
Continuous Delivery (The newest)
 
Introducing Continuous Integration Using Vsts
Introducing Continuous Integration Using VstsIntroducing Continuous Integration Using Vsts
Introducing Continuous Integration Using Vsts
 
Continuous Delivery
Continuous Delivery Continuous Delivery
Continuous Delivery
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
How to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software EngineeringHow to justify technical debt mitigations in Software Engineering
How to justify technical debt mitigations in Software Engineering
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuous
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
Technical Debt for Product Managers by Square Sr PM
Technical Debt for Product Managers by Square Sr PMTechnical Debt for Product Managers by Square Sr PM
Technical Debt for Product Managers by Square Sr PM
 
Managing technical debt
Managing technical debtManaging technical debt
Managing technical debt
 
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 ...
 
Technical debt management strategies
Technical debt management strategiesTechnical debt management strategies
Technical debt management strategies
 
Software Development in 21st Century
Software Development in 21st CenturySoftware Development in 21st Century
Software Development in 21st Century
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Tales of modernizing trello's web stack
Tales of modernizing trello's web stackTales of modernizing trello's web stack
Tales of modernizing trello's web stack
 
Eliminate 7 Mudas
Eliminate 7 MudasEliminate 7 Mudas
Eliminate 7 Mudas
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
“High performance teams" - Marco Cecconi
“High performance teams" - Marco Cecconi“High performance teams" - Marco Cecconi
“High performance teams" - Marco Cecconi
 

Mais de Codecamp Romania

Cezar chitac the edge of experience
Cezar chitac   the edge of experienceCezar chitac   the edge of experience
Cezar chitac the edge of experienceCodecamp Romania
 
Business analysis techniques exercise your 6-pack
Business analysis techniques   exercise your 6-packBusiness analysis techniques   exercise your 6-pack
Business analysis techniques exercise your 6-packCodecamp Romania
 
Bpm company code camp - configuration or coding with pega
Bpm company   code camp - configuration or coding with pegaBpm company   code camp - configuration or coding with pega
Bpm company code camp - configuration or coding with pegaCodecamp Romania
 
Andrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseAndrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseCodecamp Romania
 
2015 dan ardelean develop for windows 10
2015 dan ardelean   develop for windows 10 2015 dan ardelean   develop for windows 10
2015 dan ardelean develop for windows 10 Codecamp Romania
 
The case for continuous delivery
The case for continuous deliveryThe case for continuous delivery
The case for continuous deliveryCodecamp Romania
 
Stefan stolniceanu spritekit, 2 d or not 2d
Stefan stolniceanu   spritekit, 2 d or not 2dStefan stolniceanu   spritekit, 2 d or not 2d
Stefan stolniceanu spritekit, 2 d or not 2dCodecamp Romania
 
Sizing epics tales from an agile kingdom
Sizing epics   tales from an agile kingdomSizing epics   tales from an agile kingdom
Sizing epics tales from an agile kingdomCodecamp Romania
 
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...Codecamp Romania
 
Parallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowParallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowCodecamp Romania
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in androidCodecamp Romania
 
Kickstart your own freelancing career
Kickstart your own freelancing careerKickstart your own freelancing career
Kickstart your own freelancing careerCodecamp Romania
 
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu   the soft stuff is the hard stuff. the agile soft skills toolkitIonut grecu   the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkitCodecamp Romania
 
Diana antohi me against myself or how to fail and move forward
Diana antohi   me against myself  or how to fail  and move forwardDiana antohi   me against myself  or how to fail  and move forward
Diana antohi me against myself or how to fail and move forwardCodecamp Romania
 
Codecamp2015 pimp yourpipeline-saade-jens-1.1
Codecamp2015 pimp yourpipeline-saade-jens-1.1Codecamp2015 pimp yourpipeline-saade-jens-1.1
Codecamp2015 pimp yourpipeline-saade-jens-1.1Codecamp Romania
 
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
Code camp iasi   silviu niculita - machine learning for mere mortals with azu...Code camp iasi   silviu niculita - machine learning for mere mortals with azu...
Code camp iasi silviu niculita - machine learning for mere mortals with azu...Codecamp Romania
 

Mais de Codecamp Romania (20)

Cezar chitac the edge of experience
Cezar chitac   the edge of experienceCezar chitac   the edge of experience
Cezar chitac the edge of experience
 
Cloud powered search
Cloud powered searchCloud powered search
Cloud powered search
 
Business analysis techniques exercise your 6-pack
Business analysis techniques   exercise your 6-packBusiness analysis techniques   exercise your 6-pack
Business analysis techniques exercise your 6-pack
 
Bpm company code camp - configuration or coding with pega
Bpm company   code camp - configuration or coding with pegaBpm company   code camp - configuration or coding with pega
Bpm company code camp - configuration or coding with pega
 
Andrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabaseAndrei prisacaru takingtheunitteststothedatabase
Andrei prisacaru takingtheunitteststothedatabase
 
Agility and life
Agility and lifeAgility and life
Agility and life
 
2015 dan ardelean develop for windows 10
2015 dan ardelean   develop for windows 10 2015 dan ardelean   develop for windows 10
2015 dan ardelean develop for windows 10
 
The case for continuous delivery
The case for continuous deliveryThe case for continuous delivery
The case for continuous delivery
 
Stefan stolniceanu spritekit, 2 d or not 2d
Stefan stolniceanu   spritekit, 2 d or not 2dStefan stolniceanu   spritekit, 2 d or not 2d
Stefan stolniceanu spritekit, 2 d or not 2d
 
Sizing epics tales from an agile kingdom
Sizing epics   tales from an agile kingdomSizing epics   tales from an agile kingdom
Sizing epics tales from an agile kingdom
 
Scale net apps in aws
Scale net apps in awsScale net apps in aws
Scale net apps in aws
 
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...Raluca butnaru corina cilibiu   the unknown universe of a product and the cer...
Raluca butnaru corina cilibiu the unknown universe of a product and the cer...
 
Parallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflowParallel & async processing using tpl dataflow
Parallel & async processing using tpl dataflow
 
Material design screen transitions in android
Material design screen transitions in androidMaterial design screen transitions in android
Material design screen transitions in android
 
Kickstart your own freelancing career
Kickstart your own freelancing careerKickstart your own freelancing career
Kickstart your own freelancing career
 
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu   the soft stuff is the hard stuff. the agile soft skills toolkitIonut grecu   the soft stuff is the hard stuff. the agile soft skills toolkit
Ionut grecu the soft stuff is the hard stuff. the agile soft skills toolkit
 
Ecma6 in the wild
Ecma6 in the wildEcma6 in the wild
Ecma6 in the wild
 
Diana antohi me against myself or how to fail and move forward
Diana antohi   me against myself  or how to fail  and move forwardDiana antohi   me against myself  or how to fail  and move forward
Diana antohi me against myself or how to fail and move forward
 
Codecamp2015 pimp yourpipeline-saade-jens-1.1
Codecamp2015 pimp yourpipeline-saade-jens-1.1Codecamp2015 pimp yourpipeline-saade-jens-1.1
Codecamp2015 pimp yourpipeline-saade-jens-1.1
 
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
Code camp iasi   silviu niculita - machine learning for mere mortals with azu...Code camp iasi   silviu niculita - machine learning for mere mortals with azu...
Code camp iasi silviu niculita - machine learning for mere mortals with azu...
 

Último

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 

Último (20)

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 

Managing technical debt - Dan Nicola - Florin Cardasim

  • 1. Dan Nicola | Maxcode Florin Cardasim | Endava
  • 2.
  • 3.
  • 4.
  • 5.
  • 6. Code Debt Architectural Debt Test Debt Knowledge Debt Technological Debt
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. Customers are annoyed by bugs or missing features due to low productivity.
  • 14. This leads to additional costs for the helpdesk, which annoys the people there, too.
  • 15. Increased development time and quality issues are also a problem for marketing.
  • 16. Bugs lead to frequent patches, which annoys the operations team.
  • 17. Many annoyed parties definitely don’t make the management happy.
  • 18. Last but not least also the developers are suffering. No one wants to deliver bad work.
  • 19.
  • 20. “the only one who can ever change this code is Claudiu” “let’s just copy & paste this code” “it’s ok for now but we’ll refactor it later!” “if I touch that code everything will break” “ToDo/FixMe: this should be fixed before release” “let’s finish the testing in the next release”
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36. Cover it with tests and then modify it Making it extensible and then extend it Make it modular and then rewrite it
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43. e.g. 10% of the available time
  • 44. Some teams do a purely technical release to improve the codebase from time to time This approach is only useful if a list with the really necessary refactoring already exists
  • 45.
  • 46. Established best practice to define purely technical work packages Technical change to be made Why this technical change is important for the project In which part of the code the technical change has to be performed
  • 47.
  • 49. Technical Debt is unavoidable Technical Debt is not always bad, no need to be (fully) repaid in every case We’ve got tools (Sonar, inCode, many others) Technical Debt is often a cultural issue, not a technical one
  • 50. Please fill in the evaluation forms