|
"The
truly scary thing about the Millennium Bug is
its unpredictability", says Ian Partington
MD of Computer Experts, who explains the problems
of PC compliance.
Leave
us all alone. All we really want is to survive
the millennium roll over with as little inconvenience
as possible. And I get very frustrated at all
the hype, rubbish, doom and gloom, complacency,
ill informed, opinion, self styled experts,
the list is endless.
The truth? It probably won't be a total catastrophe,
and it probably will affect more people than
we expect. The main problem is its unpredictability.
THE
COMPLEXITY OF SYSTEMS
The reason is simple. It's the complexity of
the systems. Anyone who has used a PC for more
than a week will have probably experienced a
"crash". This is when the whole PC and software
"hangs" and usually you have no choice but to
reboot and start again. What caused it to crash?
Unless it becomes a persistent you'll never
know. It was just one of those things and it
will probably never happen again in the say
way (In computer science terms we call it a
"combinatorial explosion".) What has combinatorial
explosion got to do with the Millennium Bug?
Firstly, it means that we should do out best
to eliminate possible problems before the event.
Unlike the software crashes I described above,
the Millennium Bug is going to hit millions
of computers at a very exact time. Secondly,
it means that we should make no assumptions,
everything should be tested thoroughly. In software
engineering, we expect to spend about 50 per
cent of the time designing code, and about 50
per cent of the time testing it to see if it
worked in the way we predicted. It is due to
the complexity that you cannot assume that a
system will work in the way you expect. You
need to test it.
So are there seven levels of compliance? It
really doesn't matter. I'll describe some obvious
ones, but let's not bother counting them, you'll
be turning into a bore!
HARDWARE
COMPLIANCE
This is now the best understood, but still surrounded
by controversy. It's easy to describe. When
IBM introduced the "AT" (Advanced Technology)
PC in about 1980, they inserted a chip called
the Real Time Clock (RTC) chip. It's purpose
was simple, powered by a small battery, it had
to keep time when the PC was switched off. It
was designed to increment the year by one every
new year, but the "centurybyte", (currently
19) does not increment to 00, the 19 stays the
same.) This is almost certainly happening on
your PC right now. (Try our free Millennium
Bug Viewer off this web site to check).
It is compensated in modern PCs by BIOS inference"
When the RTC says it is 1900, the BIOS changes
it to 2000. Is that good enough? Here's the
controversy. Major manufacturers claim it is.
But remember the combinatorial explosion? Why
are we taking risks assuming that it will be
OK. Why aren't we using totally complaint RTC's
instead? (My White
Paper on this web site has more information
about this aspect.)
SOFTWARE COMPLIANCE
This includes operating systems and all other
software. Operating systems are almost entirely
beyond a PC user's control. And let's face it,
it is mostly Microsoft. So visit the Microsoft
web site (www.microsoft.com)
and get the latest information regarding millennium
compliance of their products. But take note,
the reports change. It is not safe to assume
that all the statements are definitive and rigid.
You'll need to keep checking occasionally.
For other software, again, if it is a common
application, you will have little control over
its compliance. Again, check the manufacturer's
statements. Can we take the manufacturers at
their word? Who knows, but what other choice
is there? Some experts recommend that you write
to the manufacturer for definitive statements,
to hold them liable if they mislead you, but
Bill Gates hasn't responded to any of my letters
so far!
But don't forget to test. First, get the hardware
sorted. Probably the best remedy now is a commercial
TSR (Terminate and Stay Resident) program which
constantly checks for the roll over then corrects
the TRC. Only once you have got the hardware
sorted should you go on to test software, otherwise
the tests you do will not be valid.
DATA
COMPLIANCE
The general advice is to change two digit years
(3/4/99) to four digit (3/4/1999). If you have
any formulas applied to spreadsheets or databases
to manipulate data, check them to see that they
do not make any assumptions about years. The
easiest demonstration of this is my doctor's
secretary. When I tell her my date of birth
(19/9/55), she works out the century for herself.
But computers need a formula to do this (called
a windowing algorithm) which says that if I
say my year of birth is 55, then I mean 1955
not 2055 or 1855. If you have formulas manipulating
dates, they need to be consistent to handle
this type of assumption.
SUMMARY
To sum up, I think the best advice is to make
no assumptions, use reputable firms to help
you with your compliance (there are lot of cowboys
out there), and to test, test and test again.
BACK
TO NEWS
|