Лист

        

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


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


     4.1.1 Модель Шумана


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

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

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

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

  

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

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

         

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

            t – время работы АСОД без отказа, ч.

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

       

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


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


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


Лист

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


          



Лист

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







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




Лист

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


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


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













      4.1.2 Модель La Padula.



Лист

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


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

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

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

Предельная надежность АСОД .

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


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

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

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

        i = 1,2 … m.




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


Лист

 

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


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



      4.1.3 Модель переходных вероятностей


     Эта модель основана на марковском процессе, протекающем в дискретной системе с непрерывным временем.

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

      В начальный момент времени тестирования ( t = 0 ) в АСОД было n ошибок. Предлагается, что в процессе тестирования выявляется по одной ошибке. Тогда последовательность состояний системы, { n, n-1,n-2,n-3 } и т.д. соответствует периодам времени, когда предыдущая ошибка уже исправлена, а новая еще не обнаружена. Например, в состоянии n-5 пятая ошибка уже исправлена, а шестая еще не обнаружена.

      Последовательность состояний { m, m-1,m-2,m-3 и т.д.} соответствует периодам времени, когда ошибки исправляются. Например, в состоянии m-1 вторая ошибка уже обнаружена, но еще не исправлена. Ошибки обнаруживаются с интенсивностью l , а исправляются с интенсивностью m .

         


Лист

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

         S = { n, m, n-1, m-1, n-2,m-2, . . .  }.


      Система может переходить из одного состояния в другое с определенной вероятностью Pij. Время перехода системы из одного состояния в другое бесконечно мало.

      Вероятность перехода из состояния n-k в состояние m-k есть ln-kt для k = 0,1,2, . . .  . Соответственно вероятность перехода из состояния m-k в состояние n-k-1 будет mm – nt  для  k = 0,1,2 . . . .  .

      Общая схема модели представлена на рисунке 5.1. Если считать, что l1 и mзависят от текущего состояния системы, то можно составить матрицу переходных вероятностей.



     Пусть S’(t) – случайная переменная, которой обозначено состояние системы в момент времени t.

     В любой момент времени система может находиться в двух возможных состояниях: работоспособном либо неработоспособном ( момент исправления очередной ошибки ).

      Вероятность нахождения системы в том или ином состоянии определяется как


Лист

     Готовность системы определяется как сумма вероятностей нахождения её в работоспособном состоянии :


    Под готовностью системы к моменту времени t понимается вероятность того, что система находиться в рабочем состоянии во время t.

     Надежность системы после t времени отладки, за которое уже выявлено К ошибок, т.е. система находиться в состоянии n-k ( К-я ошибка исправлена, а (К+1)-я ещё не обнаружена ), может быть определена из состояния :


   где t - интервал времени, когда может появиться ( К+1)-я;

ошибка l(K) - принятая интенсивность проявления ошибок.

 

    Рассмотрим решение модели для случая, когда интенсивность появления ошибок l  и интенсивность их исправления m - постоянные величины. Составляем систему дифференциальных уравнений :



     Начальными условиями для решения системы могут являться:


Лист

 


Лист

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

     В результате решения определяются  Pn-k  и Pm – k для случая, когда l и m константы.

     Для общего случая отбросим ограничения постоянства интенсивностей появления ошибок и предположим, что


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



Начальные условия для решения системы будут :


Система решена методом итерации Эйлера.







Лист

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