Agile and Beyond :: The Technical Debt Trap

9,393 views
8,825 views

Published on

In this presentation, I continue to add material around identifying and cleaning cruft, including a better way to tie the effort to business value.

Published in: Technology
1 Comment
23 Likes
Statistics
Notes
  • Very nice explanations, Michael. Visitors may be interested also in how to get rid of debt "on the fly": http://tinyurl.com/kpv9mrk
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
9,393
On SlideShare
0
From Embeds
0
Number of Embeds
30
Actions
Shares
0
Downloads
237
Comments
1
Likes
23
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Design decisions that allow for more rapid delivery / illicit quick feedback / gather data necessary to correct design\n
  • - Sales site for complex product. Create product configuration views.\n- Plan to sell several different products. Starting with just one. Don’t extract interface yet.\n\n\n
  • - Sales site for complex product. Create product configuration views.\n- Plan to sell several different products. Starting with just one. Don’t extract interface yet.\n\n\n
  • - Sales site for complex product. Create product configuration views.\n- Plan to sell several different products. Starting with just one. Don’t extract interface yet.\n\n\n
  • \n
  • \n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • This is not a loan from a loan shark\n\nHow do we end up in massive high-interest debt unwittingly?\nrobbery or larceny or fraud\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • "We incurred structural debt in order to meet your deadline. We should discuss that debt and set a plan for paying it back later."\n
  • "We incurred mechanical debt to stay in budget. We should get metrics around that and make sure we pay the debt down in the future."\n
  • "We incurred health debt during the surgery. You see, it is like we paid for the surgery with a credit card instead of a home equity loan..."\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • Not acceptable to violate accounting practices, violate safety laws, or risk patient’s health\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Ruby - churn => volume of changes\ngit - gitswarm => visual history of changes\nJava - Cobertura or Sonar\n
  • Ruby - churn => volume of changes\ngit - gitswarm => visual history of changes\nJava - Cobertura or Sonar\n
  • Ruby - churn => volume of changes\ngit - gitswarm => visual history of changes\nJava - Cobertura or Sonar\n
  • Ruby - churn => volume of changes\ngit - gitswarm => visual history of changes\nJava - Cobertura or Sonar\n
  • Ruby - churn => volume of changes\ngit - gitswarm => visual history of changes\nJava - Cobertura or Sonar\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Java - Cobertura, Clover, EMMA\n.NET - NCover\nRuby - rcov / metric_fu\n
  • Java - Cobertura, Clover, EMMA\n.NET - NCover\nRuby - rcov / metric_fu\n
  • Java - Cobertura, Clover, EMMA\n.NET - NCover\nRuby - rcov / metric_fu\n
  • Java - Cobertura, Clover, EMMA\n.NET - NCover\nRuby - rcov / metric_fu\n
  • Java - Cobertura, Clover, EMMA\n.NET - NCover\nRuby - rcov / metric_fu\n
  • Ruby - Saikuro / metric_fu\nJava - Cobertura, PMD, CheckStyle\n.NET - NDepend\n\n
  • Ruby - Saikuro / metric_fu\nJava - Cobertura, PMD, CheckStyle\n.NET - NDepend\n\n
  • Ruby - Saikuro / metric_fu\nJava - Cobertura, PMD, CheckStyle\n.NET - NDepend\n\n
  • Ruby - Saikuro / metric_fu\nJava - Cobertura, PMD, CheckStyle\n.NET - NDepend\n\n
  • Ruby - Saikuro / metric_fu\nJava - Cobertura, PMD, CheckStyle\n.NET - NDepend\n\n
  • NDepend\nJDepend\n\n
  • NDepend\nJDepend\n\n
  • NDepend\nJDepend\n\n
  • NDepend\nJDepend\n\n
  • NDepend\nJDepend\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • ×