SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Managing Technical Debt


John Ryan
Technical Agile Coach




                  © 2011 BigVisible Solutions, Inc. All Rights Reserved
Overview

     Click to edit Master text styles
      ____ __ ____ _____ ____ ______
       _____ _____
     Second level
     • ____level
        Who cares?
     Third _____
     • _____level
        What _____
     Fourth is “Technical Debt”?
     • ____ _____incur Technical Debt?
     Fifth levelwe
        How do
     •  Why do we take on Technical Debt?
     •  What can we do?




                                © 2011 BigVisible Solutions, Inc.. All Rights Reserved


2
Current Reality 1

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level

           Are you experiencing
              Technical Debt?


                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


3
Why Do We Care? (1 of 4)

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level




                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


4
Why Do We Care? (2 of 4)

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level




                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


5
Why Do We Care? (3 of 4)

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level




                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


6
Why Do We Care? (4 of 4)

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level




                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


7
What’s Really Going On Here?

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
    Progress = ! (Change - Quality Control) "
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level
                   ! (Diagnose + Fix)
                 # Defects

                     Change ! Complexity
    Risk of Defect =
                       Quality Control

                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


8
Current Reality, Part 2

     Click to edit Master text styles
     ____ __ ____ _____ ____ ______
     _____ _____
     Second level
     ____ _____
     Third level
     _____ _____
     Fourth level
     ____ _____
     Fifth level


        What is Technical Debt?



                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


9
What is Technical Debt?     (1 of 2)

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth levelDebt is…
      Technical
      ____ _____
      Fifth level
                     borrowing against our capacity to
                         quickly respond tomorrow

                 for the ability to make progress today.




                               © 2011 BigVisible Solutions, Inc.. All Rights Reserved


10
What is Technical Debt?                              (2 of 2)

      The Debtedit Master text styles
       ____ __ itself:
      Click to ____ _____ ____ ______
      • _____unit test coverage (low quality control)
         Poor _____
      Second level
      • ____level
      Third _____ software (comprehension complexity)*
         Poorly written
       _____ _____
      Fourth level
      •  Software design that does not match the problem being solved
       ____ _____
      Fifth level from dissonance)
         (complexity
      •  Repeated tasks remain manual (high risk of mistakes/defect)


      Interest Payments:
      •  Takes longer / more effort / is more error-prone to develop new
         features. (slower progress)
      •  Time wasted doing automatable tasks manually. (pure waste)
      •  Takes longer for new team members to ramp-up. (due to complexity)
      •  Decreasing quality delivery à Lowered morale à low gumption
      * WARNING: Code Quality metrics are diagnostic aides, NOT deterministic measures. Do not manage to them.

                                                        © 2011 BigVisible Solutions, Inc.. All Rights Reserved


11
Current Reality, Part 3

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level


            How did we get here?



                               © 2011 BigVisible Solutions, Inc.. All Rights Reserved


12
How Does It Happen? (1 of 3)

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level




       Original Quadrant: http://martinfowler.com/bliki/TechnicalDebtQuadrant.html
                                                     © 2011 BigVisible Solutions, Inc.. All Rights Reserved


13
How Does It Happen? (2 of 3)
      We Don’tedit Master text styles
      ____ __ Know
      Click to ____ _____ ____ ______
      Second level know how to rigorously define our business process
          •  We don’t
       _____ _____
          •  We don’t know responsible programming practices
       ____ _____
      Third level
      Irresponsibly
       _____ _____
      Fourth level
      Fifth level away time on lower priority tasks
       ____We fritter
          • 
              _____
          •  We neglect design, coding and automation discipline

      Unavoidably (Intrinsic)
          •  We ALL learn as we go:
              •  … about our business process
              •  … how well our software solution meets our business needs.

      Deliberately (Strategic)
          •  You fully understand both approaches and you trade a technical –bility for a
             business –bility.
          •  We take the “quick & dirty” approach to meet a real deadline.
              •  And fork an effort to come-up with a cleaner solution.


                                          © 2011 BigVisible Solutions, Inc.. All Rights Reserved


14
John’s Totally Unscientific Graph

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level




                               © 2011 BigVisible Solutions, Inc.. All Rights Reserved


15
How far do you want to go?

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level




                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


16
Future Reality

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level


                 What can we do?



                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


17
What Can We Do? (1 of 3)

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level                          John J. Doe




                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


18
What Can We Do? (2 of 3)

      Click to edit Master text styles
       ____ __ ____ _____ ____ ______
       _____ _____
      Second level
      The Three-Fold Path to Satisfaction
       ____ _____
      Third level
       _____ _____
      Fourth level
      1.  Fix what you can control.
       ____ _____
      Fifth level
      2.  Address what you can influence.
      3.  Escalate what you need help with.




                                   © 2011 BigVisible Solutions, Inc.. All Rights Reserved


19
What Can We Do? (3 of 3)

      Click to edit Master text styles
       ____ __ ____ _____ ____ ______
       _____ _____
      Second level
      The Six_____ Transformational Patterns to Cure Human Causes
       ____ Golden*
      Third level
       _____ _____
      Fourth level
      1.  Collapse the Org
       ____ _____
      Fifth level
      2.  Quality First
      3.  Active Product Ownership
      4.  Hire for Cross-Functional Teams
      5.  Encourage Communication
      6.  Avoid Arbitrary Mandates



      * Jonathon Golden (see references at end of deck)


                                               © 2011 BigVisible Solutions, Inc.. All Rights Reserved


20
As a Developer…               (1 of 2)

      Give Test-Driven _____ ____ ______ serious college try.
      Click to edit Master text styles
      ____ __ ____ Development (TDD) a
      Start with_____ Shore’s “Let’s Play TDD”:
       _____ James
      Second level
      ____ Install
         1.  _____
      Third level Eclipse:
      _____level_____
      Fourth http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/heliossr2
         2.  Start the first video:
      ____ http://www.youtube.com/watch?v=f3G7gu1IHws
              _____
      Fifth level




                                             © 2011 BigVisible Solutions, Inc.. All Rights Reserved


21
As a Developer…         (2 of 2)

      Click to edit Master text styles
        ____ __ ____ _____ ____ ______
        _____ _____
      Second level
     Pick-up a Chop-Sharpening Book:
     1. ____level Programmer
      Third _____
         Pragmatic
        _____ _____
      Fourth level
     2. ____ _____
         Refactoring
      Fifth level
     3.  Head First Design Patterns
     4.  Managing Software Debt


     Here’s the most up-to-date list:
         http://tinyurl.com/422aco8




                                        © 2011 BigVisible Solutions, Inc.. All Rights Reserved


22
Mapping Technical Debt

      Click to edit Master text styles
       ____ __ ____ _____ ____ ______
       _____ _____
      Second level
      Chris Sterling’s Technical Debt Mapping:
       ____ _____
      Third level
      1.  Draw_____
       _____ major
      Fourth level application components on a whiteboard.
       ____ _____
      Fifth level
      2.  Write down Technical Debt on stickies and put them on the board.
      3.  Identify the potential value and cost to the team, if addressed.
      4.  Prioritize by balancing value, cost and immediacy.




                                     © 2011 BigVisible Solutions, Inc.. All Rights Reserved


23
Coda     (1 of 2)

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level


                  What Stuck?


                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


24
Coda     (2 of 2)

      Click to edit Master text styles
      ____ __ ____ _____ ____ ______
      _____ _____
      Second level
      ____ _____
      Third level
      _____ _____
      Fourth level
      ____ _____
      Fifth level

       What One Thing Will
         You Do Next?

                              © 2011 BigVisible Solutions, Inc.. All Rights Reserved


25
References

      Click to edit Master text styles
       ____ __ ____ _____ ____ ______
        _____ _____
      Second level
      • ____level Golden’s Cutter IT Journal Article:
         Jonathon
      Third _____
        _____ _____ Patterns for Curing the Human Causes of Technical
         “Transformation
      Fourth level
         Debt”
        ____ _____
      Fifth level
         http://www.cutter.com/content/itjournal/fulltext/2010/10/itj1010f.html
      •  Martin Fowler on the Technical Debt Quadrant
         http://martinfowler.com/bliki/TechnicalDebtQuadrant.html
      •  Ward Cunningham explains the origin of ”Technical Debt”
         http://www.youtube.com/watch?v=pqeJFYwnkjE
      •  Chris Sterling’s “An Exercise to Identify and Prioritize Software Debt”
         http://www.gettingagile.com/2010/08/13/an-exercise-to-identify-and-
         priofitize-software-debt/
      •  Sonar – Excellent Code Quality Diagnostic* Tool
         http://www.sonarsource.org/
      * “Diagnostic” meaning a way to sniff potential problems; don’t let metrics drive your thinking, just inform it.
                                                          © 2011 BigVisible Solutions, Inc.. All Rights Reserved


26

Weitere ähnliche Inhalte

Ähnlich wie Managing Technical Debt by John Ryan 2011.6.22

Facebook Marketing at Social Media Summit
Facebook Marketing at Social Media SummitFacebook Marketing at Social Media Summit
Facebook Marketing at Social Media SummitDigital Vidya
 
Facebook community-building (B2B)
Facebook community-building (B2B)Facebook community-building (B2B)
Facebook community-building (B2B)Digital Vidya
 
How to Measure ROI on Facebook
How to Measure ROI on FacebookHow to Measure ROI on Facebook
How to Measure ROI on FacebookDigital Vidya
 
Irrational Loss Aversion
Irrational Loss AversionIrrational Loss Aversion
Irrational Loss AversionJon Gatrell
 
The case for Social Media Marketing - SES New Delhi
The case for Social Media Marketing - SES New DelhiThe case for Social Media Marketing - SES New Delhi
The case for Social Media Marketing - SES New DelhiDigital Vidya
 
Facebook Community-Building Malaysia
Facebook Community-Building Malaysia Facebook Community-Building Malaysia
Facebook Community-Building Malaysia Digital Vidya
 
Social Media for Customer Acquisition By Pradeep Chopra
Social Media for Customer Acquisition By Pradeep ChopraSocial Media for Customer Acquisition By Pradeep Chopra
Social Media for Customer Acquisition By Pradeep Chopraiamwire
 
Introduction to Advanced Facebook Marketing Course
Introduction to Advanced Facebook Marketing CourseIntroduction to Advanced Facebook Marketing Course
Introduction to Advanced Facebook Marketing CourseDigital Vidya
 
Facebook Marketing for Customer Acquisition
Facebook Marketing for Customer AcquisitionFacebook Marketing for Customer Acquisition
Facebook Marketing for Customer AcquisitionDigital Vidya
 
Social Media: A Killer Application
Social Media: A Killer ApplicationSocial Media: A Killer Application
Social Media: A Killer ApplicationDigital Vidya
 
Social Media for Customer Acquisition
Social Media for Customer AcquisitionSocial Media for Customer Acquisition
Social Media for Customer AcquisitionPradeep Chopra
 
Social Media for Customer Loyalty and Brand Engagement
Social Media for Customer Loyalty and Brand EngagementSocial Media for Customer Loyalty and Brand Engagement
Social Media for Customer Loyalty and Brand EngagementDigital Vidya
 
Changing Consumer Behavior towards e-commerce in India
Changing Consumer Behavior towards e-commerce in IndiaChanging Consumer Behavior towards e-commerce in India
Changing Consumer Behavior towards e-commerce in IndiaDigital Vidya
 
Agile Coaching: An Inside Look
Agile Coaching: An Inside LookAgile Coaching: An Inside Look
Agile Coaching: An Inside LookJeff Steinberg
 
Giora Morein - Metrics and diagnostics - AgileIL11
Giora Morein - Metrics and diagnostics - AgileIL11Giora Morein - Metrics and diagnostics - AgileIL11
Giora Morein - Metrics and diagnostics - AgileIL11AgileSparks
 
Smart grids and "Energy@home" Project
Smart grids and "Energy@home" ProjectSmart grids and "Energy@home" Project
Smart grids and "Energy@home" ProjectValerio Aisa
 
AgilePalooza - Agile Reporting and Metrics
AgilePalooza - Agile Reporting and MetricsAgilePalooza - Agile Reporting and Metrics
AgilePalooza - Agile Reporting and MetricsThinkLouder
 
AgilePalooza - BigScrum - Scaling Team To Program
AgilePalooza - BigScrum - Scaling Team To ProgramAgilePalooza - BigScrum - Scaling Team To Program
AgilePalooza - BigScrum - Scaling Team To ProgramThinkLouder
 
Future of the Military Work Placement Scheme
Future of the Military Work Placement Scheme Future of the Military Work Placement Scheme
Future of the Military Work Placement Scheme SkillsForLogistics
 

Ähnlich wie Managing Technical Debt by John Ryan 2011.6.22 (20)

Facebook Marketing at Social Media Summit
Facebook Marketing at Social Media SummitFacebook Marketing at Social Media Summit
Facebook Marketing at Social Media Summit
 
Facebook community-building (B2B)
Facebook community-building (B2B)Facebook community-building (B2B)
Facebook community-building (B2B)
 
How to Measure ROI on Facebook
How to Measure ROI on FacebookHow to Measure ROI on Facebook
How to Measure ROI on Facebook
 
Irrational Loss Aversion
Irrational Loss AversionIrrational Loss Aversion
Irrational Loss Aversion
 
The case for Social Media Marketing - SES New Delhi
The case for Social Media Marketing - SES New DelhiThe case for Social Media Marketing - SES New Delhi
The case for Social Media Marketing - SES New Delhi
 
Facebook Community-Building Malaysia
Facebook Community-Building Malaysia Facebook Community-Building Malaysia
Facebook Community-Building Malaysia
 
Social Media for Customer Acquisition By Pradeep Chopra
Social Media for Customer Acquisition By Pradeep ChopraSocial Media for Customer Acquisition By Pradeep Chopra
Social Media for Customer Acquisition By Pradeep Chopra
 
Introduction to Advanced Facebook Marketing Course
Introduction to Advanced Facebook Marketing CourseIntroduction to Advanced Facebook Marketing Course
Introduction to Advanced Facebook Marketing Course
 
Facebook Marketing for Customer Acquisition
Facebook Marketing for Customer AcquisitionFacebook Marketing for Customer Acquisition
Facebook Marketing for Customer Acquisition
 
Social Media: A Killer Application
Social Media: A Killer ApplicationSocial Media: A Killer Application
Social Media: A Killer Application
 
Social Media for Customer Acquisition
Social Media for Customer AcquisitionSocial Media for Customer Acquisition
Social Media for Customer Acquisition
 
Social Media for Customer Loyalty and Brand Engagement
Social Media for Customer Loyalty and Brand EngagementSocial Media for Customer Loyalty and Brand Engagement
Social Media for Customer Loyalty and Brand Engagement
 
Changing Consumer Behavior towards e-commerce in India
Changing Consumer Behavior towards e-commerce in IndiaChanging Consumer Behavior towards e-commerce in India
Changing Consumer Behavior towards e-commerce in India
 
Agile Coaching: An Inside Look
Agile Coaching: An Inside LookAgile Coaching: An Inside Look
Agile Coaching: An Inside Look
 
Giora Morein - Metrics and diagnostics - AgileIL11
Giora Morein - Metrics and diagnostics - AgileIL11Giora Morein - Metrics and diagnostics - AgileIL11
Giora Morein - Metrics and diagnostics - AgileIL11
 
Smart grids and "Energy@home" Project
Smart grids and "Energy@home" ProjectSmart grids and "Energy@home" Project
Smart grids and "Energy@home" Project
 
Regional sea level projections and attribution
Regional sea level projections and attributionRegional sea level projections and attribution
Regional sea level projections and attribution
 
AgilePalooza - Agile Reporting and Metrics
AgilePalooza - Agile Reporting and MetricsAgilePalooza - Agile Reporting and Metrics
AgilePalooza - Agile Reporting and Metrics
 
AgilePalooza - BigScrum - Scaling Team To Program
AgilePalooza - BigScrum - Scaling Team To ProgramAgilePalooza - BigScrum - Scaling Team To Program
AgilePalooza - BigScrum - Scaling Team To Program
 
Future of the Military Work Placement Scheme
Future of the Military Work Placement Scheme Future of the Military Work Placement Scheme
Future of the Military Work Placement Scheme
 

Kürzlich hochgeladen

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 

Kürzlich hochgeladen (20)

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 

Managing Technical Debt by John Ryan 2011.6.22

  • 1. Managing Technical Debt John Ryan Technical Agile Coach © 2011 BigVisible Solutions, Inc. All Rights Reserved
  • 2. Overview Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level • ____level Who cares? Third _____ • _____level What _____ Fourth is “Technical Debt”? • ____ _____incur Technical Debt? Fifth levelwe How do •  Why do we take on Technical Debt? •  What can we do? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 2
  • 3. Current Reality 1 Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level Are you experiencing Technical Debt? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 3
  • 4. Why Do We Care? (1 of 4) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 4
  • 5. Why Do We Care? (2 of 4) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 5
  • 6. Why Do We Care? (3 of 4) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 6
  • 7. Why Do We Care? (4 of 4) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 7
  • 8. What’s Really Going On Here? Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level Progress = ! (Change - Quality Control) " ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level ! (Diagnose + Fix) # Defects Change ! Complexity Risk of Defect = Quality Control © 2011 BigVisible Solutions, Inc.. All Rights Reserved 8
  • 9. Current Reality, Part 2 Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level What is Technical Debt? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 9
  • 10. What is Technical Debt? (1 of 2) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth levelDebt is… Technical ____ _____ Fifth level borrowing against our capacity to quickly respond tomorrow for the ability to make progress today. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 10
  • 11. What is Technical Debt? (2 of 2) The Debtedit Master text styles ____ __ itself: Click to ____ _____ ____ ______ • _____unit test coverage (low quality control) Poor _____ Second level • ____level Third _____ software (comprehension complexity)* Poorly written _____ _____ Fourth level •  Software design that does not match the problem being solved ____ _____ Fifth level from dissonance) (complexity •  Repeated tasks remain manual (high risk of mistakes/defect) Interest Payments: •  Takes longer / more effort / is more error-prone to develop new features. (slower progress) •  Time wasted doing automatable tasks manually. (pure waste) •  Takes longer for new team members to ramp-up. (due to complexity) •  Decreasing quality delivery à Lowered morale à low gumption * WARNING: Code Quality metrics are diagnostic aides, NOT deterministic measures. Do not manage to them. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 11
  • 12. Current Reality, Part 3 Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level How did we get here? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 12
  • 13. How Does It Happen? (1 of 3) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level Original Quadrant: http://martinfowler.com/bliki/TechnicalDebtQuadrant.html © 2011 BigVisible Solutions, Inc.. All Rights Reserved 13
  • 14. How Does It Happen? (2 of 3) We Don’tedit Master text styles ____ __ Know Click to ____ _____ ____ ______ Second level know how to rigorously define our business process •  We don’t _____ _____ •  We don’t know responsible programming practices ____ _____ Third level Irresponsibly _____ _____ Fourth level Fifth level away time on lower priority tasks ____We fritter •  _____ •  We neglect design, coding and automation discipline Unavoidably (Intrinsic) •  We ALL learn as we go: •  … about our business process •  … how well our software solution meets our business needs. Deliberately (Strategic) •  You fully understand both approaches and you trade a technical –bility for a business –bility. •  We take the “quick & dirty” approach to meet a real deadline. •  And fork an effort to come-up with a cleaner solution. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 14
  • 15. John’s Totally Unscientific Graph Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 15
  • 16. How far do you want to go? Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 16
  • 17. Future Reality Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level What can we do? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 17
  • 18. What Can We Do? (1 of 3) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level John J. Doe © 2011 BigVisible Solutions, Inc.. All Rights Reserved 18
  • 19. What Can We Do? (2 of 3) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level The Three-Fold Path to Satisfaction ____ _____ Third level _____ _____ Fourth level 1.  Fix what you can control. ____ _____ Fifth level 2.  Address what you can influence. 3.  Escalate what you need help with. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 19
  • 20. What Can We Do? (3 of 3) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level The Six_____ Transformational Patterns to Cure Human Causes ____ Golden* Third level _____ _____ Fourth level 1.  Collapse the Org ____ _____ Fifth level 2.  Quality First 3.  Active Product Ownership 4.  Hire for Cross-Functional Teams 5.  Encourage Communication 6.  Avoid Arbitrary Mandates * Jonathon Golden (see references at end of deck) © 2011 BigVisible Solutions, Inc.. All Rights Reserved 20
  • 21. As a Developer… (1 of 2) Give Test-Driven _____ ____ ______ serious college try. Click to edit Master text styles ____ __ ____ Development (TDD) a Start with_____ Shore’s “Let’s Play TDD”: _____ James Second level ____ Install 1.  _____ Third level Eclipse: _____level_____ Fourth http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/heliossr2 2.  Start the first video: ____ http://www.youtube.com/watch?v=f3G7gu1IHws _____ Fifth level © 2011 BigVisible Solutions, Inc.. All Rights Reserved 21
  • 22. As a Developer… (2 of 2) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level Pick-up a Chop-Sharpening Book: 1. ____level Programmer Third _____ Pragmatic _____ _____ Fourth level 2. ____ _____ Refactoring Fifth level 3.  Head First Design Patterns 4.  Managing Software Debt Here’s the most up-to-date list: http://tinyurl.com/422aco8 © 2011 BigVisible Solutions, Inc.. All Rights Reserved 22
  • 23. Mapping Technical Debt Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level Chris Sterling’s Technical Debt Mapping: ____ _____ Third level 1.  Draw_____ _____ major Fourth level application components on a whiteboard. ____ _____ Fifth level 2.  Write down Technical Debt on stickies and put them on the board. 3.  Identify the potential value and cost to the team, if addressed. 4.  Prioritize by balancing value, cost and immediacy. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 23
  • 24. Coda (1 of 2) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level What Stuck? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 24
  • 25. Coda (2 of 2) Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level ____ _____ Third level _____ _____ Fourth level ____ _____ Fifth level What One Thing Will You Do Next? © 2011 BigVisible Solutions, Inc.. All Rights Reserved 25
  • 26. References Click to edit Master text styles ____ __ ____ _____ ____ ______ _____ _____ Second level • ____level Golden’s Cutter IT Journal Article: Jonathon Third _____ _____ _____ Patterns for Curing the Human Causes of Technical “Transformation Fourth level Debt” ____ _____ Fifth level http://www.cutter.com/content/itjournal/fulltext/2010/10/itj1010f.html •  Martin Fowler on the Technical Debt Quadrant http://martinfowler.com/bliki/TechnicalDebtQuadrant.html •  Ward Cunningham explains the origin of ”Technical Debt” http://www.youtube.com/watch?v=pqeJFYwnkjE •  Chris Sterling’s “An Exercise to Identify and Prioritize Software Debt” http://www.gettingagile.com/2010/08/13/an-exercise-to-identify-and- priofitize-software-debt/ •  Sonar – Excellent Code Quality Diagnostic* Tool http://www.sonarsource.org/ * “Diagnostic” meaning a way to sniff potential problems; don’t let metrics drive your thinking, just inform it. © 2011 BigVisible Solutions, Inc.. All Rights Reserved 26