What Is Technical Debt and How to Reduce It
by IPv4.Global Staff
Broadly speaking, “debt” is the current obligation to pay a creditor, normally to compensate for an earlier benefit of some kind. In IT, a “technical debt” refers to the obligation to re-work or expand a system due to an earlier decision to deploy a solution with (usually) only short-term or limited-scope capacity. In other words, a technical debt results from an immediate solution applied to a need when broader fixes might have been better. Such roads-not-taken were normally either time-consuming and/or expensive to deploy. Sometimes, the better solution simply wasn’t available yet.
Intentional technical debt can be taken on as a strategic decision, much like financial debt. This is often done when fast growth is needed and that growth will pay for the debt’s interest.
Unintentional technical debt accumulates when regular maintenance is ignored for a long time. When organizations change, their supporting tools need to change, too. When they don’t, organizations end up paying for keeping imperfect technologies. Software engineer Steve McConnell described it as “the non-strategic result of doing a poor job.”
The Sources of Technical Debt
Technical debt accumulates when organizations don’t adequately plan for the growth of their systems and/or changes in them. Or when business processes and technology change faster than systems adapt.
In networks it is often foundational systems that are overlooked as more “surface level” applications are adapted because high-visibility items are updated as corporate environments change. The underlying system can find itself ignored simply because it has managed to continue working with consistent fixes and ongoing maintenance. But the challenge is that, over time, these IT debts continue to accrue, even as the systems are used – or not. Just like physical infrastructure – technical infrastructure ages in place, whether you use it or not. If it isn’t the infrastructure itself, the operational and institutional knowledge ages in place at the same time.
IT Systems are no different in this regard. As systems continue to empower the organization to generate revenue and facilitate growth, “it is running now, why change it” embodies the risk that every CIO and CTO will understand. Why introduce very real risk into a “working” environment when the downside (outage, downtime, reputation) can be so significant to the organization? There needs to be significant upside to addressing technical debt – and unfortunately, it ties directly to the strategic initiatives of an organization (what we should do in the future) and not as strongly to the operational initiatives (what is needed now).
Gaining Control
When it comes to technical debt in IT, gaining control is never as easy as “upgrade to current”. It’s also not as easy as “hire a consultant” or “outsource it” might seem. Control comes with understanding the operational landscape of your organization and how it relates to your strategic initiatives. Control is also how your changes are maintained over time. Addressing technical debt with methods that don’t have long-term efficacy puts your organization of the position of increased risk with higher costs. This is not a good combination.
Keep an Eye on the Future
One way of approaching a control mechanism is to imagine how your future self will regard it. Changes that address immediate issues won’t necessarily address systemic problems and will likely bring new issues. Ideally, addressing technical debt aligns with your strategic goals – but also brings in improved methods and supports your organizational culture. This organizational support is exactly why “one size fits all” simply isn’t realistic as there are humans involved in maintaining these processes moving forward. With this additional goal in mind, suddenly flaws in the usual strategy of “buy tool X” become apparent. A lasting control mechanism acknowledges this reality and gives you the ability to grow into the solution for the long-term.
Why have an eye on the long-term? When addressing technical debt, you will be confronted with both short and long-term solutions, along with the challenge of prioritizing these items effectively. To make this more interesting, it is likely that for these solutions to be successful, they will have an impact across business units or teams. IT challenges have only grown over the years with the increased dependency on these systems. Outsourcing to the cloud only reduced (hopefully) some of the operational costs, but it brings out management overhead that needs to be considered. As you look at addressing technical debt, one of the first steps you can take is doing an audit or at least examining what your sources of information are today.
Control also comes with understanding that there are changes that may be needed in your organization – your business processes as well. When it comes to understanding the scope and impact of technical debt, it is crucial to keep your strategic goals in mind.
How to Regain (Network) Control
Older deployments are less likely to have centrally managed configurations. Configuration management has been around since the 1950s but early IP networks didn’t use it. This means the configurations for some older systems are unmanaged and often undocumented.
Mergers, acquisitions, and corporate restructuring make this more likely. Networks are often duplicated or extended but not removed or reorganized. Many connected systems use different address blocks because their configurations weren’t updated.
Unmanaged systems are not just invisible to management, they are attractive to criminals. If they can find an unpatched system on an internet-connected network, they can use it to jump onto others. They can gain unauthorized access to information or control of the systems themselves.
Configuration management and network orchestration can manage this risk. They put power into the hands of each enterprise’s technology owners. Proprietary and open-source tools to facilitate that orchestration were introduced in the early 2000s. The available solutions are numerous, mature, and with a wide range of functional variation.
The first step to managing this management technology is to find out what exists. One way to do this is to use an IP Address Management (IPAM) tool to scan your network and identify what is deployed. Think of IPAM as a business planning tool that can be linked with more specific task management tools. IPAMs will:
- Show you what IP address ranges are configured on your network
- Which IP addresses are used, and
- Which devices are using them.
With this data you are empowered to improve efficiency in several ways.
You will be able to reorganize systems to improve efficiency because you have full visibility of your network. You can free up unused addresses. You can also plan for future usage and reserve resources for where they are needed.
ReView, a free tool provided by IPv4.Global and 6connect, can perform audits of this kind from inside your own network. It can give you information about your local network and address usage on cloud services.
6connect’s full tool will do more. For instance:
- It can synchronize DNS records with devices by integrating with DNS software.
- It can integrate with DHCP to give devices the right IP address and DNS resolver configuration when they start.
- It can also connect to a wide range of external services and keep them updated and synchronized.