SlideShare uma empresa Scribd logo
1 de 28
Jaguaraci Silva
   Schedule today:
   What is technical debt?
   Cost of debt from various perspectives
   Managing your debt
   Conclusions
What is technical debt?
•In 1992 Ward Cunningham published a
report at OOPSLA2, which he proposed the
concept of technical debt.

•There are many ways and reasons (not all
bad) to take on technical debt.

•Ward Cunningham has a video talk (recorded
at 2009) where he discusses this metaphor he
created.
What is technical debt?
•You have a piece of functionality that you
need to add to your system.

•You see two ways to do it, one is quick to do
but is messy - you are sure that it will make
further changes harder in the future.

•The other results in a cleaner design, but will
take longer to put in place.
What is technical debt?
•Doing quick and dirty way, we sets up with a
technical debt, that is similar to a financial
debt (increasing interest rates).

•It comes in the form of
the extra effort that we
have to do in future
because of the quick and
dirty design choice.
What is technical debt?
                    •We can choose to continue
                    paying by refactoring the
                    quick and dirty design into
                    the better design.


•Although it costs to pay down the principal,
we gain by reduced interest payments in the
future.
What is technical debt?

We have the understanding about what
technical debt is, but what it is not?
What is technical debt and what it is not?
                     A good example of this was
                     defined by Uncle Bob's: a
                     messy code (produced by
                     ignorant people) who don’t
                     knows about good design
                     practices, shouldn't be a
                     debt.
Cost of Debt from Various Perspectives
 Technical   debt affects everyone, but in
  different ways.

   This is part of the problem of managing the
    debt. Even if you understand it from your
    perspective, there are other legitimate ways
    to view it.
Cost of Debt from Various Perspectives
Cost of Debt from Various Perspectives
• Customers need software that
works, that they can understand,
maintain, extends, support, and
use.

•This    cannot    happen     without
managing the technical       debt at
every level of SW process.
Cost of Debt from Various Perspectives
                  • Helpdesk suffer from almost
                  every aspect of technical debt:
                  poorly designed interfaces, bad
                  or nonexistent documentation,
                  slow algorithms, etc.

                  •Is the customers’ primary input
                  and often has no direct access to
                  the people who can solve the
                  problem.
Cost of Debt from Various Perspectives
• Operations can spend much of
their time paying for decisions that
other    people    made      without
consulting them.

•They need to work with developers
early in the cycle to make the
product reliable, maintainable and
well understood.
Cost of Debt from Various Perspectives
                  • Engineers are the developers
                  who need write, repair, extend,
                  or otherwise maintain the code.

                  •The beginners developers seem
                  to be the major creators of
                  technical debt.
Cost of Debt from Various Perspectives

• Marketing are pressured by sales
and the customers to provide new
functionality as    quickly   as
possible.

•When something does not work
properly, they are also on the
firing line.
Cost of Debt from Various Perspectives
                • Management can be inclined to
                take on technical debt without
                understanding the costs and also
                pays a price.

                •On the other hand, they have no
                difficulty for embracing the concept
                and it can be an advantage.
Cost of Debt from Various Perspectives

We have the understanding about what
technical debt is, what it is not and the its
cost from various perspectives. Then, how can
I manage it?
Managing your Debt
Managing your Debt – Establish a SW process
Managing your Debt – Compare Plan x Final
Managing your Debt – Team productivity
Managing your Debt – Collect issues
Managing your Debt – Manage issues
Managing your Debt – Plan your payment
   Conclusions
   Technical debt can be viewed in many ways
    and can be caused by all levels of an
    organization.

   It can be managed properly only with
    assistance and understanding at all levels.

   It helps nontechnical parties understand the
    costs that can arise from mismanaging that
    debt.
   Conclusions
   Release cycles can make a considerable
    difference in the rate of acquisition and disposal
    of technical debt.

   If that debt is not paid off promptly, the system
    can bog down at a truly frightening rate.

   Customers usually buy features, not long-term
    maintainability, often they encourage to move on
    to the next project rather than spending the time
    with good practices.
   Conclusions
   We exhibit tips to you managing your
    technical debt :
    ◦   Establishment a SW process
    ◦   Comparing your plans
    ◦   Gathering team productivity
    ◦   Collecting and managing issues
    ◦   Plan your payment
 Thank   you very much!.

             Any questions?

Mais conteúdo relacionado

Mais procurados

Lean Software Development Presentation
Lean Software Development PresentationLean Software Development Presentation
Lean Software Development Presentation
sushant.1409
 
Waterfall And Agile Methodology Coexistence 2011
Waterfall And Agile Methodology Coexistence 2011Waterfall And Agile Methodology Coexistence 2011
Waterfall And Agile Methodology Coexistence 2011
Tim Morris ★
 

Mais procurados (20)

Building an Agile framework that fits your organisation
Building an Agile framework that fits your organisationBuilding an Agile framework that fits your organisation
Building an Agile framework that fits your organisation
 
Lean Software Development Presentation
Lean Software Development PresentationLean Software Development Presentation
Lean Software Development Presentation
 
Agile manifesto
Agile manifestoAgile manifesto
Agile manifesto
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Agile Project LifeCycle
Agile Project LifeCycleAgile Project LifeCycle
Agile Project LifeCycle
 
The 12 Agile Principles
The 12 Agile PrinciplesThe 12 Agile Principles
The 12 Agile Principles
 
Waterfall And Agile Methodology Coexistence 2011
Waterfall And Agile Methodology Coexistence 2011Waterfall And Agile Methodology Coexistence 2011
Waterfall And Agile Methodology Coexistence 2011
 
Intro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentIntro to Agile and Lean Software Development
Intro to Agile and Lean Software Development
 
Agile Methodologies by TechDesti
Agile Methodologies by TechDestiAgile Methodologies by TechDesti
Agile Methodologies by TechDesti
 
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
 
Agile Webinar: Managing Distributed Teams
Agile Webinar: Managing Distributed TeamsAgile Webinar: Managing Distributed Teams
Agile Webinar: Managing Distributed Teams
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
 
Scrum checklist
Scrum checklistScrum checklist
Scrum checklist
 
Agile Development Models
Agile Development ModelsAgile Development Models
Agile Development Models
 
Introduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesIntroduction to Agile Values & Principles
Introduction to Agile Values & Principles
 
Business Case for Agile - Time for ROI Check
Business Case for Agile - Time for ROI CheckBusiness Case for Agile - Time for ROI Check
Business Case for Agile - Time for ROI Check
 
Balancing the tension between Lean and Agile
Balancing the tension between Lean and AgileBalancing the tension between Lean and Agile
Balancing the tension between Lean and Agile
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 

Semelhante a Managing Technical Debt - A Practical Approach Using Continuous Integration and Project Management

Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementation
Terry Bunio
 

Semelhante a Managing Technical Debt - A Practical Approach Using Continuous Integration and Project Management (20)

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
 
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
 
Understanding and Managing Technical Debt
Understanding and Managing Technical DebtUnderstanding and Managing Technical Debt
Understanding and Managing Technical Debt
 
Working with Technical Debt
Working with Technical DebtWorking with Technical Debt
Working with Technical Debt
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
From Technical Debt to Technical Health
From Technical Debt to Technical HealthFrom Technical Debt to Technical Health
From Technical Debt to Technical Health
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementation
 
Successful Business Sponsorship of Agile IT Projects
Successful Business Sponsorship of Agile IT ProjectsSuccessful Business Sponsorship of Agile IT Projects
Successful Business Sponsorship of Agile IT Projects
 
English digital business 2.1.pptx
English digital business 2.1.pptxEnglish digital business 2.1.pptx
English digital business 2.1.pptx
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
Technical debt
Technical debtTechnical debt
Technical debt
 
9 Common Challenges in the Software Development Process
9 Common Challenges in the Software Development Process9 Common Challenges in the Software Development Process
9 Common Challenges in the Software Development Process
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
Technical debt a Business Perspective
Technical debt a Business PerspectiveTechnical debt a Business Perspective
Technical debt a Business Perspective
 
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
 
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...Create Success With Analytics: Living With Technical Debt - Balancing Quality...
Create Success With Analytics: Living With Technical Debt - Balancing Quality...
 
Why care about technical debt?
Why care about technical debt?Why care about technical debt?
Why care about technical debt?
 
Maintenance Technical Debt
Maintenance Technical DebtMaintenance Technical Debt
Maintenance Technical Debt
 
Technical stories v1.2
Technical stories v1.2Technical stories v1.2
Technical stories v1.2
 

Mais de Jaguaraci Silva

Mais de Jaguaraci Silva (20)

Oracle soa suite 11 g
Oracle soa suite 11 gOracle soa suite 11 g
Oracle soa suite 11 g
 
Mobilidade Urbana por Meio de Vias Inteligentes
Mobilidade Urbana por Meio de Vias InteligentesMobilidade Urbana por Meio de Vias Inteligentes
Mobilidade Urbana por Meio de Vias Inteligentes
 
GranDIHC-BR: prospecção de grandes desafios de pesquisa em interação humano-c...
GranDIHC-BR: prospecção de grandes desafios de pesquisa em interação humano-c...GranDIHC-BR: prospecção de grandes desafios de pesquisa em interação humano-c...
GranDIHC-BR: prospecção de grandes desafios de pesquisa em interação humano-c...
 
Mapa mental tecnologias de separação de interesses
Mapa mental tecnologias de separação de interessesMapa mental tecnologias de separação de interesses
Mapa mental tecnologias de separação de interesses
 
Mapa mental programação extrema
Mapa mental programação extremaMapa mental programação extrema
Mapa mental programação extrema
 
Mapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágilMapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágil
 
Mapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de SoftwareMapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de Software
 
Mapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidadeMapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidade
 
Sound Empirical Evidence in Software Testing
Sound Empirical Evidence in Software TestingSound Empirical Evidence in Software Testing
Sound Empirical Evidence in Software Testing
 
FRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica CorporativaFRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica Corporativa
 
FACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TIFACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TI
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM Certification
 
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
 
Windows Server 2008 R2 Overview
Windows Server 2008 R2 OverviewWindows Server 2008 R2 Overview
Windows Server 2008 R2 Overview
 
Business Rules Separation and Reuse Using MDA, OWL and AspectJ
Business Rules Separation and Reuse Using MDA, OWL and AspectJBusiness Rules Separation and Reuse Using MDA, OWL and AspectJ
Business Rules Separation and Reuse Using MDA, OWL and AspectJ
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem Fio
 
Controle Remoto de Residências
Controle Remoto de ResidênciasControle Remoto de Residências
Controle Remoto de Residências
 
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
 
Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.
 
Técnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesTécnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web services
 

Último

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 

Último (20)

SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 

Managing Technical Debt - A Practical Approach Using Continuous Integration and Project Management

  • 2. Schedule today:  What is technical debt?  Cost of debt from various perspectives  Managing your debt  Conclusions
  • 3. What is technical debt? •In 1992 Ward Cunningham published a report at OOPSLA2, which he proposed the concept of technical debt. •There are many ways and reasons (not all bad) to take on technical debt. •Ward Cunningham has a video talk (recorded at 2009) where he discusses this metaphor he created.
  • 4. What is technical debt? •You have a piece of functionality that you need to add to your system. •You see two ways to do it, one is quick to do but is messy - you are sure that it will make further changes harder in the future. •The other results in a cleaner design, but will take longer to put in place.
  • 5. What is technical debt? •Doing quick and dirty way, we sets up with a technical debt, that is similar to a financial debt (increasing interest rates). •It comes in the form of the extra effort that we have to do in future because of the quick and dirty design choice.
  • 6. What is technical debt? •We can choose to continue paying by refactoring the quick and dirty design into the better design. •Although it costs to pay down the principal, we gain by reduced interest payments in the future.
  • 7. What is technical debt? We have the understanding about what technical debt is, but what it is not?
  • 8. What is technical debt and what it is not? A good example of this was defined by Uncle Bob's: a messy code (produced by ignorant people) who don’t knows about good design practices, shouldn't be a debt.
  • 9. Cost of Debt from Various Perspectives  Technical debt affects everyone, but in different ways.  This is part of the problem of managing the debt. Even if you understand it from your perspective, there are other legitimate ways to view it.
  • 10. Cost of Debt from Various Perspectives
  • 11. Cost of Debt from Various Perspectives • Customers need software that works, that they can understand, maintain, extends, support, and use. •This cannot happen without managing the technical debt at every level of SW process.
  • 12. Cost of Debt from Various Perspectives • Helpdesk suffer from almost every aspect of technical debt: poorly designed interfaces, bad or nonexistent documentation, slow algorithms, etc. •Is the customers’ primary input and often has no direct access to the people who can solve the problem.
  • 13. Cost of Debt from Various Perspectives • Operations can spend much of their time paying for decisions that other people made without consulting them. •They need to work with developers early in the cycle to make the product reliable, maintainable and well understood.
  • 14. Cost of Debt from Various Perspectives • Engineers are the developers who need write, repair, extend, or otherwise maintain the code. •The beginners developers seem to be the major creators of technical debt.
  • 15. Cost of Debt from Various Perspectives • Marketing are pressured by sales and the customers to provide new functionality as quickly as possible. •When something does not work properly, they are also on the firing line.
  • 16. Cost of Debt from Various Perspectives • Management can be inclined to take on technical debt without understanding the costs and also pays a price. •On the other hand, they have no difficulty for embracing the concept and it can be an advantage.
  • 17. Cost of Debt from Various Perspectives We have the understanding about what technical debt is, what it is not and the its cost from various perspectives. Then, how can I manage it?
  • 19. Managing your Debt – Establish a SW process
  • 20. Managing your Debt – Compare Plan x Final
  • 21. Managing your Debt – Team productivity
  • 22. Managing your Debt – Collect issues
  • 23. Managing your Debt – Manage issues
  • 24. Managing your Debt – Plan your payment
  • 25. Conclusions  Technical debt can be viewed in many ways and can be caused by all levels of an organization.  It can be managed properly only with assistance and understanding at all levels.  It helps nontechnical parties understand the costs that can arise from mismanaging that debt.
  • 26. Conclusions  Release cycles can make a considerable difference in the rate of acquisition and disposal of technical debt.  If that debt is not paid off promptly, the system can bog down at a truly frightening rate.  Customers usually buy features, not long-term maintainability, often they encourage to move on to the next project rather than spending the time with good practices.
  • 27. Conclusions  We exhibit tips to you managing your technical debt : ◦ Establishment a SW process ◦ Comparing your plans ◦ Gathering team productivity ◦ Collecting and managing issues ◦ Plan your payment
  • 28.  Thank you very much!. Any questions?