A Hindrance or Asset?
In 1992, Ward Cunningham introduced a simple concept to the international software development community. The inventor of the wiki, Cunningham discussed how releasing a software program with code that is not well tested is like going into (technical) debt. The customers would see a functioning product, but the ability to update the program, adapt to new change and do so efficiently were compromised because of short term solutions that cut corners.
Technical debt is now a common term in the software development industry. Companies spend money assessing, controlling and “paying down” their technical debt in order to keep their products agile enough to compete in an environment where slow to market or slow to adapt can mean the death of the company. Or, to put it in other terms, not paying down your technical debt can lead to technical bankruptcy.
Technical Debt in the Accounting Profession
Technical debt is a highly specialized term in many circles. However, I believe the concept has broad business and technology implications in the accounting profession. If you don’t think you are in technical debt (or aren’t sure), let’s take a quick test.
- How many versions of QuickBooks do you support?
- How many applications do you run that are no longer on support contracts or updated regularly?
- In your firm, how many different “standard desktop” setups are there? This includes the main computer, monitors, etc. that are on a typical desk. Write down vendor, model, operating system, size of monitors and other descriptors in a matrix. See how many different variants you come up with.
- If you sat for 3 minutes, how many items could you list that are “that’s just the way it is” steps in your normal work processes?
What does technical debt mean to me?
The results of the test above will give you a score of sorts. Lower is better, and if it’s high, then you may have one or more technical debts in place. The point of this exercise is to show you that there are places in your firm where you’ve made choices that are like Cunningham’s description; a choice that is a shortcut. During the change that created the shortcut, not all of the questions and loose ends were addressed (or even known), resulting in a cost to maintain and an even higher cost to fix.
The issue with technical debt, like any debt, is that it accrues interest and must be paid off before a new “purchase” can be made. In many firms, the cost of the technical debt comes at the expense of innovation at either the technology or firm level. The resources for maintaining a large technical debt cannot be used for anything else. If you have a strong break/fix culture, or have a lot of fires that come out of nowhere, you are in a high technical debt situation.
How do I assess my technical debt, and what should I do with that information?
Regular review of all areas of technology and process as they relate to service lines will uncover your technical debts. The best way to uncover debt in existing systems is to do process reviews, either using Lean Six Sigma or another methodology. In doing so, you will discover areas of repetition, inefficiency or undocumented workarounds that highlight technical debts.
Once documented, you must look at each debt as an area of high potential. Finger pointing or defending debt can only lead to situations where that debt could default, leaving you in a panicked situation and little preparation to deal with the resulting problems.
Make sure that mistakes are used to find technical debt, and that the outcome is paying that debt down. Look past the “we’ve always done it this way” to see how much a stale process is actually costing you to maintain. Also, realize that a new system or application will not solve technical debts unless the debts being put into the new system are paid off. Vendor changes are a great time to assess and fix old debts, and as the new system rolls out, a way to acknowledge and deal with new debts incurred by the change.
Going forward, make sure you proactively keep track of technical debts. Decide on a regular basis what debts you will pay down, and make sure that you track new debts as they are incurred. This method of continuous improvement will improve your baseline of operations and allow your firm to adapt quickly to change demands, new niche development, and improved quality of service. Making you more successful and future ready.