Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ТРПП 2 семестр.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
208.9 Кб
Скачать
  1. Основные понятия о надежности программных продуктов и методах ее обеспечения

6.1 Используемые термины

При определении надежности ПП пользуются следующими принятыми терминами.

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

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

Проблемаотклонение от заданных технических характерис­тик или ожидаемых результатов.

Ошибка при обработкевывод некорректных результатов npi выполнении процесса обработки.

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

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

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

Корректность Эффективность Целостность Надежность Применимость

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

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

Процесс создания надежного ПП в отличие от аппаратного обеспечения не зависит от времени, что демонстрируют модели надежности аппаратного обеспечения и ПП, имеющие вид тра­диционных U-образных кривых, представленных соответственно На рисунке 29 представлена топология факторов качества,. Основной показатель, влияющий на надеж­ность ПП — сложность разрабатываемых программ.

Процесс создания надежного ПП в отличие от аппаратного обеспечения не зависит от времени, что демонстрируют модели надежности аппаратного обеспечения и ПП, имеющие вид тра­диционных U-образных кривых, представленных соответственно на рисунке 28 и 29, где к — планируемое число сбоев.

Рисунок. 29- Топология факторов качества программного продукта

Рисунок 28- U-образная кривая надежности аппаратного обеспечения

В отличие от аппаратного обеспечения ПП с течением времени не «изнашивается», просто выявляются все новые и новые его дефекты. Изображенная на рисунке 28 U-образная кривая демонст­рирует распределение сбоев на протяжении эксплуатации программы. Проявление сбоев в ПП отличается от характера сбоев аппаратуры, причем их вероятность всегда выше нуля.

Рисунок 29- U-образная кривая надежности программных продуктов

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

Основная масса проблем, связанных с достижением надежности, относится к тестированию ПП.

Остановимся на рассмотрении четырех методов, обеспечива­ющих создание высоконадежного ПП:

прогнозирование ошибок — создание моделей надежности, анализ исторических данных, сбор информации об ошибках, про­филирование операционной среды;

предотвращение ошибок — использование формальных мето­дов, повторное использование программ, применение инструмен­тов конструирования программ;

устранение ошибок — формальное инспектирование, верифи­кация и аттестация;

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