Методы определения технологической безопасности критических информационных систем

Прямые экспериментальные методы определения интегральных показателей безопасности программ и баз данных в нормальных условиях функционирования в ряде случаев весьма трудно использовать при испытаниях на безопасность из-за больших значений времени наработки на отказ (десятки и сотни тысяч часов). Сложность выявления и регистрации редких отказов, а также высокая стоимость экспериментов при длительном функционировании сложных ИС приводят к тому, что на испытаниях получаются малые выборки зарегистрированных отказов. Кроме того, при таких экспериментах трудно гарантировать полную представительность выборки исходных данных, так как проверки определяются конкретными условиями использования данной ИС на испытаниях [22], [31].

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

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

Если интенсивное тестирование программ в течение достаточно длительного времени не приводит к обнаружению ошибок, ИС передается в эксплуатацию. Экспериментальное исследование характеристик обнаружения ошибок в сложных ИС [9] позволило оценить темп обнаружения ошибок, при котором сложные комплексы программ передаются в регулярную эксплуатацию: 0,002-0,005 ошибок в день на человека, то есть специалисты по отладке, испытаниям или пользователи выявляют только около одной ошибки каждые два месяца использования ИС. Интенсивность обнаружения ошибок ниже 0,001 ошибок в день на человека, то есть меньше одной ошибки в год на трех-четырех специалистов, непосредственно участвующих в тестировании, по-видимому, может служить эталоном высокого качества отладки для ИС обработки информации и управления. При использовании этого критерия обычно учитывается календарное время отладки и испытаний, включающее длительность непосредственного тестирования как для обнаружения, так и для локализации ошибок, а также длительность корректировки программ и других вспомогательных работ.

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

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