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