Экспоненциальная модель надежности ПО
Основным предположением этой модели является экспоненциальный характер изменения числа ошибок в программе во времени. Прогноз надежности программы производится на основании данных, получаемых во время ее тестирования.
Основными параметрами модели являются:
· τ - суммарное время функционирования от начала тестирования (с устранением обнаруженных ошибок) до момента оценки надежности;
· M – число ошибок, имеющихся в программе перед началом тестирования;
· m(τ) – конечное число исправленных ошибок;
· m0(τ) – число оставшихся ошибок.
Предполагается, что число ошибок в программе в каждый момент времени имеет пуассоновское распределение, а временной интервал между двумя ошибками распределен по экспоненциальному закону. Параметр этого распределения изменяется после распределения очередной ошибки. Интенсивность отказов считается непрерывной функцией, пропорциональной числу оставшихся ошибок. С учетом введенных параметров и предположений очевидно, что
m0(t) = M -m(τ) ,
а интенсивность ошибок
l(τ) = Cm0(τ) ,
где C – коэффициент пропорциональности, учитывающий быстродействие ЭВМ и число команд в программе.
Пусть в процессе исправления ошибок новые ошибки не появляются. Следовательно, интенсивность исправления ошибок будет равна интенсивности их обнаружения:
Совместное решение полученных выражений дает
Решением этого уравнения является выражение
m(τ) = M[1- exp(-Cτ)] .
Будем характеризовать надежность программы после тестирования в течение времени τ средним временем наработки на отказ:
Следовательно,
Введем величину T0т – исходное значение среднего времени наработки на отказ перед тестированием, которое равно
Подставляя это значение в выражение T0 , получим
Из этого выражения видно, что среднее время наработки на отказ увеличивается по мере выявления и исправления ошибок.
Таким образом, аналитические модели надежности дают возможность исследовать закономерности проявления ошибок в программе и прогнозировать надежность при ее разработке и эксплуатации.
Контрольные вопросы:
1. В чем сущность модели с дискретно-понижающей частотой появления ошибок ПО?
2. В чем сущность экспоненциальной модели надежности ПО?