о проведении анализа состояния информационных систем в госучреждениях было принято лишь 30 мая, так называемые "центры компетенции" созданы только созданы, а окончательную оценку необходимых затрат на решение проблемы предполагается получить только в конце года. Статья, которую мы решили опубликовать, появилась в еженедельнике Computerworld 13 февраля 1984 года и стала первой публикацией в крупном издании, посвященной проблеме 2000 года. В ней шла речь о системном аналитике Уильяме Шоене, одном из начинателей "крестового похода" против "ошибки тысячелетия". Доводы Шоена вызывали некоторый интерес у руководителей отделов по обработке данных (так пятнадцать лет назад в корпоративной Америке было принято называть нынешние отделы информационных систем), но ему мало кого удавалось убедить в серьезности проблемы.


Проблема о существовании которой вы не подозреваете

Пол Жилин
Computerworld, США

Каждая из программ, написанных на Коболе, содержит ошибку. Вы, вероятно, не знаете, в чем она заключается, и уж почти наверняка не заботились о том, чтобы ее не допустить. Однако, когда она даст о себе знать, это отразится на работе всей вашей компании, а процесс ввода данных будет сопровождаться непрерывным потоком сообщений об ошибках.

Ошибка проявит себя с наступлением 2000 года. Со сменой тысячелетия связана проблема, о которой лишь изредка упоминают на конференциях, да складывают шутки в отделах обработки данных. Однако мало кто из специалистов отрасли воспринимает ее всерьез. Суть проблемы заключается в повсеместном использовании двухсимвольных полей даты в программах, написанных на КОБОЛе. При сравнении дат процедуры проверки ошибок считают, что чем больше значение года, тем больше сама дата.

Соответственно с наступлением нового века программы по-прежнему будут считать, что "00" меньше, чем "99".

Шоен так описывает неразбериху, которая возникнет, если ошибку не устранить: "Практически все программы начнут работать неправильно. Выполнение процедур последовательной обработки данных будет аварийно прерываться. Подавляющее большинство модулей оперативной обработки, содержащих последовательные проверки, не будут воспринимать новые даты. Перестанут работать программы сортировки.

Проблема привлекает мало серьезного внимания в среде специалистов по обработке данных. Оно и понятно, ведь существуют гораздо более актуальные трудности. Однако, по мнению Шоена, вопрос "совместимости" программ с 2000 годом следует решать уже сейчас, чтобы избежать лишних хлопот, когда он приблизится. По оценке Шоена, большинство крупных компаний располагают библиотеками, состоящими из тысяч программ на КОБОЛе, большая часть которых содержит по крайней мере по одному полю даты. Кроме того, во многих из этих программ неоднократно используются литералы, процедуры последовательной обработки и подпрограммы проверки на ошибку, а следовательно, устранение несовместимости потребует множества модификаций.

"Hельзя рассчитывать на то, что каждое поле данных называется date, - говорит Шоен. - Кроме того, не каждое двухсимвольное поле является полем даты. Чтобы выявить все ошибки, придется тщательно проверить каждую программу".

Соответственно использование принципа "черного ящика", когда каждую программу просто подвергают универсальной процедуре автоматической модификации, недопустимо, поскольку некоторые поля даты при этом будут пропущены. Единственное реальное решение - писать все новые программы так, чтобы они были совместимы с 2000 годом.

Шоен разработал методику, которая в этом поможет. За 995 долл. он предлагает приобрести пакет Charmar Correction, в который входят две подпрограммы на Коболе, необходимые для обеспечения совместимости новых программ с 2000 годом, описание методологии борьбы с проблемой и аналитические услуги.

"Мои процедуры заставляют программы работать правильно; кроме того, я снабдил их рекомендациями по упрощению подпрограмм сортировки", - говорит Шоен.

Шоен привел несколько расчетов, показывающих, что бороться с проблемой следует уже сегодня. По его оценке, модификация программы стоит около 300 долл., а в средней корпоративной библиотеке на одного программиста ныне приходится как минимум по 50 программ. Даже если модификации требует всего половина из них, то, если откладывать процесс до последней минуты, расходы на каждого программиста составят 7500 долл.

По прогнозу Шоена, если компании начнут модификацию сейчас, к 2000 году несовместимыми останутся менее 2% от всех программ. Однако, уже через шесть лет эта цифра возрастет до 25-30%.

"Зачем выпускать несовместимое с 2000 годом программное обеспечение, если этого можно легко избежать?", - недоумевает Шоен. Увы, пока ему внемлют не многие. Более того, не раз охранники просто выводили Шоена из офисов под руки.