CARELESS CODE RECYCLING CAUSES
KILLER KANGAS
The reuse of some object-oriented
code has caused tactical headaches for Australia's armed forces. As virtual
reality simulators assume larger roles in helicopter combat training, programmers
have gone to great lengths to increase the realism of their scenarios,
including detailed landscapes and - in the case of the Northern Territory's
Operation Phoenix- herds of kangaroos (since disturbed animals might well
give away a helicopter's position).
The head of the Defense
Science & Technology Organization's Land Operations/Simulation division
reportedly instructed developers to model the local marsupials' movements
and reactions to helicopters. Being efficient programmers, they just re-appropriated
some code originally used to model infantry detachment reactions under
the same stimuli, changed the mapped icon from a soldier to a kangaroo,
and increased the figures' speed of movement. |
Eager to demonstrate their
flying skills for some visiting American pilots, the hotshot Aussies "buzzed"
the virtual kangaroos in low flight during a simulation. The
kangaroos scattered, as predicted, and the visiting Americans nodded appreciatively...
then did a double-take as the kangaroos reappeared from behind a hill and
launched a barrage of Stinger missiles at the hapless helicopter. (Apparently
the programmers had forgotten to remove that part of the infantry coding.)
The lesson? Objects are
defined with certain attributes, and any new object defined in terms of
an old one inherits all the attributes. The embarrassed programmers had
learned to be careful when reusing object-oriented code, and the Yanks
left with a newfound respect for Australian wildlife.
Simulator supervisors report
that pilots from that point onward have strictly avoided kangaroos, just
as they were meant to.
*
From June 15, 1999 Defense Science and Technology Organization Lecture
Series, Melbourne, Australia, and staff reports |