New Scientist - USA (2020-11-07)

(Antfer) #1

48 | New Scientist | 7 November 2020


understanding techniques”, which analyse
software to tease out the assumptions
and architectural decisions that went into
making it, and how individual modules are
interlinked. That allows developers to tweak
individual bits of a system without knock-on
effects that might otherwise bring down the
whole house of cards.
Heading off the legacy problem doesn’t
need fancy tools, though. Building software
tests that check if later edits will introduce
errors is an effective, but often neglected
practice, says Scott Ford, founder of
Corgibytes, a company that specialises
in remodelling legacy systems. An even
more rigorous approach is test-driven
development, where developers build tests

before they start coding. “You’re building
your safety net as you go,” says Ford. Open-
source principles, where developers share,
reuse and modify each other’s code, can give
more people an incentive to maintain it.
Ford is part of a burgeoning movement of
“menders” that aims to change a prevailing
culture that regards code maintenance as
second-rate work. But there is only so hard
you can fight decay. Even the act of choosing
a programming language or software
product is tantamount to placing a bet
on how long it will stay in fashion. “As soon
as a developer pushes something out and
somebody else has to come along and
maintain it... it is legacy,” says Baker.
Any system in regular use will face
pressure to change, says Ford, sometimes in
unpredictable and sudden ways, as with the
US unemployment systems. “They assume
that it was working yesterday, it’ll continue
to work tomorrow,” says Ford. “But that
pressure is going to show up; so if you don’t
have the human infrastructure in place to be
able to respond to it, you can be caught by
surprise.”
There are no silver bullets. Staying on
top of the legacy software problem means
investing in maintenance and adopting
best practices when building new systems.
IT managers will always face trade-offs
between the robustness of their software,
its cost and how quickly they can deploy new
services, says Winstanley. But every shortcut
makes it trickier to modify code later,
resulting in the build-up of “technical debt”.
“You need to find the space in your
planning to pay down that debt just like
any other debt that you’re taking on as a
business,” he says. “If you just let that pile
up, at some point, the debt is overwhelming
and you go bankrupt.” With our shaky
computer systems, it is increasingly looking
like payback time. ❚

Mass flight cancellations hit
Baltimore/Washington
International Thurgood Marshall
Airport on 15 August 2015,
in an incident attributed to
outdated computer systems

Edd Gent is a freelance writer
based in Bangalore, India.
He tweets @eddythegent

working from home, many of his clients
are scrambling to enable remote access
to ageing office computer systems, and
dramatic shifts in business models are
forcing painful overhauls. “It’s only when
you start needing to change fundamentally
core policies that this stuff really comes
to the surface,” he says. “It’s been hidden
by a veneer of transformation.”
Some help is at hand. Owing to the
huge amounts of legacy software operating
on its hardware, IBM has built a way for
customers to map their sprawling systems,
which spits out a visual diagram of
how different software modules and
components work together. It has also
developed an AI-based tool that can
recommend the most efficient strategy
for modernising a company’s software.
Such tools can help new IT staff get up
to speed and shine light on those dark
shadows in legacy code, says Baker.
“It’s shown to be really valuable for
these clients that have maybe atrophied
in their ability to keep doing the care and
feeding of those applications,” he says.
DARPA, meanwhile, has launched a
program called V-SPELLS to develop ways to
recover lost code knowledge. It has called for
proposals for “advanced automated program

“ Choosing


software or a


programming


language is a


bet on how long


it will stay in


fashion”


RO

B^ C

AR

R/G

ET
TY
IM

AG
ES
Free download pdf