Модели прогнозирования ущерба от проявления скрытых ошибок в программном обеспечении

_________________________

А.А. Прохоров


При разработке комплексов программ (КП) в подавляющем большинстве случаев невозможно выявить и устранить все программные ошибки. Необнаруженные ошибки (иногда их называют скрытыми) проявляются на этапе эксплуатации системы. Проявление скрытых ошибок может приводить к различным последствиям — от незначительных, до весьма существенных, вплоть до катастрофических. Примером ошибки, последствия от проявления которой незначительны, может служить следующее сообщение компьютерной системы: «ВАМ ЗАКАЗАН АВИАБИЛЕТ НА РЕЙЗ № 1964». Если же ошибка будет содержаться в номере рейса, то ее последствия могут быть куда более серьезными, а возможно и катастрофическими.
Наличие скрытых ошибок в КП требует решения задачи оценки возможного ущерба от их проявления. Схема решения подобной задачи зависит от того, допустимо ли считать, что результаты работы КП равнозначны с точки зрения ущерба от возможного проявления скрытых ошибок, или нет. Рассмотрим модели прогнозирования ущерба для указанных случаев.
Модель 1. Прогнозирование ущерба от проявления скрытых ошибок КП при равнозначности последствий.
Допустим, что ущерб от проявления одной ошибки при функционировании КП оценивается вединиц денежного эквивалента. Будем считать также, что после завершения испытаний на надежность КП получено значение интенсивности потока проявляющихся ошибок К, и поток является стационарным, простейшим. Правомочность последнего допущения подкрепляется практическими результатами эксплуатации различных программных систем. Величина X может быть определена по результатам комплексного тестирования КП на основе модели редеющего потока [1,2] исходя из условия

I



Очевидно, ущерб зависит от числа проявляющихся ошибок в программном обеспечении. Чем большее число ошибок проявится за обозначенное время, тем, естественно, будет и больше ущерб. Тогда минимальный ущерб от проявления скрытых ошибок при функционировании КП за время t (без учета перерывов в работе) может быть оценен как произведение «единицы» ущерба — на вероятность проявления одной ошибки, а именно
(2)
Наиболее вероятный ущерб от проявления скрытых ошибок КП — может быть получен как произведение «единицы» ущерба на наиболее вероятное число ошибок, которые могут проявиться за время t, т. е.

(3)
Модель 2. Прогнозирование ущерба от проявления скрытых ошибок в случае различной значимости последствий.
Решение данной задачи может быть получено с использованием теории совпадения случайных импульсных потоков. Рассмотрим интерпретацию процесса функционирования КП схемой совпадения импульсных потоков (рисунок).

Результаты k-го типа





Допустим, что с позиций ущерба от проявления ошибок все возможные результаты КП разделены на k= 1, 2,К типов. Ущерб от проявления ошибки в результатах k-ro типа оценивается вединиц денежного эквивалента. В реальных условиях эксплуатации появление результатов различного типа

на «выходе» КП правомочно рассматривать как случайные события. Поэтому появление результатов k-ro типа среди множества остальных результатов во времени (перерывы в работе КП не учитываются) можно представить как случайный импульсный поток. В этом случае наличию импульса длительностьюставится в соответствие время функционирования КП при получении результатов k-го типа, а пауза νk соответствует интервалу времени работы КП между смежными моментами получения результатов k-го типа. Процесс проявления скрытых ошибок можно также рассматривать как случайный поток появления бесконечно коротких импульсов, импульс которого соответствует проявлению ошибки, а пауза — времени безошибочной работы КП между моментами смежных событий. Перерывы в работе в этом случае также не учитываются. Совпадение импульсов этих потоков равносильно отказовой ситуации с ущербом вединиц.
Средняя частота совпадений потока ошибок с потоком результатов k-г o типапри продолжительности перекрытия импульсов, равной нулю, и экспоненциальном распределении времени определяется соотношением


Λ= Tpk / (Tpk+ νk)νбр (4)

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


(5)
где λ определяется по результатам предшествующих испытаний (формула 1).
Возможный ущерб от проявления скрытых ошибок может быть оценен на основе рассмотренных рассуждений. А именно: ущерб от проявления одной ошибки в результатах Л-го типа определяется соотношением

(6)
где— ущерб от проявления одной ошибки в результатах k-го типа; Тогда среднестатистический ущерб при проявлении одной ошибки за время t равен
(7)




I

I

Λk=1/ νбр= λ для k=1,2,…,K Использование рассмотренных моделей позволит получить информацию о возможных потерях при функционировании программно-технических систем и, следовательно, выработать мероприятия по эффективному противодействию этим явлениям. Следовательно, решение поставленных задач позволяет сделать еще один важный шаг в решении проблемы обеспечения высокого качества функционирования информационных систем. Допустим, что результаты функционирования КП можно разделить на два типа — справочные и управляющие. Ущерб от проявления скрытых ошибокпри получении результатов первого типа равенед.,
при получении
результатов второго типа —ед. денежного эквивалента. Интенсив-
ность проявления ошибок равна
Тип результатов функционирования КП
Tpk, ч
νk , ч
1
1,5
0,5
2
0,5
1,5
Требуется оценить среднее значение величины наиболее вероятного ущерба от проявления скрытых ошибок за время работы КП 1=103 ч. Согласно соотношениям (4), (8), (9), эта величина равна


ЛИТЕРАТУРА

1. Прохоров А. А. Оценка корректности программ на основе модели редеющего потока. ВОТ, сер. 3, вып. 7 (204), 1987.
2. Нечипоренко В. И. Информация статистик технологического прогона изделий. П и СУ, № 9, 1987.


А. А. Прохоров - канд. техн. наук