Presentation is loading. Please wait.

Presentation is loading. Please wait.

Technical Debt The good and the bad Copyright © 2017 Curt Hill

Similar presentations


Presentation on theme: "Technical Debt The good and the bad Copyright © 2017 Curt Hill"— Presentation transcript:

1 Technical Debt The good and the bad Copyright © 2017 Curt Hill
From a paper by Harry Roberts and Wikipedia Copyright © 2017 Curt Hill

2 Introduction Technical debt is a concept that those of us who work in a non-perfect world must deal with If All of our designs and code were complete and perfect Requirements never changed Deadlines were not an issue Then there would be no technical debt Copyright © 2017 Curt Hill

3 Definition Technical debt is the amount of time and work required to bring the design or code to a level where maintenance is reasonable and enhancements may be applied Copyright © 2017 Curt Hill

4 General Statements Technical debt results from poor design which is easy to implement rather than good overall design Like monetary debt it grows with time However, nobody profits from the interest Not all technical debt is bad code Not all bad code is technical debt Copyright © Curt Hill

5 Again Technical debt often results from premature deadlines forcing design and code that is below normal standards It may also come from poor original design Which may in itself be from not knowing how a new problem should be solved Alas, we all live in a world where we need to get the product out the door Copyright © 2017 Curt Hill

6 Legacy Code Might or might not be technical debt
If the legacy code has been maintained and accurately reflects the business processes Then it is not technical debt Often we just need a smart interface to the modern internet However, older code that has not been maintained has fallen out of sync with reality is technical debt Copyright © 2017 Curt Hill

7 What to do? Technical debt is like financial debt It accrues interest
It must eventually be dealt with Ultimately there are only two solutions to debt: Pay it off Declare bankruptcy Both of these have pros and cons More cons than pros Which is why it is always best to avoid Copyright © 2017 Curt Hill

8 What to do again? Typically you also have two solutions both of which are costly Redesign the system Stop new development and enhancements Get the product to an acceptable state Limp along until it is no longer maintainable then abandon the project Copyright © 2017 Curt Hill

9 Redesign This is the repaying of the technical debt
It typically requires backing up in the process Thus it costs money and time When you are done the redesigned system should be far more robust Copyright © 2017 Curt Hill

10 Limping Along This is ignoring the debt
You market the product as well as you can The poor design likely results in a fragile system Extending it with any improvements will likely make it more fragile still Ultimately this system will collapse under its own weight and be abandoned This usually results in a poor reputation Copyright © 2017 Curt Hill

11 Good and Bad Financial debt may be good and bad
If the debt is acquired for a good reason and there is the clear understanding that it must be repaid then it is good House mortgage Auto, business or student loans Using that loan for something temporary generally makes it bad Spring break trip Latest gadget Copyright © 2017 Curt Hill

12 Good and Bad Again Sometimes the external pressures force technical debt You are required to come up with something quickly that is debt If you are committed to do it right after the fact then it is generally good debt Otherwise bad debt Copyright © 2017 Curt Hill

13 Students There is a technical debt of sorts that particularly applies to students Within a single course it is usually procrastination Postponing projects and then doing a shabby job on them In majors or courses with prerequisites Not learning the needed stuff in original course Needing to learn it later when not the topic Copyright © 2017 Curt Hill

14 Finally Cutting corners is not necessarily bad if there is some compelling reason to do so Similarly technical debt is not all bad Failing to repay the technical debt is all bad Copyright © 2017 Curt Hill


Download ppt "Technical Debt The good and the bad Copyright © 2017 Curt Hill"

Similar presentations


Ads by Google