- •Введение
- •I. Основные понятия теории надежности программного обеспечения
- •1.1. Программное обеспечение как сложный объект
- •1.2. Жизненный цикл программных средств
- •1.3. Отказы пс
- •II. Модели и методы оценки надежности по
- •2.1. Особенности моделей оценки надежности по
- •2.2. Марковская модель для системы готовности и надежности
- •2.4. Модель надежности программы с дискретным увеличением времени наработки на отказ
- •2.3. Модели надежности программы с дискретно понижающейся частотой (интенсивностью) проявления ошибок
- •2.5. Экспоненциальная модель надежности программ
- •2.6. Экспоненциальная модель Шумана
- •2.7. Экспоненциальная модель Джелинского-Моранды.
- •2.8. Геометрическая модель Моранды
- •2.9. Модель Шика-Волвертона
- •2.10. Обобщение моделей Джелинского-Моранды и Шика-Волвертона
- •2.11. Модель надежности на основе распределения Вейбулла
- •2.12. Модель последовательности испытаний Бернулли
- •2.13. Оценка надежности программ по числу прогонов (модель Нельсона)
- •2.14. Структурная модель роста надежности (модель Иыуду)
- •III. Способы повышения надежности по
- •3.1. Виды избыточности в программах
- •3.2. Методы введения структурной избыточности в программы
- •3.3. Математические модели оперативного контроля и восстановления функционирования комплекса программ
- •Библиографический список
- •Усенко Ольга Александровна Модели и методы оценки надежности программного обеспечения информационных систем
2.3. Модели надежности программы с дискретно понижающейся частотой (интенсивностью) проявления ошибок
Предполагается, что интенсивность обнаружения ошибок описывается кусочно-постоянной функцией, пропорциональной числу неустраненных ошибок (рис. 7), то есть интенсивность отказов (t) постоянна до обнаружения и исправления ошибки, после чего она снова постоянна, но с другим, уже меньшим значением. Между (t) и числом оставшихся в программе ошибок существует прямая зависимость
,
где N – неизвестное первоначальное число ошибок, i – число обнаруженных ошибок, зависящих от времени t; k – некоторая константа.
Рис. 7. Зависимость отказов программы от времени работы
Плотность
распределения времени обнаружения i-й
ошибки задается выражением
.
Значения неизвестных k
и N оценивают на
основании последовательности наблюдений
интервалов между моментами обнаружения
ошибок по методу максимального
правдоподобия. Для этого необходимо
решить следующие уравнения:
где
,
,
,
и
– оценки соответственно параметров k
и N; m
– число устраненных ошибок в момент
оценки надежности программы.
Вторая модель построена на основе гипотезы о том, что частость проявления ошибок линейно зависит от времени испытания ti между моментами обнаружения последовательных i-й и (i – 1)-й ошибок:
,
где К – коэффициент пропорциональности, обеспечивающий равенство единице площади под кривой вероятности обнаружения ошибок.
Отличие данной модели от предыдущей заключается в появлении множителя ti в выражении для частоты отказов. Для оценки наработки на отказ получается выражение, соответствующее распределению Релея:
.
Отсюда плотность распределения времени наработки на отказ
.
Использовав функцию максимального правдоподобия, получим оценку для общего количества ошибок N и коэффициента К:
По экспериментальным данным моментов обнаружения ошибок ti может быть построена функция, позволяющая прогнозировать надежность комплекса программ и ожидаемое время обнаружения следующей ошибки. Эта модель является достаточно грубой. На практике часто не соблюдаются условия, на которых она построена. Не всегда можно определить и устранить причину отказа и программу часто продолжают использовать, так как при других исходных данных ошибка, вызвавшая этот отказ, может себя не проявить [5].
2.4. Модель надежности программы с дискретным увеличением времени наработки на отказ
Предполагают, что устранение ошибки в программе приводит к увеличению времени наработки на отказ на одну и ту же случайную величину, то есть время между двумя последовательными отказами является случайной величиной (T(i)) и представляется в виде суммы двух случайных величин [5]:
, (7)
где случайные величины T(i) независимы и имеют одинаковые математические ожидания М[T(i)] и среднее квадратичное отклонение T. Из (7) следует, что m-й отказ программы произойдет через время
.
Предположим, что
.
Поскольку отказы программы в начальном
периоде эксплуатации возникают часто,
считают, что
.
При этом
,
а средняя наработка до возникновения
m-го отказа определяется
выражением
.
Оценки величин M[T], T могут быть получены по данным об отказах программы в течение периода наблюдения tн:
где mн – число отказов программы за период (0, tн); t(i) – момент возникновения i-го отказа программы.
Тогда вероятность безотказной работы определяется в зависимости от числа возникших отказов m:
,
где [x] – функция Лапласа.
