Software Debt & Design Debt Overview

Join the Technical Debt bloggers in discussions about their thoughts on Software Debt, its impact on code and on the business. If you are interested in blogging for us, let us know!

The Technical Debt Singularity

By Frances Lash | January 23, 2015

Screen Shot 2015-01-22 at 2.28.50 PM
A technology singularity, in terms laid out by this post on technical debt, is a point when technology created by humans reaches the point where it can no longer be understood by its creators. A mathematical singularity is a point beyond which odd or unpredictable behaviours can be recognized. In formulating the hypothesis for this ... read more

Is Refactoring “Needless Rework”? – Refactoring for Design Level Smells

By Frances Lash | January 19, 2015

Here’s a post that delves into the necessity of refactoring in software engineering, comparing the practicality of refactoring in software to restructuring in urban planning. It begins by stating that when running software projects that span millions of lines of code the original design is usually good, over a period of time, however, the design ... read more

Technical Debt is Risk Management

By Frances Lash | January 9, 2015

If refactoring code reduces a code base by 80%, then the chance of missing a necessary change in the code base and the risk of missing something in testing that damages the production business are also reduced. Therefore, by this logic, the management of technical debt is in fact risk management. Using the analogy of ... read more

The Three Kinds of Code: Divergent Perceptions about Cost

By Frances Lash | January 5, 2015

This post discusses the three categories of code that can be found within a certain project and that confusion about them plus a misunderstanding about their actual cost can lead to trouble. The three categories of code follow: Temporary Code: or code written to throw away within a day or week – if it breaks it’s ... read more

Not all Technical Debt should be Treated Equally

By Frances Lash | December 30, 2014

Screen Shot 2014-12-27 at 9.03.07 PM
The on going management of technical debt has become viewed as critical for the development of high quality and maintainable software, even by those who promote agile development processes. This consideration for tech debt management has contradicted the notion that development decisions should almost exclusively be driven by business value because of the difficulty of ... read more

Bad code isn’t Technical Debt, it’s an unhedged Call Option

By Frances Lash | December 29, 2014

This is a post that discusses an alternative to the metaphor of technical debt for ‘bad code’. The problem with technical debt as a metaphor is that for managers debt can be a good thing – it can required for financial needs or encouraged by tax breaks in certain financial situations. However, the debt that ... read more

What’s Your IBM i Application Debt? – How To Start App Modernization

By Frances Lash | December 26, 2014

Screen Shot 2014-12-21 at 11.55.29 PM
In a survey conducted by Micro Focus it was estimated that mainframe shops around the world average around $11 million in application debt; the backlog of unfinished and un-started IT projects have increased by 30% in the last 2 years. The study did not go into IBM i shops, but the numbers are assumed to ... read more

Technical Debt: Is Management Only Getting Half the Picture?

By Frances Lash | December 22, 2014

CAST Technical Debt Webinar
Despite advancements in IT management’s visibility into the cost and quality of application  development, one issue remains to give IT management a full picture of their app development. This issue is how technical debt is calculated and presented to management, which usually does not present an accurate estimation of technical debt. In most cases only changes ... read more

Move Fast, Minimize Technical Debt

By Frances Lash | December 17, 2014

This is post with some tips for start-ups to minimize their technical debt. First, it needs to be decided which code is going to be kept. Start-ups will often make code that is temporary and some code that will definitely be around later. Therefore, when code needs to switch from temporary to sustainable the developer ... read more

Inheriting Bad Code: How to Fix and Prevent it

By Frances Lash | December 16, 2014

In this presentation by Kimber Lockhart, as part of the Hack Summit (the virtual conference for programers), she discusses what to do once you’ve inherited bad code. She speaks less about the source of bad code (low budget, high pressure to meet deadlines, company’s decision to hire poor developers) and more on the steps to ... read more