This Week in BMJ | Editor's Choice | Press releases | Advertisement details


BMJ No 7080 Volume 314

Editorial Saturday 22 February 1997


Clinical information systems and the year 2000

Ensuring that dates are correct will be expensive but not doing so could cost more

In what sounds like a horror story, the crash of as many as 45,000 computer systems is predicted as the year 2000 dawns.1 Awareness is now growing of the problems posed by the millennium for computer systems, which is caused by the way that these systems handle dates. For all industries worldwide to correct their date handling before 2000 may cost as much as $600bn (£400bn).2 Clinical information systems represent a proportion of this problem, and those responsible for them need to take steps now to ensure that they do not fail in three years' time.

The millennium problem is the result of a shortcut often taken by those implementing computer systems to save memory or disk space. The shortcut is to truncate the four digits of a year to two - 1997 is shortened to 97. Calculating with truncated years which span the millennium gives incorrect results - for example, someone born in 1999 becomes -99 years old, not 1. A more insidious error is that comparison of pre with post- millennium truncated years may not be correct, and consequently age, period, and date related functions - such as child health checks and recalls for cervical smears - may fail to work properly.3 Other problems may be that computers will incorrectly date files,4 computer clocks will reset to incorrect years,5 and files created after 1999 may be purged automatically.

Unfortunately there is no easy way of detecting which systems have the problem or of fixing it. Year truncation is particularly prevalent in systems developed in third generation languages such as cobol, fortran, C, basic, or mumps. Even if designs may have specified four digit years and been documented as such, individual programmers may have consistently or inconsistently truncated dates during implementation. Programmers may have added the numerical constant 1900 or prefixed the string "19" to offset truncated dates in systems with full and truncated dates, so obscuring the problem on casual scrutiny. Newer clinical information systems using database management systems should be less prone to date truncation,5 but even many of these inherited specifications or data from earlier systems using truncated years and may therefore also have truncated dates.

Fixing the problem will probably demand manual, line by line inspection of source programs to identify truncated years and other forms of inadequate date handling. All this requires expert knowledge of the software, is time consuming, and not amenable to automation.6 The work itself has considerable potential to introduce a new wave of software defects,6 and managing projects to carry out the necessary work may cost more than the work itself.4 Finding source programs may prove impossible for some clinical information systems, and these may have to be abandoned.

Although estimating the size of the problem for clinical information systems is virtually impossible, at least 25,000 individual systems of at least 500 different types are probably routinely used in Britain. Any system written in a third generation language - and there are many - is highly suspect, while those written in database management systems are less suspect but still need to be cleared. Assurance of correct date handling is especially important when patient safety might be compromised3 or large financial losses are possible - for example, in contract datasets.

Unhappily, there are no benefits to the expense of meeting the millennium other than maintaining continuity of operation and ensuring patient safety. It is, however, work which must be done, and done soon.

M F Smith

Department of General Practice and Primary Care,
St Bartholomew's and the Royal London Hospital's School of Medicine and Dentistry,
London EC1M 6BQ

References

1 Reeve S, Adams J, Davison J. Millennium meltdown. Sunday Times 1996; Jun 9:10.

2 Geppert L. Fresh dates are giving computers indigestion. IEEE Spectrum 1996; May:75.

3 Smith M F. Are clinical information systems safe? BMJ 1994;308:612.

4 Alexander S. Will client/server skip the millennium? Network News 1996; Jun 12:13.

5 Bloor R. Millennium mayhem. DBMS Magazine 1996; Jun:5.

6 McCabe T. Cyclomatic complexity and the year 2000. IEEE Software 1996; May:115-7.


Current contents | Classified ads | Archive and search | Local editions
Extras | Advice to authors | Reprints | Subscriptions | Feedback | Home