Автор: Пользователь скрыл имя, 24 Марта 2013 в 23:04, реферат
Модели надежности программных средств подразделяются на аналитические и эмпирические. Аналитические модели дают возможность рассчитать количественные показатели надежности, основываясь на данных о поведении программы в процессе тестирования. Эмпирические модели базируются на анализе структурных особенностей программ.
Введение 3
1 Аналитические модели надежности ПС 4
1.1 Динамические модели надежности 4
1.2 Статические модели надежности 20
2 Эмпирические модели надежности 34
Заключение 42
Список использованных источников 43
В противном случае оценка максимального правдоподобия будет B^ = ∞. Условие (17) можно переписать в более удобном виде
A> (n+1)/2,
где A – то же самое выражение, что и в формуле (16). Необходимо отметить, что, A является интегральной характеристикой n встретившихся в программе за время тестирования ошибок, и представляет (в статистическом смысле) набор интервалов Xi между ошибками.
Рассмотрим пример использования модели Джелинского-Моранды, в котором она применяется к следующим экспериментальным данным: в течение 250 дней было обнаружено 26 ошибок, интервалы между обнаружением которых представлены в таблице 1. Для этих данных мы имеем n=26 и . Условие (18) выполняется, и, таким образом, оценка максимального правдоподобия имеет единственное решение. В таблице 2 представлены начальные значения функций, входящих в уравнение (16), для множества аргументов m≥n+1.
Наилучшим решением для уравнения (16) является m=32 (соответствующая строка в таблице дает минимальное значение разницы функций по модулю, то есть максимально приближает ее к нулю, что нам и требуется), то есть B^ = m-1=31. Из выражения (14) находим B^ = 0.007.
Среднее время (время, оставшееся до обнаружения (n+1)-й ошибки) есть инвертированная оценка интенсивности для предыдущей ошибки:
В этом примере,Xest27 = 29 дней, и время до полного завершения тестирования
Таблица 1 - Интервалы между обнаружением ошибок.
I |
Xi |
I |
Xi |
i |
Xi |
i |
Xi |
1 |
9 |
8 |
8 |
15 |
4 |
21 |
11 |
2 |
12 |
9 |
5 |
16 |
1 |
22 |
33 |
3 |
11 |
10 |
7 |
17 |
3 |
23 |
7 |
4 |
4 |
11 |
1 |
18 |
3 |
24 |
91 |
5 |
7 |
12 |
6 |
19 |
6 |
25 |
2 |
6 |
2 |
13 |
1 |
20 |
1 |
26 |
1 |
7 |
5 |
14 |
9 |
Таблица 2 - Значения функций.
m |
f26 (m) |
g26 (m,A) |
f26 (m) - g26 (m,A) |
27 |
3.854 |
2.608 |
1.246 |
28 |
2.891 |
2.371 |
0.520 |
29 |
2.427 |
2.172 |
0.255 |
30 |
2.128 |
2.005 |
0.123 |
31 |
1.912 |
1.861 |
0.051 |
32 |
1.744 |
1.737 |
0.007 |
33 |
1.608 |
1.628 |
-0.020 |
34 |
1.496 |
1.532 |
-0.036 |
Простая экспоненциальная модель
Основное различие между этой моделью и моделью Джелинского-Моранды, рассмотренной в предыдущем разделе, в том, что эта модель не использует предположение 6, и, таким образом, допускает, что функция риска может меняться между моментами обнаружения ошибок, то есть она больше не является константой на этих интервалах. Пусть N(t) – число ошибок, обнаруженных к моменту времени, и пусть функция риска пропорциональна количеству ошибок, оставшихся в программе после момента t.
Продифференцируем обе части этого уравнения по времени:
Учитывая, что - это R(t) (количество ошибок, обнаруживаемых в единицу времени), получаем дифференциальное уравнение для R(t)
Если рассмотреть начальные значения N(0)=0, R(0)=KB, то решением уравнения (19) будет
Оценки параметров К и В можно получить аналогично модели Джелинского-Моранды и затем с помощью оценки функции риска можно спрогнозировать ситуацию на следующие этапы отладки.
Геометрическая модель
Рассмотрим геометрическую модель надёжности ПО, предложенной П. Б. Морандой и являющейся модификацией модели Джелинского-Моранды.
В данной модели предполагается, что исходное число ошибок в программе – величина не фиксированная, более того все ошибки не равновероятны. Считается также, что по мере отладки обнаруживать ошибки становится все труднее, таким образом, ПО никогда не освобождается от ошибок. Основные исходные предпосылки для этой модели следующие:
Интенсивность отказов имеет следующий вид:
λ ( ti ) = DKi-1, (21)
где : λ (0)=D – исходное значение интенсивности отказов;
K – константа пропорциональности 0 < K < 1;
ti – время между появлениями (i – 1)-ой и i-ой обнаруженных ошибок.
Ksw × (E0 - ( i - 1 ))× ti (22)
Пример:
Нахождение характеристик
Пусть интервалы времени между появлениями ошибок
t1=7 час.; t2=12 час.; t3=23 час.; t4=17 час.; t5=10 час.
Число ошибок n = 5.
Функция правдоподобия примет вид:
(23)
Прологарифмировав и взяв частные производные по D и K, получим условия экстремума:
(24)
Полагая D= Dˆ = и K= Kˆ = и решая систему уравнений (24), получаем оценки максимального правдоподобия Kˆ =0.892 и Dˆ = 0.092
Среднее время до обнаружения (n+1)–ой ошибки:
Значения интенсивности
Таблица 3 - Значения интенсивности отказов
Интервал |
λ(ti) |
1 |
0.092 |
2 |
0.082 |
3 |
0.073 |
4 |
0.065 |
5 |
0.058 |
Модель Шика-Волвертона
Данная модель является модификацией модели Джелинского–Моранды и была предложена Шиком и Волвертоном.
Дополнительно к допущениям модели Джелинского–Моранды используется следующее допущение: частота появления ошибок пропорциональна времени отладки программы ti, т.е. вероятность обнаружения ошибок с течением времени должна возрастать.
λ ( ti ) = Ksw * (E0 - ( i - 1 ))* ti , (25)
где E0 – число ошибок в ПО до начала тестирования и отладки; Ksw – коэффициент Шика-Волвертона; ti – интервал времени между (i-1)-й и i-й обнаруженными ошибками; i – число ошибок обнаруженных к моменту отладки ti.
Для вероятности безотказной работы имеем следующее выражение:
(26)
Функция плотности будет иметь вид:
(27)
Пример:
Оценка характеристик модели Шика-Волвертона E0 и Ksw при помощи метода максимального правдоподобия.
Пусть интервалы времени между отказами
t1=7 час.; t2=12 час.; t3=23 час.; t4=17 час.; t5=10 час..
Пусть число найденных ошибок n = 5.
Функция правдоподобия будет иметь вид:
(28)
Возьмём натуральный логарифм от функции правдоподобия, чтобы произведение функций заменить суммой:
(29)
Возьмём частные производные по E0 и Ksw и найдём условия экстремума:
(30)
Решая систему уравнений (30) и полагая Ksw= Kˆsw и E0 = Eˆ0, получаем оценку коэффициента Шика-Волвертона
Kˆsw =0.001
и оценку числа ошибок
Eˆ0=11
Рассмотренные модели Джелинского-Моранды, Шика-Волвертона можно использовать как на этапе тестирования и отладки, так и на этапе эксплуатации.
Модель Муса
Модель Муса относят к динамическим моделям непрерывного времени. Это значит, что в процессе тестирования фиксируется время выполнения программы (тестового прогона) до очередного отказа. Но считается, что не всякая ошибка ПС может вызвать отказ, поэтому допускается обнаружение более одной ошибки при выполнении программы до возникновения очередного отказа.
Считается, что на протяжении всего жизненного цикла ПС может произойти M0 отказов и при этом будут выявлены все N0 ошибки, которые присутствовали в ПС до начала тестирования.
Общее число отказов M0 связано с первоначальным числом ошибок N0 соотношением
N0= B*M0 (31)
где В — коэффициент уменьшения числа ошибок.
В момент, когда проводится оценка надежности, после тестирования, на которое потрачено определенное время t, зафиксировано т отказов и выявлено п ошибок.
Тогда из соотношения
п = Вт (32)
можно определить коэффициент уменьшения числа ошибок В как число, характеризующее количество устраненных ошибок, приходящихся на один отказ.
В модели Муса различают два вида времени:
1) суммарное время
2) оперативное время t — время выполнения программы, планируемое от контрольного момента и далее при условии, что дальнейшего устранения ошибок не будет (время безотказной работы в процессе эксплуатации).
Для суммарного времени функционирования τ предполагается:
• интенсивность отказов
• скорость изменения числа устраненных ошибок, измеряемая относительно суммарного времени функционирования, пропорциональна интенсивности отказов.
Один из основных показателей надежности, который рассчитывается по модели Муса, — средняя наработка на отказ. Этот показатель определяется как математическое ожидание временного интервала между последовательными отказами и связан с надежностью:
(33)
где t — время работы до отказа.
Если интенсивность отказов
постоянна (т.е. когда длительность
интервалов между последовательными
отказами имеет экспоненциальное распределение),
то средняя наработка на отказ
обратно пропорциональна
Модель переходных вероятностей
Эта модель основана на марковском процессе, протекающем в дискретной системе с непрерывным временем.
Процесс, протекающий в системе, называется марковским (или процессом без последствий), если для каждого момента времени вероятность любого состояния системы в будущем зависит только от состояния системы в настоящее время (t0) и не зависит от того, каким образом система пришла в это состояние. Процесс тестирования ПС рассматривается как марковский процесс.
В начальный момент тестирования (t = 0) в ПС было п ошибок. Предполагается, что в процессе тестирования выявляется по одной ошибке. Тогда последовательность состояний системы (п, п-1, п-2, п-3) и т.д. соответствует периодам времени, когда предыдущая ошибка уже исправлена, а новая еще не обнаружена. Например, в состоянии п-5 пятая ошибка уже исправлена, а шестая еще не обнаружена.
Информация о работе Общая характеристика моделей надежности программных средств