Динамические модели надежности

 

3.1.1. Модель Шумана

 

Исходными данными для модели Шумана, которая относится к динамическим моделям дискретного времени, собираются в процессе тестирования АСОД в течение фиксированных или случайных временных интервалов. Каждый энтервал - это стадия, на котором выполняется последовательность тестов и фиксируется некоторое число ошибок.

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

Предполагается, что до начала тестирования в ПО имеется Et ошибок. В течении времени тестирования t1 в системе обнаруживается Ec ошибок в расчете на команду в машинном языке.

Таким образом, удельное число ошибок на одну машинную команду, оставшуюся в системе после t1 времени тестирования, равно:

(3.1)

где It – общее число машинных команд, которое предполагается в рамках этапа тестирования.

Предполагаем, что значение функции частоты отказов Z(t) пропорционально числу ошибок, оставшихся в ПП после израсходованного на тестирование времени t.

(3.2)

 

где С- некоторая константа,

t – время работы ПП без отказа, ч.

Тогда, если время работы ПП без отказа t отсчитывается от точки t = 0, а t1 остается фиксированным, функция надежности, или вероятность безотказной работы на интервале времени от 0 до t, равна:

(3.3)

(3.4)

Из величин, входящих в формулы (4.2) и (4.3) ,не известны начальное значение ошибок в ПП (Et) и коэффициент пропорциональности – С. Для их определения прибегают к следующим рассуждениям. В процессе тестирования собирается информация о времени и количестве ошибок на каждом прогоне, т.е общее время тестирования t1 складывается из времени каждого прогона:

 

t1 = t1 + t2 + t3 + …. + tn (3.5)

 

Предполагая, что интенсивность появления ошибок постоянна и равна , можно вычислить её как число ошибок в единицу времени:

где Аi – количество ошибок на i-м прогоне.

(3.6)

 

Имея данные для двух различных моментов тестирования tA и tb , которые выбираются произвольно с учетом требования, чтобы Ec(tb) > Ec(tA), можно сопоставить уравнения (3.4) и (3.6) при tA и tb :

(3.7)

(3.8)

Вычисляя отношения (3.7) и (3.8), получим

(3.9)

 

Подставив полученную оценку параметров Et в выражение (3.7), получим оценку для второго неизвестного параметра:

(3.10)

 

Получив неизвестные Еt и С, можно рассчитать надежность программы по формуле (3.3).

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

 

 

3.1.2. Модель La Padula

 

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

Надёжность ПП в течений i –го этапа:

(3.11)

где i = 1,2, … n,

А – параметр роста;

Предельная надежность ПП:

(3.12)

Эти неизвестные величины можно найти, решив следующие уравнения:

(3.13)

 

где Si – число тестов;

mi – число отказов во время i-го этапа;

m – число этапов;

i = 1,2 … m.

 

Определяемый по этой модели показатель есть надежность АСОД на i-м этапе.

(3.14)

где i = m+1,m+2

 

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