- •Введение
- •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. Математические модели оперативного контроля и восстановления функционирования комплекса программ
- •Библиографический список
- •Усенко Ольга Александровна Модели и методы оценки надежности программного обеспечения информационных систем
3.3. Математические модели оперативного контроля и восстановления функционирования комплекса программ
Характеристики обнаружения искажений и оценки работоспособности зависят от типа и качества теста приемлемости результатов функционирования. Тест приемлемости содержит эталонные данные, правила сопоставления результатов функционирования с эталонами и допуски. Процесс контроля и оперативного обнаружения искажений характеризуется следующими факторами:
- вероятностью обнаружения искажения при использовании процедуры контроля р1;
- затратами на проведение процедуры контроля b1;
- длительностью проведения процедуры контроля t1;
- интервалом времени между последовательными процедурами контроля t’;
- потерями в эффективности функционирования комплекса программ из-за запаздывания на единицу времени в обнаружении искажения данных или вычислительного процесса b2;
- вероятностью ложного обнаружения искажения рл.
Во многих случаях после искажения проходит несколько этапов оперативного восстановления с последовательным применением усложняющихся методов и оценкой степени восстановления работоспособности после каждого этапа. Каждый метод восстановления характеризуется следующими параметрами:
- вероятностью полного восстановления нормального функционирования комплекса программ р3;
- затратами ресурсов ВС на восстановительные работы b3;
- длительностью проведения работ по восстановлению, включая время выбора метода восстановления и время его реализации t3;
- длительностью в проявления последствий искажения после восстановления.
Показатели восстановления р3, t3 и в в разной степени влияют на показатели надежности функционирования ПО. В зависимости от динамических характеристик внешних абонентов может быть определено предельное время tд, позволяющее разделить сбой и отказ. Если восстановление работоспособности завершается за время, меньшее tд, то происшедшее искажение не влияет на основные показатели надежности. Это соответствует оперативному восстановлению системы с временной избыточностью и пополняемым резервом времени. Кроме состояний работоспособности и отказа, может выделяться состояние восстановления, при котором длительность проведения восстановительных работ не влияет на характеристики надежности.
Поскольку на полноту восстановления влияет большое число факторов и дифференцированный учет характеристик р3, t3 и в затруднен, примем, что совокупность восстановительных процедур обеспечивает полную работоспособность и в = 0.
Процесс функционирования ПО на однопроцессорной ЭВМ в реальном масштабе времени с учетом операций контроля и восстановления представлен графом состояний, дуги в котором соответствуют возможным переходам между состояниями (рис. 15). Состояние 0 – нормальное функционирование ПО; 1 – состояние контроля, соответствует переходу ПО в режим контроля функционирования и обнаружения ошибок; 2 – состояние функционирования ПО при наличии искажения, не обнаруженного средствами контроля; 3 – состояние восстановления после искажения; 4 – восстановление после ложной тревоги, соответствует восстановлению полезной работы после ложного проявления искажения, когда в действительности состояние полезной работы не нарушилось.
Рис. 15. Граф переходов из состояния «полезная работа» в состояние «контроль» и «восстановление»
Переходы между состояниями происходят случайно или в некоторых направлениях детерминированно. Переход в состояние контроля может происходить периодически и от его результатов зависит переход в состояние восстановления (рис. 16, диаграмма 1). Пребывание во всех состояниях, кроме нулевого, сопряжено с затратами производительности ВС на выполнение операций, не связанных с прямыми функциональными задачами и может рассматриваться как снижение производительности ВС.
Рис. 16. Временная диаграмма состояний комплекса программ
1 – полная схема состояний (заштрихованы работоспособные состояния); 2 – простои при запаздывании в обнаружении искажения, контроле и восстановлении; 3 – отказы.
На производительность влияют затраты на проведение операций контроля, восстановления и работу с неустраненными искажениями независимо, в какой последовательности они происходят и какие ресурсы требуются (рис. 16, диаграмма 2). Пребывание в этих состояниях рассматривают как отказ, если длительность непрерывного пребывания вне состояния 0 превышает tд (диаграмма 3). При определении влияния на показатели надежности учитывается только такая цепочка последовательных состояний вне работоспособного, которая оказывается протяженностью больше tд. Все остальные короткие выходы из состояния 0 не влияют на надежность. Последующий анализ влияния процедур контроля и восстановления на функционирование комплекса программ целесообразно проводить с позиции влияния этих операций на производительность, общую эффективность функционирования и надежность функционирования программ [8].
