Слайд 2Надежность программного обеспечения
Лекция 4
![Надежность программного обеспечения Лекция 4](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-1.jpg)
Слайд 3Надежность программного обеспечения
Надежность программного обеспечения (ПО) – свойство программы выполнять заданные функции,
![Надежность программного обеспечения Надежность программного обеспечения (ПО) – свойство программы выполнять заданные](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-2.jpg)
сохранять свои характеристики в установленных пределах при определенных условиях эксплуатации.
Безотказность программы или программного обеспечения есть его (ее) свойство сохранять работоспособность при использовании в процессе обработки информации на компьютере.
Восстанавливаемость определяется затратами времени и труда на устранение отказа из-за проявившейся ошибки в программе и его последствий.
Слайд 4Сравнительная характеристика аппаратных и программных отказов
Вопрос 1
![Сравнительная характеристика аппаратных и программных отказов Вопрос 1](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-3.jpg)
Слайд 5Сравнительная характеристика аппаратных и программных отказов
Общее между программными и аппаратными отказами:
а) невыполнение
![Сравнительная характеристика аппаратных и программных отказов Общее между программными и аппаратными отказами:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-4.jpg)
объектом заданных функций;
б) времена до отказов и времена устранения отказов носят случайный характер;
в) методы обработки статистических данных об отказах одинаковы, а потому статистические оценки показателей надёжности аппаратной и программной, полученные по результатам испытаний и эксплуатации, могут быть одинаковыми по своему названию: средняя наработка объекта на программный отказ, интенсивность программных отказов объекта и т.д.
Возможны и объединённые (комплексные) оценки: средняя наработка объекта на программный и аппаратный отказ и т.п.
Слайд 6Сравнительная характеристика аппаратных и программных отказов
Программные отказы существенно отличаются от отказов аппаратных:
а)
![Сравнительная характеристика аппаратных и программных отказов Программные отказы существенно отличаются от отказов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-5.jpg)
отказ аппаратный зависит либо от времени, либо от объёма выполненной работы, а отказ программный – от той функции, которую выполняет изделие под управлением программы;
б) обнаружение и устранение аппаратного отказа не означает, что такой же отказ не повторится при дальнейшей работе изделия, а обнаружение и устранение отказа программного означает, что такой отказ в дальнейшем не повторится;
Слайд 7Сравнительная характеристика аппаратных и программных отказов
Программные отказы существенно отличаются от отказов аппаратных:
в)
![Сравнительная характеристика аппаратных и программных отказов Программные отказы существенно отличаются от отказов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-6.jpg)
программный отказ, обнаруживаемый при автономной проверке программы, может переходить в разряд недействующих, если состояние аппаратуры делает её нечувствительной к данному виду программного отказа.
г) прогнозировать возникновение аппаратных отказов сравнительно легко, а прогнозировать возникновение отдельных программных отказов трудно, а часто и невозможно;
Слайд 8Сравнительная характеристика аппаратных и программных отказов
Программные отказы существенно отличаются от отказов аппаратных:
д)
![Сравнительная характеристика аппаратных и программных отказов Программные отказы существенно отличаются от отказов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-7.jpg)
аппаратные отказы целесообразно подразделять на внезапные и постепенные, т.е. отказы, различные по своей физической природе, законам распределения времени до отказа, методам борьбы за снижение их вероятности.
Программные отказы нет смысла делить на внезапные и постепенные. Они возникают, как только программа переходит на такой участок, который содержит "ошибку". В то же время они по природе своей не совпадают с внезапными аппаратными отказами.
Слайд 9Основные причины отказов ПО
Вопрос 2
![Основные причины отказов ПО Вопрос 2](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-8.jpg)
Слайд 10Основные причины отказов ПО
Основные причины непосредственно вызывающие нарушение нормального функционирования программы:
Ошибки,
![Основные причины отказов ПО Основные причины непосредственно вызывающие нарушение нормального функционирования программы:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-9.jpg)
скрытые в самой программе.
Искажения входной информации, подлежащей обработке.
Неверные действия пользователя.
Неисправность аппаратуры установки, на которой реализуется вычислительный процесс.
Слайд 11Основные причины отказов ПО
1. Скрытые ошибки программы являются главным фактором нарушения нормальных
![Основные причины отказов ПО 1. Скрытые ошибки программы являются главным фактором нарушения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-10.jpg)
условий его функционирования.
Основные ошибки в программе:
Ошибки вычислений
Логические ошибки
Ошибки ввода-вывода
Ошибки манипулирования данными
Ошибки совместимости
Ошибки сопряжений
Слайд 12Основные причины отказов ПО
2. Искажения информации, подлежащей обработке, вызывает нарушение функционирования ПО,
![Основные причины отказов ПО 2. Искажения информации, подлежащей обработке, вызывает нарушение функционирования](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-11.jpg)
когда входные данные не попадают в область допустимых значений переменных программы.
Причины искажения вводимой информации:
искажения данных на первичных носителях информации;
сбои и отказы в аппаратуре ввода данных с первичных носителей информации;
шумы и сбои в каналах связи при передачи сообщений по линиям связи и т.д.
Слайд 13Основные причины отказов ПО
3. Неверные действия пользователя, приводящие к отказу в процессе
![Основные причины отказов ПО 3. Неверные действия пользователя, приводящие к отказу в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-12.jpg)
функционирования ПО связаны, прежде всего:
с неправильной интерпретацией сообщений,
неправильными действиями пользователя в процессе диалога с компьютером и т.д.
Слайд 14Основные причины отказов ПО
4. Неисправность аппаратуры – неисправности, возникающие при работе аппаратуры,
![Основные причины отказов ПО 4. Неисправность аппаратуры – неисправности, возникающие при работе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-13.jpg)
используемой для реализации вычислительного процесса, оказывают влияние на характеристику надежности ПО.
Появление отказа или сбоя в работе аппаратуры приводит к нарушению нормального хода вычислительного процесса и во многих случаях к искажению данных и текстов программ в основной и внешней памяти.
Слайд 15Основные причины отказов ПО
Признаки появления ошибок:
преждевременное окончание выполнения программы;
недопустимое увеличение
![Основные причины отказов ПО Признаки появления ошибок: преждевременное окончание выполнения программы; недопустимое](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-14.jpg)
времени некоторой последовательности команд одной из программ;
полная потеря или значительное искажение накопленных данных, необходимых для успешного выполнения решаемых задач;
Слайд 16Основные причины отказов ПО
Признаки появления ошибок:
нарушение последовательности вызова отдельных программ, в
![Основные причины отказов ПО Признаки появления ошибок: нарушение последовательности вызова отдельных программ,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-15.jpg)
результате чего происходит пропуск необходимых программ;
искажение отдельных элементов данных (входных, выходных, промежуточных) в результате обработки искаженной исходной информации.
Слайд 17Основные показатели и модели надежности ПО
Вопрос 3
![Основные показатели и модели надежности ПО Вопрос 3](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-16.jpg)
Слайд 18Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-17.jpg)
Слайд 19Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-18.jpg)
Слайд 20Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-19.jpg)
Слайд 21Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-20.jpg)
Слайд 22Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-21.jpg)
Слайд 23Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-22.jpg)
Слайд 24Основные показатели надежности ПО
![Основные показатели надежности ПО](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-23.jpg)
Слайд 25Модели надежности ПО
Аналитические модели дают возможность рассчитывать количественные показатели надежности, основываясь на данных
![Модели надежности ПО Аналитические модели дают возможность рассчитывать количественные показатели надежности, основываясь](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-24.jpg)
о поведении программы в процессе тестирования.
Эмпирические модели базируются на анализе структурных особенностей программ.
Слайд 26Модели надежности ПО
В динамических поведение ПО (появление отказов) рассматривается во времени.
В статических моделях появление отказов
![Модели надежности ПО В динамических поведение ПО (появление отказов) рассматривается во времени.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-25.jpg)
не связывают со временем, а учитывают только зависимость количества ошибок от числа тестовых прогонов или зависимость количества ошибок от характеристики входных данных.
Слайд 27Динамические модели надежности
Модель Шумана
Модель Шумана может быть использована при определенном образе организованной
![Динамические модели надежности Модель Шумана Модель Шумана может быть использована при определенном](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-26.jpg)
процедуре тестирования.
Использование модели Шумана предполагает, что тестирование проводится в несколько этапов.
При использовании модели Шумана предполагается, что исходное количество ошибок в программе постоянно, и в процессе тестирования может уменьшаться по мере того, как ошибки выявляются и исправляются.
Слайд 30Статические модели надежности
Статические модели принципиально отличаются от динамических прежде всего тем, что
![Статические модели надежности Статические модели принципиально отличаются от динамических прежде всего тем,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1121315/slide-29.jpg)
в них не учитывается время появления ошибок в процессе тестирования и не используется никаких предположений о поведении функции риска.
Эти модели строятся на твердом статическом фундаменте.