"Исторически среди военных служб программное обеспечение было излишне "балканизировано", - считает Джон Пайк из Федерации американских ученых.
Он отметил, что когда Министерству обороны пришлось координировать крупные программные проекты, никаких серьезных прецедентов такого рода деятельности не существовало.
Программное обеспечение в военных учреждениях в большинстве своем не только написано на специализированных языках, но и спроектировано с учетом возможности работать в относительной изоляции от других систем, как объяснил Пайк. В то время как Пентагон пытался связать между собой все эти разнообразные системы, специалисты искали кратчайшие пути решения этих задач. Таким образом, эти связанные системы могут иметь недочеты, чреватые ошибками, спровоцированными "проблемой 2000 года", которые проявятся только в весьма специфических ситуациях.
В ряде отчетов Центрального финансово-контрольного управления и Министерства обороны США отмечается, что многие военные системы недостаточно продуманы. В феврале прошлого года, к примеру, представители управления сообщили, что программное обеспечение для бомбардировщика B-1B оказалось "сложным и плохо документированным; его пришлось модифицировать в течение нескольких лет, что привело к увеличению стоимости поддержки этой системы".
Пентагон попал в затруднительное положение, поскольку решение проблемы 2000 года напрямую связано с технической поддержкой программ.
Министерство обороны опубликовало "сертификационную анкету", которая позволяет владельцам систем утверждать, что их продукты, если они соответствуют определенным критериям, смогут безошибочно функционировать с наступлением 2000 года. Но в Пентагоне считают, что абсолютно надежных тестов, позволяющих надеяться, что системы "не заразят одна другую" ошибками, связанными с изменением даты, до сих пор создать не удалось.
Большинство подразделений еще оценивает расходы на проведение работ и планирует с получением дотаций завершить работу к концу 1998 года. Окончательное тестирование системы намечено на 1999 год.
Военные всего мира готовятся к 2000 году
Может ли 2000 год стать годом Армагеддона? К счастью, и военные, и эксперты однозначно говорят "нет".
Хотя чувствительная к дате информация используется в программном обеспечении, управляющем запуском межконтинентальных баллистических ракет, по словам представителя Стратегического командования США, "были проверены все случаи в имеющихся компьютерных системах и принято решение по каждому из них".
Независимые эксперты также считают, что возможные ошибки, связанные с проблемой 2000 года, не приведут к несанкционированному запуску ядерных боеголовок, но могут спровоцировать другие неприятности. К примеру, подобные ошибки могли бы привести к отказу при санкционированных пусках из-за изъянов в системах коммуникаций или системах, используемых для обслуживания ракет.
Этот вид неопределенных сбоев в каждом виде вооружений, где применяется программное обеспечение, обнаружить весьма непросто. Возьмем, к примеру, случай "бродячих" торпед норвежских вооруженных сил, которые в начале 1990-х годов настолько уклонялись от курса, что одна из них вернулась на исходный корабль.
Ингвар Торнстад, инженер по электронике и бывший офицер норвежской армии, сказал, что торпеды получали сигналы с неточными данными, поскольку новая информация об их местоположении передавалась на доли секунды раньше или позже, чем полагалось. По мере движения торпеды, которое продолжалось несколько секунд или минут, ошибки накапливались еще и за счет недочета в логике приложения, и торпеды отклонялись от курса.
Эти ошибки возникают только в секундных разрядах, но многие подобные "встроенные системы" используют в критичных вычислениях и годовые разряды значения, отметил Торнстад, который теперь является главным научным специалистом компании Ascent Logic, занимающейся системной интеграцией и консалтингом.
Как отмечают бывшие и действующие военнослужащие, встроенные системы, использующие годовые разряды, применяются для слежения за целями, определения траекторий для самолетов и ракет, шифров и передачи приказов.
Даже если само приложение не используется в течение нескольких лет, соответствующая система, управляющая лицензиями и конфигурациями ПО, может пасть жертвой ошибок, возникающих при обработке данных.
Руководство ВВС США поняло это в марте, когда некорректно установленная дата истечения срока действия лицензии на текстовый процессор привела к отказу приложения во время проведения военных учений. В результате не были переданы критически важные данные, что привело к экстренной посадке 2700 самолетов в и задержке операции вплоть до исправления ошибки.
Проверка, последовавшая вслед за этим инцидентом, выявила аналогичные проблемы и в более серьезных приложениях, в том числе в системе, генерирующей данные и изображения, необходимые для определения целей. "Хорошо, что это произошло на учебном полигоне, - сказал генерал ВВС США Карл Стейлинг. - Больше всего нас пугает то, что возникновение подобных ситуаций невозможно отследить".