 
        
        - Задание
Выполнить исследование показателей надежности программ, характеризуемых моделью обнаружения ошибок Джелинского-Моранды для различных законов распределения времени между соседними отказами и различного числа используемых для анализа данных. Для проведения исследования требуется:
- Сгенерировать массивы данных {Хi}, где Xi - длительность интервала времени между обнаружением (i-1)-ой и i –ой ошибок ( i=[1,30] ), в соответствии с: 
- равномерным законом распределения в интервале [0,20]; при этом cреднее время между ошибками будет mравн = 10, СКО sравн = 20/(2*sqrt(3)) = 5.8 . 
- экспоненциальным законом распределения 
W(y) = b*exp(-b*y), y>=0, c параметром b=0.1
и соответственно mэксп=sэксп= 1/b=10.
Значения случайной величины Y с экспоненциальным законом распределения с параметром «b» можно получить по значениям случайной величины X, равномерно распределенной в интервале [0,1], по формуле [1]: Y = -ln(X) / b
- релеевским законом распределения W(y) = (y/c^2)*exp(-y^2/(2*c^2)), y>=0, c параметром c=8.0 и соответственно mрел = c*sqrt(/2), sрел= c*sqrt(2-/2). 
Значения случайной величины Y с релеевским законом распределения с параметром «с» можно получить по значениям случайной величины X, равномерно распределенной в интервале [0,1], по формуле [1]: Y = с * sqrt(-2*ln(X)).
- Для каждого из 3-х массивов {Хi} оценить значение первоначального числа ошибок в программе B. При этом для каждого закона использовать 100%, 80% и 60% входных данных (то есть в массивах {Хi} использовать n= 30, 24 и 18 элементов). Кроме того, если B>n, оценить значения средних времен Xj , j=n+1,n+2…, n+k до обнаружения k<= 5 следующих ошибок. 
- Сравнить и объяснить результаты, полученные для различных законов распределения времени между соседними отказами и различного числа используемых для анализа данных. 
- Теоретические сведения
Модели, разработанные для этапов проектирования и производства, имеют важное значение. Они позволяют оценить ряд свойств ПО в условиях значительной неопределенности и ограниченности информации. При функционировании систем и их ПО поступает достоверная информация о проявлении дефектов ПО. Поэтому усилия исследователей направлены на математическое описание потоков ошибок систем, происходящих по вине ПО. Реализации этих потоков характеризуют важнейшее свойство систем на этапе эксплуатации - их надежность. Поток ошибок (отказов) систем по вине дефектов ПО с учетом особенностей ПО, как объекта исследования, имеет следующие свойства:
- имеет только одну реализацию, 
- является случайным и нестационарным, 
- обладает тенденцией к редению. 
Исходя из этих свойств, можно утверждать, что ПО относится к типу объектов, улучшающих с течением времени свое качество (молодеющих систем), или объектов с самообучением. Некоторые положения теории с самообучением могут быть использованы для разработки моделей ПО на этапе эксплуатации.
Пусть необходимо описать закономерность появления событий потока, удовлетворяющего перечисленным выше свойствам. Предварительно выдвигается гипотеза о виде закона распределения длительностей между смежными событиями. Полагается, что закон распределения один и тот же для всех интервалов времени, но параметры этого закона изменяются с увеличением номера события, таким образом, чтобы выполнялось третье свойство потока. Далее, при совместном рассмотрении интервалов между смежными событиями находятся оценки величин, входящих в выражения для параметров распределения. Такой подход оказался достаточно плодотворным. Модели могут различаться видом закона распределения интервалов между смежными событиями, а также принятыми допущениями при моделировании.
Рассмотрим основные допущения, используемые при моделировании ПО на этапе эксплуатации.
- Любой отказ системы по вине ПО обусловлен только одним дефектом ПО. 
- Отыскание дефекта, приведшего к отказу системы, и его устранение осуществляется мгновенно. 
- В процессе устранения дефекта в ПО не вносится новый дефект. 
- Закон распределения длительностей интервалов между смежными отказами известен. 
- Параметры закона распределения интервалов изменяются при каждом выявлении дефекта таким образом, чтобы улучшалось качество ПО. 
Модели потоков ошибок ПО достаточно подробно описаны в ряде источников. Поэтому рассмотрим методику построения модели ПО на примере одной из наиболее простых моделей данного типа. Построение модели включает:
- построение модели потока событий, 
- получение в терминах модели выражений для показателей качества ПО, 
- расчет показателей с использованием реальных статистических данных о функционировании ПО в составе системы, 
- проверка адекватности модели реальным процессам функционирования системы. 
