
- •1.Программное обеспечение
- •Виды программ
- •2.Стадии жизненного цикла программного обеспечения
- •2.1.Основные процессы жизненного цикла программного обеспечения
- •2.2.Вспомогательные процессы жизненного цикла программного обеспечения
- •2.3.Организационные процессы жизненного цикла программного обеспечения
- •3.Основные понятия и показатели надежности программных средств
- •3.1.Показатели качества и надежности программного обеспечения
- •3.2.Дестабилизирующие факторы и методы обеспечения надежности функционирования программных средств
- •3.2.1.Модель факторов, определяющих надежность программных средств
- •3.2.2.Методы обеспечения надежности программных средств
- •Предупреждение ошибок
- •Обнаружение ошибок
- •Исправление ошибок
- •Устойчивость к ошибкам
- •Обработка сбоев аппаратуры
- •3.3.Модели надежности программного обеспечения
- •3.3.1.Аналитические модели надежности
- •Динамические модели надежности Модель Шумана
- •Модель La Padula
- •Модель Джелинского – Моранды
- •Модель Шика – Волвертона
- •Модель Мусса
- •Модель переходных вероятностей
- •Статические модели надежности
- •Модель Миллса
- •Модель Липова
- •Простая интуитивная модель
- •Модель Коркорэна
- •Модель Нельсона
- •3.3.2.Эмпирические модели надежности
- •Модель сложности
- •Модель, определяющая время доводки программ
- •3.3.3.Особенности обеспечения надежности функционирования импортных программных средств
- •4.Оценка надежности комплексов аппаратно-программных средств с учетом характеристик программного и информационного обеспечения
- •4.1.Постановка задачи
- •4.2.Общая схема проектной оценки надежности программного комплекса
- •4.2.1.Расчет исходного числа дефектов
- •4.2.2.Расчет остаточного числа дефектов после автономной отладки
- •4.2.3.Расчет остаточного числа дефектов после комплексной отладки
- •4.2.4.Оценка вероятности проявления дефекта при однократном выполнении фсо
- •4.2.5.Оценка вероятности проявления дефектов при многократном выполнении фсо
- •4.2.6.Оценка характеристик потоков инициирующих событий
- •4.2.7.Оценка показателей надежности системы с учетом случайного потока инициирующих событий
- •4.3.Факторные модели
- •4.3.1.Модели распределения числа дефектов в алгоритмах и базах данных
- •4.3.2.Модели распределения дефектов в базах данных
- •4.3.3.Модели эффективности отладки
- •Условная вероятность обнаружения дефекта в км r-го ранга
- •Безусловная вероятность обнаружения дефекта
- •Среднее остаточное число дефектов
- •4.3.4.Модели потоков инициирующих событий
- •4.4.Проектная оценка надежности программного комплекса при выполнении фсо
- •4.4.1.Вероятность проявления дефекта при однократном выполнении фсо
- •4.4.2.Вероятность проявления дефекта при многократном выполнении фсо
- •4.4.3.Вероятность безотказной работы пк в режиме мкцп при случайном потоке инициирующих событий
- •4.4.4.Учет процедур парирования ошибок
- •4.5.Пример проектной оценки надежности программного комплекса
- •4.5.1.Краткое описание аппаратно-программного комплекса
- •4.5.2.Оценка исходного числа дефектов
- •Исходное число дефектов по секциям и алгоритмам
- •Исходное число дефектов в секциях ввода и вывода
- •4.5.3.Оценка числа дефектов фпо по подсистемам до автономной отладки
- •Состав подсистем фпо
- •Исходное число дефектов в подсистемах до автономной отладки
- •4.5.4.Оценка остаточного числа дефектов после автономной отладки
- •Среднее остаточное число дефектов в секциях после ао
- •Результаты автономной отладки (вариант 1)
- •Длина тестовой последовательности после m-й серии
- •Зависимость эффективности ао от трудоемкости
- •4.5.5.Оценка остаточного числа дефектов после комплексной отладки
- •Результаты комплексной отладки
- •Коэффициент полноты отладки км различных рангов
- •4.5.6.Оценка вероятности проявления дефекта при однократном и многократном выполнении фсо после ко
- •Распределение вероятностей проявления дефекта по км
- •Вероятность проявления дефекта при однократном выполнении фсо
- •Вероятность проявления дефектов при многократном выполнении фсо
- •Вероятность проявления дефектов бд до отладки
- •Условная вероятность проявления дефектов бд после автономной отладки
- •Безусловная вероятность проявления дефектов бд после автономной отладки
- •Условная вероятность проявления дефектов бд после комплексной отладки
- •Безусловная вероятность проявления дефектов бд после комплексной отладки
- •Вероятность отказа фпо и ио при однократном выполнении фсо
- •4.5.7.Поток инициирующих событий
- •4.5.8.Вероятность безотказной работы пк
- •Интенсивность отказов подсистем
- •Показатели надежности подсистем
- •Показатели надежности подсистем с учетом парирования ошибок в ио
- •4.6.Оценка надежности программного комплекса по результатам отладки и нормальной эксплуатации
- •Экспоненциальная модель Шумана
- •Экспоненциальная модель Джелинского−Моранды
- •Геометрическая модель Моранды
- •Модель Шика−Волвертона
- •Модель Липова
- •Модель Мусы−Гамильтона
- •Вейбулловская модель (модель Сукерта)
- •Модель Уолла−Фергюссоиа (степенная модель)
- •Структурная модель Нельсона
- •Структурная модель роста надежности
- •Гиперболическая модель роста надежности
- •5.Литература
4.2.5.Оценка вероятности проявления дефектов при многократном выполнении фсо
Вероятность проявления остаточных
дефектов при
прогонах программ
зависит от вероятности
и степени независимости различных
прогонов. Если прогоны осуществляются
на одних и тех же входных наборах, то
зависимость максимальна, и тогда
.
Если же прогоны независимы, то
Все остальные случаи находятся между этими двумя крайними. Очевидно, что в сложном ПК даже при большом числе дефектов вероятность их проявления может быть очень мала, поскольку велико множество возможных сочетаний значений входных векторов и внутренних состояний программ. Верно и обратное: длительное безошибочное функционирование ПК вовсе не гарантирует того, что в нем нет дефектов, которые могут проявиться в самый неблагоприятный момент, несмотря на самую тщательную отладку. Об этом свидетельствует и практика эксплуатации больших ПК, например в информационно-вычислительных системах космических аппаратов.
4.2.6.Оценка характеристик потоков инициирующих событий
Инициирующим является любой сигнал,
требующий выполнения в полном объеме
или частично одной из ФСО. Основным
источником инициирующих событий (ИС)
является объект управления, в котором
изменение состояния может сопровождаться
формированием индикатора ИС. К другим
источникам ИС относятся оперативный
персонал, отказы технических средств,
смежные системы. Суммарный поток ИС
характеризуется интенсивностью
,
зависящей в общем случае от времени
функционирования.
4.2.7.Оценка показателей надежности системы с учетом случайного потока инициирующих событий
В режиме МКЦП в качестве показателей надежности могут использоваться вероятность безотказной работы, коэффициент готовности, коэффициент оперативной готовности. Для безотказной работы системы требуется успешное выполнение всех циклов, инициированных в течение установленного календарного времени. Поскольку число ИС является случайной величиной, модель надежности учитывает интенсивность потока ИС и вероятность проявления дефектов при однократном выполнении ФСО:
Коэффициент готовности
с определяется средним значением
интервала между соседними проявлениями
дефектов и средним временем устранения
обнаруженного дефекта. Коэффициент
оперативной готовности
зависит
от коэффициента готовности и вероятности
успешного однократного выполнения ФСО
и вычисляется по формуле
4.3.Факторные модели
При проектной оценке надежности факторные модели являются вспомогательными, предназначенными для вычисления параметров, необходимых при формировании модели надежности и определения вида зависимостей (10.9)−(10.11). К факторным относят модели распределения исходного числа дефектов по полю программ и данных, модели эффективности автономной и комплексной отладки, модели режимов применения, характеризующие потоки входных наборов данных, модели потоков инициирующих событий.
4.3.1.Модели распределения числа дефектов в алгоритмах и базах данных
На ранних стадиях проектирования в качестве исходных данных при оценке числа дефектов используют количество входов и выходов в структурной единице
ПО и уровень языка программирования. По этим данным рассчитывают потенциальный объем программы [10], [11]:
где
− суммарное количество независимых
входов и выходов.
Зависимость (10.1) имеет вид
Здесь
− удельный объем программы, равный
среднему объему программы, приходящемуся
на один дефект;
−
уровень языка. Для естественного язык
и близких к нему объектно-ориентированных
языков программирования
для языка типа ассемблера
.
По разработанным текстам программ можно найти параметры программ, и тогда исходное число дефектов находят по формуле
где
−
наблюдаемый объем программы;
−
теоретическая длина программы;
− словарь языка;
−
число операций;
−
число операндов;
−
количество используемых словарных
конструкций;
−
количество подпрограмм;
количество массивов переменных;
−
количество локальных меток;
−
количество констант;
.
Формулу (10.14) используют и для расчета
ИЧД в базах данных. В этом случае
−
объем в байтах
.