Skip to main content

Have a difficult problem to solve?

Start a conversation NDD@corvusindustries.com

A Corvus Industries company

Let’s talk about
the hard part.

Tell us what you’re trying to build, fix, or improve. We’ll work through the next step with you.

Start a conversation

Good fit if…

What happens next

  1. Tell us what’s stuck.
  2. A first call to understand the work, with no commitment.
Corvx Insights

Software modernization

Keeping old systems running consumes most of the IT budget

US federal agencies spend about 80 percent of their IT budgets operating and maintaining existing systems, some of them more than half a century old. The safer exit is to replace them in stages, behind stable interfaces, rather than all at once.

Key takeaways

  1. The share of US federal IT spending on operations and maintenance rose from about 69 percent in 2011 to about 75 percent in 2015 and roughly 80 percent in recent years.

  2. Rising maintenance cost crowds out modernization. GAO found spending on development and modernization fell by $7.3 billion between fiscal 2010 and 2017.

  3. Some critical systems are more than 50 years old and run on languages and hardware that are no longer supported.

  4. Staged replacement behind a stable interface keeps the old system working until each part of the new one has been shown to produce the same results.

The maintenance share

The US federal government publishes unusually detailed data on what it spends to keep existing systems running, and the Government Accountability Office has tracked it for more than a decade. Of the $79 billion agencies budgeted for IT in 2011, about 69 percent went to operations and maintenance.1 By fiscal 2015 the share was about 75 percent.2 GAO’s more recent work puts it at about 80 percent of annual federal IT spending of more than $100 billion.3

Figure 1Running existing systems takes a growing share of federal IT spendingOperations and maintenance, percent of US federal IT spending

Note: “Recent years” is GAO’s description of agencies’ typical reported share in its 2023 testimony.

Source: US Government Accountability Office, GAO-13-871, GAO-16-4682 and GAO-23-1068213.

Federal agencies are an extreme case, but they are not unusual in kind. Any organization that has run the same core systems for decades faces the same arithmetic: every year of deferred replacement adds to the cost of the next.

Maintenance crowds out change

Budgets do not grow to absorb rising maintenance. GAO found that increased operations and maintenance spending over fiscal 2010 to 2017 coincided with a $7.3 billion decline in spending on development, modernization and enhancement.2 The money to replace old systems was being spent keeping them alive.

The same report listed some of the oldest systems still in use. Several were more than 50 years old, written in assembly language or COBOL, and one ran on 1970s hardware that used 8-inch floppy disks.2

Figure 2Some critical federal systems were more than half a century oldAge of selected legacy systems as reported by agencies in 2016, years

Note: Ages as reported by the agencies. Some components may be newer than the system as a whole.

Source: US Government Accountability Office, GAO-16-4682.

What makes a system legacy

Age alone is not the problem. Many old systems are reliable. A system becomes a liability when one or more of the following applies.

Unsupported platform
The operating system, runtime or hardware no longer receives security fixes, so risk rises every month without any change to the code.
Scarce skills
Few people can change it safely, and they are expensive or close to retirement.
Undocumented rules
Business rules exist only in the code. Nobody can say with confidence what the system does in every case.
Tight coupling
Other systems read its database directly, so any change to its structure breaks something elsewhere.
Locked data
Data can be extracted only through batch files or screens, which slows every project that needs it.

Why staged replacement

A full rewrite asks an organization to rebuild decades of undocumented behavior, then switch over in one step and hope nothing was missed. Staged replacement, sometimes called the strangler fig pattern, puts a stable interface in front of the old system and moves one capability at a time behind it, until the old system has nothing left to do.4

The test for each stage is simple: the new path produces the same results as the old one, on real data, before the old one is switched off.

The approach is slower to announce and faster to deliver value. Each stage is small enough to test against the old system’s output, and each one retires a piece of maintenance cost. If priorities change halfway through, what has been moved stays moved.

Five stages

  1. Record what the system doesCapture inputs and outputs from production as characterization tests before changing anything.
  2. Put an interface in frontRoute callers through an API or message layer so they stop depending on the old system’s internals.
  3. Move one capabilityChoose a capability with clear boundaries and high maintenance cost, and rebuild it behind the interface.
  4. Run both and compareProcess real transactions through old and new paths in parallel and reconcile every difference.
  5. Retire with evidenceSwitch off the old path only when the comparison is clean, and record the maintenance cost removed.

References

  1. 1.US Government Accountability Office. Information Technology: OMB and Agencies Need to More Effectively Implement Major Initiatives to Save Billions of Dollars (GAO-13-87). 2012. gao.gov
  2. 2.US Government Accountability Office. Information Technology: Federal Agencies Need to Address Aging Legacy Systems (GAO-16-468). 25 May 2016. gao.gov
  3. 3.US Government Accountability Office. GAO-23-106821. 2023. gao.gov
  4. 4.Martin Fowler. “Strangler Fig Application.” martinfowler.com

Figures are taken from the sources listed and were current at publication. Charts are redrawn by Corvx from the original data; illustrative calculations are labeled as such. This article is for information only and is not legal, financial or licensing advice.

Nguyễn Đức Đạt

Written by

Nguyễn Đức Đạt

Corvx

Discuss this analysis