What Makes a Great Team Member? This is so true! Our project management team, and some other people I know fit this description pe...
Global Financial Crisis is a time to reduce technical debt
Share This -
Global Financial Crisis is a time to reduce technical debt
As witnessed recently, a build up of toxic debt can lead to
a major crisis.I am not talking of
financial debt that caused the GFC here; I am talking of the build up of technical
debt.Just like financial debt, technical
debt is borrowing from the future – and the cost of that debt is interest
(which doesn’t reduce the debt) and repayments (which does reduce the debt).
Making the informed decision to introduce a kludge to get a
project out the door is not a bad thing – just like sustainable financial
borrowing it can be beneficial and can increase revenue.What is more worrisome is debt introduced
without the informed decision making process such as hacks that never get
documented or reported, or the continuous accumulation of debt without ever
planning repayments.As with finance,
the theory is that a small amount of debt is good, but as your debt accumulates
you get caught in a never ending spiral of struggling to pay interest on the
debt without either reducing the debt or increasing your asset base.IT systems that never repay their debt get
replaced at great expense when they become unwieldy – so reducing the debt can
extend the life of a system and save on long term costs.
Technical debt differs radically from financial debt in one
specific area, and that is there is not a third party requiring the debt to be
repaid.The result is most projects do
not understand their level of technical debt.As the debt gets bigger so does the “interest” and as the work
implemented is interest plus new functionality, too much debt destroys
productivity.
As the technical debt builds up the difficulty of
maintaining a system is increased and the cost of adding functionality can go
beyond any expected return.Consequently,
clearing this debt can reduce maintenance costs and extend the life of the
system.The level of stress of the staff
working on the system is also reduced, and their morale normally improves.My domain experience is in software engineering
and developers who have no chance of removing technical debt have lower morale
than those who are supported in removing that debt.
Debt can occur in any technical implementation from
birds-nests of cabling and patching to littering source code with TODO’s (or
worse just bad code).The first thing
most organisations need to do is gain an understanding of what debt the
organisation has.Then a plan can be
created to reduce debt in a controlled manner.
An example is a friend of mine works for a company supporting
very old versions of a database that is no longer supported by the vendor.He has put in notice so the
company has to employ someone who can maintain these old databases. The cost of
employing someone will be greater than the cost of upgrading the customer for
free to a version where they have existing skills.As there is not enough time before my friend
leaves this cannot happen – but foresight may have saved the company an FTE.
Throwing in a freebie upgrade of the database may be seen as
giving away work in the short term – but the medium term implication is that
the old database(s) can be retired and the support skills will no longer be
required.So rather than supporting
versions 3, 4, and 5 we can now focus on supporting just version 5.The maintenance agreement means the (small)
income generated for maintenance now goes from cost recovery to profit using
standard economies of scale. It also means the next project costed is cheaper
and more likely to be funded – thus increasing income.
With the GFC many projects are either being cancelled or at
least delayed – this gives us time to assess our technical debt and implement a
reduction strategy.It takes someone
with vision to implement a debt reduction strategy – but the up side is the
productivity gains that can be made.So
while it is difficult to get funds to reduce the debt in a system, the debt
reduction may bring in extra income (real $$$).If a system is big and unwieldy it is difficult to make minor additions
without a major project.Reducing the
debt can increase agility and allow smaller projects to be undertaken.If a larger number of smaller projects are
undertaken income may actually increase on this strategy.
Comments (1)
1. 03-16-2009 23:48
This is an excellent article that could come under the title of "crossing that bridge when we get to it"
So much money is lost over the long-term by strategies that cut corners and get things out the door in the fastest way possible without an understanding or appreciation of the ramifications.
Registered
Only registered users can write comments. Please login or register.