Thirty years of ad hoc patches have created a nightmare for anyone trying to fix code. Here is the problem, as described by GOVERNMENT EXECUTIVE.
On the allocation of resources necessary to complete a y2k repair job, see the
California White Paper.
* * * * * * * * *
Date fields are used in basic computer functions such as calculating, sorting, comparing, projecting, validating and simulating. Agencies use them in everything from weather forecasting and weapons targeting to inventory management and payment scheduling. Even the smallest federal agency could have thousands of programs requiring year 2000 conversion.
"The problem is complex, both from a management perspective and a technical perspective," says Rear Adm. James Davidson, commander of the Naval Information Systems Management Center. "The sheer size of this problem adds to the complexity because dates are everywhere. That means all program code must be examined to determine if a change is necessary."
Finding the dates can be difficult because they often are embedded in complex encoding schemes. Patches and updates that have been made to software since the 1960s have created what programmers call "spaghetti code" that runs around endless strings of references. These software mazes sometimes can be impossible to decipher.
"Proper data administration has never been done because no one thought it was necessary to keep a record of date stamps that appeared all over the place," says Bruce Rosen, manager of software standards at the National Institute of Standards and Technology. "It represented too much overhead, but now most of the original programmers are gone and along with them went the knowledge of how to safely change some of the source code."