ISSN 0236-235X (P)
ISSN 2311-2735 (E)
4

09 Сентября 2024

Инструментальные средства поддержки решения проблемы 2000 года


Сотников А.Н. (asotnikov@iscc.ru) - Федеральный исследовательский центр «Информатика и управление» РАН, ул. Вавилова, 44-2, г. Москва, 119333, Россия (главный научный сотрудник), г. Москва, Россия, доктор физико-математических наук, Соловьев С.Ю. () - , Гинкул Г.П. () -
Ключевое слово:
Ключевое слово:


     

Проблему некорректной работы компьютерных систем, возникающую вследствие использования укороченного формата представления дат, называют Проблемой 2000 года (далее Проблема), а связанные с ней ошибки в работе программно-аппаратных комплексов – Ошибками 2000 года. В 1999 году Проблема получила мощное общественное звучание, далеко выходящее за пределы информационных технологий. В настоящей статье нас будут интересовать специфические программные продукты, появившиеся в связи с необходимостью решения этой задачи.

Решение Проблемы – процедура существенно неформальная, требующая от руководителей и исполнителей определенного творческого подхода. Более того, любые действия по решению Проблемы необходимо прежде всего соотносить с наличными ресурсами и возможностями того или иного предприятия, поэтому решения, зарекомендовавшие себя в фирме А, совсем необязательно пригодны для фирмы Б. Вместе с тем некоторые этапы решения Проблемы просто-таки созданы для автоматизации. В самом деле, содержимое компьютера, его BIOS и файловая система вполне доступны для исследования программными средствами, аналогичные средства – антивирусные программы – давно вошли в повседневную практику.

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

Классификация инструментальных средств

Наибольшее количество программных продуктов создано для проверки компьютерных часов. При этом, как правило, реализуется один из двух подходов. Первый и наиболее опасный из них состоит в том, что программа устанавливает на системных часах определенные время и дату, а затем (через 1-2 секунды) сверяет полученный результат с заранее известным. Такого рода программы имеет смысл применять при загрузке компьютера с автономной дискеты, причем по окончании работы следует проверить корректность восстановления системных часов. Второй подход состоит в считывании типа BIOS и проверке его готовности по заранее известному справочнику готовности различных BIOS. Такой подход гарантирует пользователя от незапланированных срабатываний в его компьютере в связи с изменением значения системных часов.

Независимо от похода, реализованного в программе проверки компьютерных часов, к полученным результатам следует относиться скептически. Опыт показывает, что во многих случаях программы проверки системных часов либо перестраховываются, то есть показывают несуществующие дефекты, либо не находят дефекты, существующие реально. Все-таки наиболее надежным способом проверки системных часов остается ручная технология.

Другой класс программных продуктов поддержки решения Проблемы предназначен для инвентаризации программного обеспечения компьютера или сети компьютеров. Продукты такого рода последовательно рассматривают все файлы жесткого диска(ов) и по тем или иным признакам определяют наименования, версии и производителей установленных программных продуктов. Чаще всего такие программы используют самоидентифицирующую информацию, заложенную в файлах программных продуктов, однако таким способом практически невозможно идентифицировать программы для DOS. Если программа инвентаризации дополнительно снабжена справочником готовности коммерческих программных продуктов, то одновременно с инвентаризаций пользователь может получить и оценки готовности к 2000 году имеющегося у него программного обеспечения.

Следует понимать, что независимо от способа реализации все программы инвентаризации являются эвристическими, реализующими то или иное правдоподобное правило идентификации программных продуктов. При этом вполне возможны случаи несрабатывания правила идентификации. Кроме того, независимо от объема и полноты справочника практически на каждом компьютере выявляется некоторое количество неопознанных программных продуктов, с которыми необходимо работать индивидуально.

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

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

Серьезные системы поддержки решения Проблемы, как правило, реализуют функции нескольких классов и предоставляют дополнительный сервис анализа результатов и подготовки документов. Рассмотрим подробно характеристики программных продуктов.

Программа "Переход-2000: Самотестирование по Y2K" разработана компанией Manufacturing Extension Partnership [1] для поддержки процесса решения Проблемы на предприятии. Программа опирается на детальную типовую методику решения Проблемы.

Создатели программы исходили из того, что задача состоит в управлении предприятием, а вовсе не в проблеме информационных технологий; главное – обеспечение нормальной деятельности предприятия при переходе к 2000 году.

Фактически Переход-2000 – это АРМ руководителя Проекта 2000 года на предприятии. Одновременно программа выполняет функции системы, обучающей методике решения Проблемы.

С точки зрения разработчиков программы процесс решения Проблемы состоит из четырех этапов: 1) инвентаризация, 2) оценка критической значимости информационных технологий для деятельности предприятия, 3) планирование действий на случай чрезвычайной ситуации, 4) корректировка.

Инвентаризация проводится по четырем категориям программно-аппаратных систем: аппаратное обеспечение, программное обеспечение, встроенные системы и внешний обмен данными. Для каждой системы, подлежащей инвентаризации, необходимо определить ее категорию, активизировать соответствующий пункт меню и с разумной подробностью заполнить 15 полей специальной формы. Заполненная форма – позиция инвентарной ведомости – сохраняется в базе данных. В дальнейшем форма доступна для редактирования, копирования, печати и экспорта.

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

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

Корректировка предполагает мониторинг и управление процессом решения Проблемы на предприятии, то есть процессом выполнения Плана 2000 года.

Замечание. Методика программы Переход-2000 в части переписки с поставщиками (этап 2), в частности, ориентирует пользователя на то, что "заявления поставщиков программно-аппаратного обеспечения, размещаемые поставщиками на своих сайдах, являются документами, которые имеют практически такую же силу, что и письменный документ". Однако это не совсем верно. Например, по заявлению компании Hewlett Packard "информация о статусе продукции HP в отношении 2000 года представляется "как есть" без каких-либо гарантий и может изменяться без уведомления".

Программа Переход-2000 реализована на базе Microsoft Access-97. Имеется русифицированная версия и программного продукта, и подробной программной документации.

Система ClickNet Y2k разработана фирмой PinPoint Software Corporation [2] и предназначена для инвентаризации и оценки готовности к 2000 году программно-аппаратного обеспечения одного или нескольких компьютеров. Инвентаризация и оценка рассматриваются как процессы, растянутые во времени и требующие периодических пересмотров и уточнения результатов.

Интеллектуальную основу системы ClickNet Y2k составляет справочник готовности к 2000 году различных типов аппаратного и программного обеспечения. Справочник насчитывает более 30 тысяч наименований систем и их компонент. При создании справочника были обработаны более 1000 заявлений различных мировых производителей о готовности своих продуктов к 2000 году, после чего все разнообразие оценок готовности было сведено к четырехзначной шкале: Yes (продукт готов к 2000 году); Yes-Cоnditional (продукт готов с оговорками); No (продукт не готов к 2000 году); Indefinite (информация о готовности продукта отсутствует). Справочник поддерживается фирмой PinPoint в актуальном состоянии, причем система ClickNet Y2k позволяет с использованием Internet по мере необходимости обновлять (upgrade) конкретный установленный экземпляр справочника. На жестком диске справочник занимает около 17 Mб, причем все данные хранятся в зашифрованном виде, доступном только модулям самой системы ClickNet Y2k.

Основным объектом манипулирования системы ClickNet Y2k является так называемый проект, который фактически представляет собой базу данных о составе и готовности программно-аппаратных средств одного или нескольких компьютеров. Система предоставляет в распоряжение пользователя несколько способов обновления базы данных проекта. Во-первых, пользователь может инициировать обновление в явном виде. Во-вторых, пользователь может задать периодичность автоматического обновления, скажем, он может потребовать обновления каждый понедельник в 10:30. В-третьих, пользователь средствами специального модуля, записанного на дискету, может получить данные о состоянии автономного компьютера, а затем загрузить эти данные в общий проект.

Сбор информации о состоянии программно-аппаратных средств в системе ClickNet Y2k, как и во всех других системах инвентаризации, основан на сканировании файловой системы. При этом для опознания продукта используется его наименование в соответствии с самоидентификацией.

Развитые средства экспорта/импорта проектов позволяют организовать на базе системы ClickNet Y2k централизованный пункт мониторинга готовности к 2000 году коммерческого программно-аппаратного обеспечения достаточно большой, географически распределенной организации, например банка со всеми его филиалами и отделениями.

На основании информации, собранной в проекте, система ClickNet Y2k позволяет строить отчеты (разной степени подробности) о состоянии дел с подготовкой к 2000 году, а также развернутые отчеты по системам и типам BIOS, сводные отчеты, в которых данные сгруппированы по степеням готовности. Отчеты такого рода прежде всего необходимы для управления процессом подготовки организации к 2000 году.

Система ClickNet Y2k устанавливается и функционирует под управлением ОС Windows-9x или Windows-NT. В развернутом состоянии система занимает около 30 Mб. Для локальной сети систему достаточно установить только на сервере.

Кроме ClickNet Y2k, фирма PinPoint Software Corporation предлагает системы ClickNet Professional и ClickNet VeriDate. Первая поддерживает, в частности, полномасштабную методику решения Проблемы на предприятии. В этой части возможности ClickNet Professional аналогичны возможностям программы Переход-2000. Вторая система предназначена для проверки баз данных и отдельных файлов данных на наличие в них Проблемы. Возможности ClickNet VeriDate по анализу данных аналогичны возможностям Norton 2000.

Программа Year 2000 Product Analyzer (в дальнейшем Product Analyzer) корпорации Microsoft предназначена для инвентаризации программного обеспечения компьютеров. Программа распространяется свободно, в частности, ее можно получить в Internet [3].

Программа исследует реестр инсталлированных программных продуктов и определяет их готовность к 2000 году в соответствии с информацией о готовности, находящейся в файле-справочнике y2kdbEN.txt. Справочник необходимо время от времени обновлять, скачивая его по Internet. По состоянию на середину 1999 года справочник содержал информацию о 60 продуктах корпорации Microsoft, для каждого из которых описаны несколько десятков модификаций. Основным критерием опознания программных продуктов является совпадение имен исполняемых файлов (*.exe), в случае переименования файла он остается неопознанным.

Программа Product Analizer позволяет пользователю выбрать форму отчета о результатах инвентаризации: текстовый файл; HTML-файл; формат, удобный для загрузки в таблицу; формат, удобный для загрузки в базу данных.

Программа Product Analizer устанавливается на любом компьютере с процессором Intel 486 и выше с ОС Windows-9x или Windows-NT и в развернутом состоянии занимает 2 Mб.

Система Norton 2000 разработана компанией Symantec [4]. Система позволяет автоматизировать инвентаризацию программно-аппаратных средств и баз данных, установленных как на отдельных компьютерах, так и на компьютерах, объединенных в вычислительную сеть.

Оценка аппаратного обеспечения компьютеров выполняется по пяти критериям, причем Norton 2000 не эмулирует значения системных часов, а анализирует информацию о BIOS, доступную прямым считыванием.

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

Оценка готовности баз данных в Norton 2000 ограничена основными типами структур данных для ОС Windows. Проверка основана на коллек-ции эвристических правил анализа структур данных. Причем некоторые из правил являются параметрическими. Например, выявление недопустимых дат в базах данных основано на задании диапазона дат допустимых. Таким образом, продуктивность исследования структур данных в значительной степени определяется квалификаций пользователя.

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

По результатам проведенной инвентаризации Norton 2000 позволяет построить описание параметров инвентаризации (*.era), отчеты о готовности аппаратных (*.blg) и программных (*.alg) средств, а также отчет о выявленных дефектах в базах данных (*.log).

Заметим, что база aspeny2k.mdb – это зашифрованная база системы ClickNet Y2k, поэтому все дефекты по этой базе на самом деле являются фиктивными. В тоже время дефекты базы arch1997.dbf являются сигналом к анализу готовности программного обеспечения, обслуживающего эту базу.

Система Norton 2000 устанавливается и функционирует под управлением ОС Windows-9x или Windows-NT. В развернутом состоянии система занимает около 12 Mб. Для локальной сети ее достаточно установить только на сервере.

Отечественные программы поддержки решения Проблемы

Программы RTCDATE, dBASE-Ревизор и POLIGLOT разработаны Всероссийским НИИ проблем вычислительной техники и информатизации Госкомсвязи России.

Программа RTCDATE проверяет корректность перехода системных часов через критические даты. Всего RTCDATE проверяет 21 переход, хотя пользователь может и увеличить количество проверяемых переходов.

Программа dBASE-Ревизор проверяет в DBF-файлах поля типа Date на принадлежность значений заданному диапазону дат. Если дата выходит за границы диапазона, то она считается подозрительной.

Программа POLIGLOT предназначена для анализа исходных текстов на языках dBASE, CLIPPER и FOXPRO. Программа выявляет все обращения к системным часам и прослеживает все цепочки передачи дат. Выявленные операторы заносятся в протокол для последующего анализа программистом.

Программа JSCC2000 разработана Межведомственным суперкомпьютерным центром Мин- науки России, РАН, Минобразования России и РФФИ [5]. Программа на основании самоидентификации продуктов формирует полный список систем, находящихся на жестком диске, и оценивает эти продукты по собственному справочнику готовности коммерческих программных продуктов к 2000 году. В части анализа данных программа JSCC2000 работает с данными типа dBase и Excel, а также с текстовыми файлами. Особая проверка, заложенная в программе JSCC2000, позволяет обнаружить связь между базами данных и исполняемыми модулями, ответственными за формирование полей, подозрительных с точки зрения Проблемы.

Программа EDI_2000 разработана ООО Агентство "ЭДИ-Пресс" [6]. Программа формирует полный список программных продуктов на заданном жестком диске и оценивает эти продукты по собственному справочнику готовности коммерческих программ к 2000 году. Особенность программы EDI_2000 состоит в ее ориентации на продукты для DOS, при этом основным критерием идентификации программного продукта является наименование его загрузочного модуля. Отличительная особенность программы EDI_2000 состоит в оригинальном методе вычисления "информационной цены" компьютера, которая вычисляется в так называемых "условных информационных единицах".

Кроме программы, ООО Агентство "ЭДИ-Пресс" предлагает "Справочник коммерческих программных продуктов в связи с их готовностью к 2000 году". Несмотря на то, что аналогичные справочники используются во многих программных продуктах, получить непосредственный доступ к ним практически невозможно, работать со справочником могут только специальные программные модули в контексте решения той или иной задачи. Справочник, о котором идет речь, полностью открыт и содержит несколько тысяч наименований программных продуктов, причем для каждого из них приводятся две оценки готовности к 2000 году. Первая – оценка готовности в соответствии с информацией производителя, вторая – оценка по специально разработанной универсальной шкале готовности. Наличие второй оценки позволяет объективно сравнивать готовность к 2000 году программных продуктов разных фирм-производителей.

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

Список литературы

1. http://www.mep.nist.gov

2. http://www.clicknet.com

3. http://www.microsoft.com/technet/year2000

4. http://www.symantec.com

5. http://www.jscc.ru/projects/y2k

6. http://www.edipress.2000.ru



http://swsys.ru/index.php?id=940&lang=%29&page=article


Perhaps, you might be interested in the following articles of similar topics: