About the Year 2000 Problem

The Year 2000 (Y2K) problem is caused by three main issues:

All organizations must address the implications of these issues. Unfortunately, the use of dates for calculations is pervasive throughout the software industry and that usage is not standardized. As a result, there is no simple fix to the problem. As the following descriptions of the three Y2K problems indicate, you must fully consider potential problems with every piece of hardware, software, and embedded system code to estimate how Y2K will affect your organization.

Two-digit date storage
The most common and damaging problem occurs when software has been written to store and manipulate dates that use only two digits to indicate the year. Calculations based upon these two-digit dates will not execute properly if the software cannot recognize that 00 (2000) is a larger number than 99 (1999).
Leap year calculations
Leap years are calculated by a simple set of rules. The Year 2000 is a special-case leap year that only occurs once every 400 years. Unfortunately, many computer systems and applications do not recognize the year 2000 as a leap year. This causes all dates after February 29, 2000 to be offset incorrectly by one day.
Special meanings for dates
The third problem is more commonly found in older code bases. To write more efficient code that allowed for the use of less memory, developers sometimes used date fields to provide special functionality. The most common date used this way was 9/9/99. In some applications, the use of the special date meant "Save this information item forever," "Remove this information item automatically after 30 days," or "Sort this information item to the top of the report." Many organizations used special date codes differently. This variability is one of the main reasons that no single tool can locate all uses and misuses of date information.

Related Topics

Topic Link

View Product Compliance Results

Topic Link

About Microcomputer Year 2000 Issues

Topic Link

About Microsoft's Year 2000 Effort

Topic Link

About Product Compliance Types and Levels

Topic Link

About Product Compliance Database Design

Topic Link

Product Compliance Overview