Устойчивость к ошибкам
Методы этой группы ставят своей целью обеспечить функционирование программной системы при наличии в ней ошибок.
Они разбиваются на три подгруппы: динамическая избыточность, методы отступления и методы изоляции ошибок.
1. Один из подходов к динамической избыточности — метод голосования. При этом данные обрабатываются независимо несколькими идентичными устройствами, и полученные результаты сравниваются. Если большинство устройств выработало одинаковый результат, этот результат и считается правильным.
2. Вторая подгруппа методов обеспечения устойчивости к ошибкам называется методами отступления или сокращенного обслуживания. Эти методы приемлемы обычно лишь тогда, когда для системы программного обеспечения существенно важно корректно закончить работу. Например, если ошибка оказывается в системе, управляющей технологическими процессами, и в результате эта система выходит из строя, то может быть загружен и выполнен особый фрагмент программы, призванный подстраховать систему и обеспечить безаварийное завершение всех управляемых системой процессов. Если операционная система обнаруживает, что вот-вот выйдет из строя, она может загрузить аварийный фрагмент.
3. Последняя подгруппа — методы изоляции ошибок. Основная их идея — не дать последствиям ошибки выйти за пределы как можно меньшей части системы программного обеспечения. Например, во многих операционных системах изолируются ошибки отдельных пользователей, так что сбой влияет лишь на него, а система в целом продолжает функционировать.
В большой вычислительной системе изоляция программ является ключевым фактором, гарантирующим, что отказы в программе одного пользователя не приведут к отказам в программах других пользователей или к полному выводу системы из строя.
Основные правила изоляции ошибок:
1. Прикладная программа не должна иметь возможности непосредственно ссылаться на другую прикладную программу или данные в другой программе и изменять их.
2. Прикладные программы и их данные должны быть защищены от операционной системы до такой степени, чтобы ошибки в операционной системе не могли привести к случайному изменению прикладных программ или их данных.
3. Прикладные программы не должны иметь возможность остановить систему.
4. Если операционная система обнаруживает ошибку в себе самой, она должна попытаться ограничить влияние этой ошибки одной прикладной программой.
4.3.3 Подходы к оценке надежности программных изделий
Все модели надежности программного изделия принято подразделять на эмпирические и аналитические.
Эмпирические модели основаны на анализе структуры программного изделия, а также на анализе готовых программ. Считается, что надежность прямо пропорциональна сложности программного изделия. Данные методы не дают конечных результатов надежности программного изделия и используются на начальных этапах оценки надежности.
Аналитические модели используются при получении количественных характеристик надежности программного изделия. При этом надежность может определяться непосредственно при тестировании программ и при испытаниях в реальных условиях.
Аналитическая модель надежности ПС включает четыре шага:
1. Определение предложений, связанных с процедурой тестирования ПС;
2. Разработка или выбор аналитической модели, базирующейся на предложениях о процедуре тестирования;
3. Выбор параметров моделей с использованием полученных данных;
4. Применение модели – расчет количественных показателей надежности по модели.
Все аналитические модели подразделяются на динамические и статистические. Динамические модели характеризуются определением показателей с учетом временных интервалов. В статистических количество ошибок не связывают с временем их появления.
Дата добавления: 2015-10-29; просмотров: 2052;