Надежность информационных систем

Федеральное Государственное  Бюджетное 

образовательное учреждение

высшего профессионального образования

«Ярославский государственный  технический университет»

Кафедра «Информационные системы и технологии»

 

 

 

 

 

Контрольную работу защитил

с оценкой ________________

Преподаватель,

доцент

_________А.Б. Раухваргер

«____»______________2013 г

 

 

 

 

 

Контрольная работа по дисциплине

«Надежность информационных систем»

 

ЯГТУ 230201.65 – 006 к/р

 

 

 

 

 

Работу выполнил

студент гр. ДСИТ-57

_________ Ю.В. Бесчастный

«____»____________2013 г

 

 

 

 

 

 

 

 

 

2013

Содержание

 

 

Задание

  1. Надежность системы характеризуется экспоненциальным распределением времени безотказной работы при неустранимых отказах со средним временем безотказной работы =500. Определить за какое время вероятность отказа равна pв=0,03.
  2. Система состоит из двух блоков, так что она работоспособна при условии, что оба блока работают безотказно. Определить вероятность безотказной работы системы за t=400 от начала работы, если первый блок описывается экспоненциальным распределением времени безотказной работы со среднем временем безотказной работы = 300, а второй – Распределением Рэлея с наиболее вероятным временем отказов t0= 500.
  3. Определить по данным задачи 2 вероятность безотказной работы системы, если  введено трехкратное общее резервирование с постоянным включением.
  4. Определить по данным задачи 2 вероятность безотказной работы системы, если  введено трехкратное раздельное резервирование постоянным включением.
  5. Система работает при наличии быстро устранимых отказов с интенсивностью отказов = 0,03 определить вероятность того, что за время t= 40 произойдет событие A (n= 0 или n= 1) (Использовать распределение Пуассона).
  6. Написать краткий реферат по оценке надежности программных средств.

 

 

Задача 1

Надежность системы  характеризуется экспоненциальным распределением времени безотказной работы при неустранимых отказах со средним временем безотказной работы . Определить за какое время вероятность отказа равна .

 суток.

- вероятность отказа системы.

, где

- вероятность безотказной работы,

- момент времени,

- среднее время безотказной работы.

суток.

 

За время в 15 суток вероятность отказа системы равна 0,03.

 

 

Задача 2

Система состоит из двух блоков, так что она работоспособна при условии, что оба блока работают безотказно. Определить вероятность безотказной работы системы за t от начала работы, если первый блок описывается экспоненциальным распределением времени безотказной работы со среднем временем безотказной работы , а второй – Распределением Рэлея с наиболее вероятным временем отказов t0.

 суток,

 суток,

 суток,

 - вероятность безотказной работы блока при экспоненциальном распределением времени.

- вероятность безотказной работы  блока при распределении Рэлея.

- параметр распределения Рэлея.

- наиболее вероятное время  отказа блока (средняя наработка до отказа).

- вероятность безотказной работы  системы.

Вероятность безотказной работы системы равна 0,53.

 

 

Задача 3

Определить по данным задачи 2 вероятность безотказной  работы системы, если  введено трехкратное общее резервирование с постоянным включением.

 суток,

 суток,

 суток,

При общем резервировании с постоянным включением, резервируется  не каждый отдельный блок системы, а  система полностью, причем резервные системы включены параллельно основной и работают, вместе с ней, поэтому из расчета задачи №2 следует:

Вероятность безотказной  работы системы, если введено трехкратное  общее резервирование с постоянным включением, равна 1,59.

 

 

 

Задача 4

Определить по данным задачи 2 вероятность безотказной  работы системы, если  введено трехкратное раздельное резервирование постоянным включением.

 суток,

 суток,

 суток,

При раздельном резервировании постоянным включением, резервируется каждый отдельный блок системы, причем резервные блоки включены параллельно основным и работают вместе с ними, а система в целом образует последовательное включение двух блоков, каждый из которых трехкратно зарезервирован параллельно, поэтому из расчета задачи №2 следует:

 

Так как вероятность безотказной работы системы при последовательном соединении не может быть выше вероятности безотказной работы самого ненадежного из ее элементов, получим, что вероятность безотказной работы системы, если введено трехкратное раздельное резервирование постоянным включением, равна 0,82.

 

 

 

Задача 5

Система работает при  наличии быстро устранимых отказов  с интенсивностью отказов определить вероятность того, что за время t произойдет событие A (Использовать распределение Пуассона).

- интенсивность отказов (среднее  число событий, приходящееся на  единицу времени).

 сек.

- количество отказов.

Вероятность того, что  за время  произойдет ровно отказов, будет равна:

Вероятность того, что  за 40 секунд произойдет 0 отказов с интенсивностью отказов 0,03, равна 0,301. Вероятность того, что за 40 секунд произойдет 1 отказов с интенсивностью отказов 0,03, равна 0,3612.

 

 

Оценка надежности программных средств

В настоящее  время деятельность многих организаций  и предприятий напрямую зависит от правильной обработки информации соответствующими программными средствами.

К настоящему времени более 90 стран  мира адаптировали стандарты ISO 900x на национальном уровне. Во многих случаях заказчикам необходимо знать, каким образом  на предприятии обеспечивается качество разрабатываемого программного средства. В этом случае соответствие стандартам является гарантией качества программного средства.

Одним из основных стандартов качества в  области инженерии программного обеспечения в настоящее время является стандарт ISO/IEC 9126-1:2001 – Software engineering – Product quality (Информационная технология. Качество программного продукта).

ISO/IEC 9126 регламентирует шесть основных  характеристик качества программных  средств: функциональность, надежность, эффективность, практичность, сопровождаемость, мобильность.

Одной из основных характеристик  качества программных средств является надежность. Оценка надежности разрабатываемого программного средства является одной из важных задач, стоящих перед разработчиком программного средства.

Как правило, современные программные средства имеют модульную структуру. Оценка надежности всего программного средства является достаточно сложной задачей. Существенно проще оценить надежность отдельно взятых модулей, а потом дать общую оценку надежности всего программного средства.

При оценке надежности модуля необходимо учитывать  не только количество ошибок, но также и последствия, которые могут произойти в результате возникновения ошибки, и вероятность ввода k-го набора данных, приведшего к ошибке. В соответствии с международным стандартом IEEE 1044.1-1995 Guide to Classification for Software Anomalies (Классификация ошибок программного средства) все ошибки можно разбить на 6 основных групп, представленных в таблице.

Таблица. Классификация ошибок программного средства в соответствии со стандартом IEEE 1044.1-1995.

Название  ошибки

Описание 

Priceless

Ошибка, после возникновения которой  модуль перестает функционировать

High

Ошибка, после возникновения которой модуль функционирует, но функционирует неверно

Medium

Ошибка, после возникновения которой  пользователь может продолжать использовать модуль, но данная ошибка может нанести  существенный урон данным

Low

Ошибка, последствия которой носят незначительный характер

None

Ситуация, когда одна часть пользователей  считает, что это нормальное поведение  модуля, а вторая часть, что произошла  ошибка

Detrimental

Ситуация, когда возможно появление ошибки (примером такой ситуации может быть постоянно растущий объем оперативной памяти, используемой модулем)


Кроме того, следует учесть ситуацию, когда ошибка при вводе k-го набора данных может не возникнуть.

Предлагается следующая  методика определения оценки надежности модуля. Каждому типу ошибки экспертным путем присваивается вес , условие нормирования для имеет вид . Чем выше вес ошибки, тем более серьезные последствия она несет. соответствует ситуации отсутствия ошибки. Очевидно, что значение равно нулю. Тогда оценка надежности i – го модуля определяется по формуле

     (1)

где D – количество наборов данных, введенных пользователем; – вес произошедшей k-й ошибки; причем ; – вероятность ввода k-го набора данных.

Условие нормирования для имеет вид .

Приведем пример. Оцениваемый  модуль должен выполнять три операции: получение всех записей из базы данных, добавление новой записи в базу данных и удаление не нужной записи из базы данных. Пусть вероятность получения всех записей равна 0.5, вероятность добавления новой записи равна 0.3 и вероятность удаления не нужной записи равна 0.2. Допустим, что получение всех записей прошло без ошибок, добавление новой записи прошло с ошибкой типа High (пользователь получил ответ об успешном завершении операции, хотя на самом деле запись не была добавлена), а удаление не нужной записи прошло с ошибкой типа Detrimental (запись была удалена, но процесс удаления занял продолжительный период времени). Веса ошибок Priceless, High, Medium, Low, None, Detrimental соответственно равны 0.5, 0.3, 0.1, 0.05, 0.035, 0.015. Тогда оценка надежности модуля будет равна

При оценке надежности всего  программного средства необходимо учитывать, что различные модули в различной  степени влияют на надежность программного средства (например, ошибка, возникшая  при сохранении информации более критична, чем ошибка, возникающая при ее отображении).

Введем понятие веса модуля, как степени влияния отказа модуля на отказ всего программного средства.

Обозначим вес i-го модуля как . Условие нормирования для имеет вид . где n – количество модулей в программном средстве. Чем ближе значение к единице, тем больше отказ i-го модуля влияет на отказ всего программного средства.

Оценка надежности разрабатываемого программного средства определяется по формуле

.     (2)

Предлагается следующий  набор метрик для оценки веса модуля. При этом в метриках основанных на сравнении с базовыми аналогами (метрики 5, 6), будем считать, что аналоги разработаны персоналом такой же квалификации и при той же организации процесса разработки.

Пусть программа содержит несколько  модулей.

1. Метрика “Потребляемые  ресурсы модулем”. Как правило,  более весомый модуль потребляет  и больше ресурсов.

Если обозначить А – объем  потребляемых ресурсов модулем (объем  оперативной памяти и т. п.), В –  общий объем потребляемых программным  средством ресурсов, то числовую оценку метрики можно найти по формуле . При этом справедливо: 0 < А < В, 0 < X < 1.

2. Метрика “Время работы  модуля”. Как правило, чем большее  время находится модуль в работе, тем он более весом. 

Если обозначить А – время  работы модуля, В – общее время  выполнения всей задачи, то числовую оценку метрики можно найти по формуле . При этом справедливо: 0 < А < В, 0 < X < 1.

3. Метрика “Частота  использования модуля”. Вероятность  появления ошибки возрастает с ростом количества вызовов модуля, поэтому часто вызываемые модули более весомы нежели модули вызываемые реже.

Если обозначить А – количество вызовов модуля, В – общее количество всех вызовов модулей, то числовую оценку метрики можно найти по формуле . При этом справедливо:

4. Метрика “Зависимость  модулей”. Как правило, в программном средстве модули связаны в древовидную структуру, где неправильная работа одного модуля приводит к неправильной работе других модулей.

Если обозначить А – количество модулей зависящих от данного  модуля, В – общее количество всех модулей, то числовую оценку метрики можно найти по формуле . При этом справедливо:

5. Метрика “Объем модуля”.  Как правило, наиболее весомые  модули имеют больший объем кода.

Если обозначить А – объем  модуля (например, число строк кода), B – объем кода аналогичного по функциональности модуля, взятый из статистических данных организации-разработчика программного средства, то числовую оценку метрики можно найти по формуле . При этом справедливо:

6. Метрика “Команда  разработки модуля”. Как правило,  в разработке наиболее весомых модулей принимает участие большее количество разработчиков.

Если обозначить А – количество разработчиков, принимающих участие  в разработки модуля, B – количество разработчиков, принимавших участие в создании аналогичного по функциональности модуля, взятое из статистических данных организации-разработчика программного средства, то числовую оценку метрики можно найти по формуле . При этом справедливо:

Вес i-го модуля определяется по формуле

     (3)

где m – общее количество метрик; – количество метрик используемых для расчета значения веса i-го модуля ; – значение j-ой метрики, относящейся к i-му модулю; – весовой коэффициент j-ой метрики, относящейся к i-му модулю, определяющийся по статистическим данным организации разработчика программного средства или экспертным путем.

Зная надежность модулей  и их веса , по формуле (2) можно найти надежность всего программного средства.

 

Список литературы

1. Надежность технических  систем: Справочник/Под ред. Ушакова  И.А. - М.: Радио и связь, 1985. - 608 с.

2. Левин В.И. Логическая  теория надежности сложных систем. - М.: Энергоатомиздат, 1985. - 128 с.

3. Рябинин И.А., Черкесов Г.Н. Логико-вероятностные методы исследования надежности структурно-сложных систем. - М.: Радио и связь, 1981. - 216 с.

4. Лонгботтом Р. Надежность  вычислительных систем. - М.: Энергоатомиздат.1985.

5. Майерс Г. Надежность программного обеспечения. -М.: Мир, 1980.




Надежность информационных систем