- Главная
- Информатика
- Средства и методы повышения надежности. Надежность программных продуктов. 3

Содержание
- 2. Принципы и методы обеспечения надежности программ, в соответствии с их целью, можно разделить на четыре группы:
- 3. Схема обеспечения надежного ПС
- 4. Принципы и методы предупреждения ошибок основной целью имеют не допустить появления ошибок в готовой программе. С
- 5. Защитное программирование – технология предупреждения потенциальных ошибок путем проверки в каждом модуле множества допустимых условий. Во
- 6. воздействие выходных переменных должно быть проверено, предпочтительно непосредственным наблюдением связанных с ними изменений состояния системы и
- 7. Многоверсионное программирование (N-версионное программирование). Основная цель : обнаружить и замаскировать остаточные ошибки проекта программного обеспечения в
- 9. Скачать презентацию
Слайд 2Принципы и методы обеспечения надежности программ, в соответствии с их целью, можно
Принципы и методы обеспечения надежности программ, в соответствии с их целью, можно

разделить на четыре группы:
Предупреждение ошибок,
Обнаружение ошибок
Исправление ошибок
Обеспечение устойчивости к ошибкам
К первой группе относятся принципы и методы, позволяющие минимизировать или вообще исключить ошибки.
Методы второй группы сосредоточивают внимание на функциях самого программного обеспечения, помогающих выявлять ошибки.
К третьей группе относятся функции программного обеспечения, предназначенные для исправления ошибок или их последствий.
Устойчивость к ошибкам (четвертая группа) – это мера способности системы программного обеспеченияпродолжать функционирование при наличии ошибок.
Предупреждение ошибок,
Обнаружение ошибок
Исправление ошибок
Обеспечение устойчивости к ошибкам
К первой группе относятся принципы и методы, позволяющие минимизировать или вообще исключить ошибки.
Методы второй группы сосредоточивают внимание на функциях самого программного обеспечения, помогающих выявлять ошибки.
К третьей группе относятся функции программного обеспечения, предназначенные для исправления ошибок или их последствий.
Устойчивость к ошибкам (четвертая группа) – это мера способности системы программного обеспеченияпродолжать функционирование при наличии ошибок.
Слайд 3Схема обеспечения надежного ПС
Схема обеспечения надежного ПС

Слайд 4Принципы и методы предупреждения ошибок основной целью имеют не допустить появления ошибок
Принципы и методы предупреждения ошибок основной целью имеют не допустить появления ошибок

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

множества допустимых условий.
Во время программирования может быть использовано много технических приемов, чтобы проверить аномалии в управлении или в данных. Вот примеры некоторых из них:
анализируются граничные значения переменных;
проверяются размеры, тип и диапазон параметров процедуры ввода данных;
- параметры “только для доступ к ним чтения” и “считывание-запись” должны быть разделены, и должен быть проверен доступ к ним;
символьные константы не должны быть доступны для записи;
-входные переменные и промежуточные (вспомогательные) переменные с физическим значением должны быть проверены на предмет достоверности;
Во время программирования может быть использовано много технических приемов, чтобы проверить аномалии в управлении или в данных. Вот примеры некоторых из них:
анализируются граничные значения переменных;
проверяются размеры, тип и диапазон параметров процедуры ввода данных;
- параметры “только для доступ к ним чтения” и “считывание-запись” должны быть разделены, и должен быть проверен доступ к ним;
символьные константы не должны быть доступны для записи;
-входные переменные и промежуточные (вспомогательные) переменные с физическим значением должны быть проверены на предмет достоверности;
Слайд 6воздействие выходных переменных должно быть проверено, предпочтительно непосредственным наблюдением связанных с ними
воздействие выходных переменных должно быть проверено, предпочтительно непосредственным наблюдением связанных с ними

изменений состояния системы и т.д.
Простейший метод защитного программирования заключается в использовании специальных ловушек ошибок, рассчитанных на ошибки типа неправильного использования модулей. Разработчика программы не интересует, что будет делать пользователь после того, как получит сообщение о неправильном использовании модуля, но при этом он обязан спроектировать модуль так, чтобы ошибки пользователя не вызывали необратимых изменений в модуле. Таким образом, пользователь, пойманный на неправильном употреблении модуля, принимает корректирующие действия и снова вызывает модуль, не оставляя никаких следов ошибочных вызовов. Иначе говоря, речь идет о таком программировании, когда программный продукт очень трудно или невозможно использовать за пределами области действия его спецификации.
Простейший метод защитного программирования заключается в использовании специальных ловушек ошибок, рассчитанных на ошибки типа неправильного использования модулей. Разработчика программы не интересует, что будет делать пользователь после того, как получит сообщение о неправильном использовании модуля, но при этом он обязан спроектировать модуль так, чтобы ошибки пользователя не вызывали необратимых изменений в модуле. Таким образом, пользователь, пойманный на неправильном употреблении модуля, принимает корректирующие действия и снова вызывает модуль, не оставляя никаких следов ошибочных вызовов. Иначе говоря, речь идет о таком программировании, когда программный продукт очень трудно или невозможно использовать за пределами области действия его спецификации.
Слайд 7Многоверсионное программирование (N-версионное программирование).
Основная цель : обнаружить и замаскировать остаточные ошибки
Многоверсионное программирование (N-версионное программирование).
Основная цель : обнаружить и замаскировать остаточные ошибки

проекта программного обеспечения в течение выполнения программ, чтобы предотвратить критически опасные отказы системы, и продолжать работу с высокой надежностью.
В многоверсионном программировании спецификация программы реализуется по-разному N раз. Те же самые значения входных данных задаются N версиям, и результаты, произведенные N версиями, сравниваются. Если результат считается достоверным, то он передается компьютеру в качестве выходных данных. N версии могут выполняться параллельно на отдельных компьютерах, альтернативно все версии могут выполняться на одном компьютере.
Выходные результаты подвергаются внутреннему голосованию. Для случаев, где не имеется коллективного согласия, могут быть использованы вероятностные подходы, чтобы максимизировать шанс выбора правильного значения, например, взяв среднее значение, временно заморозив выходные данные до возвращения согласия, и т.д.
В многоверсионном программировании спецификация программы реализуется по-разному N раз. Те же самые значения входных данных задаются N версиям, и результаты, произведенные N версиями, сравниваются. Если результат считается достоверным, то он передается компьютеру в качестве выходных данных. N версии могут выполняться параллельно на отдельных компьютерах, альтернативно все версии могут выполняться на одном компьютере.
Выходные результаты подвергаются внутреннему голосованию. Для случаев, где не имеется коллективного согласия, могут быть использованы вероятностные подходы, чтобы максимизировать шанс выбора правильного значения, например, взяв среднее значение, временно заморозив выходные данные до возвращения согласия, и т.д.
- Предыдущая
Управление исполнителем чертёжникСледующая -
Работа с данными
Введение в платформу .Net
Сайт решу ОГЭ. Тема 4, 5. Все задания
The test game
Homework 2. Написание программ
Презентация на тему Поколения ЭВМ
Mettaton's crush
XXI Сибирская молодежная ассамблея Профессии будущего
Блокчейн
Использование компьютерных программ в графическом дизайне
Синтез электрохромной пленки, основанной на соединении фуллерена лития и оксида переходного металла
Образовательная 3D-модель, пазл Белгородская область
Алгоритм. Циклический алгоритм. While, for. Range. Random
15 самых употребляемых типографических терминов
Описание модели приложения с помощью UML
Информационные технологии
Онлайн-школа Sattarovfamily
RCO Fact Exctractor SDK - Основные этапы обработки текста
Организация вычислений в электронных таблицах. Обработка числовой информации в электронных таблицах
Нейронные сети
Программное обеспечение ПКТС Олимп Версия 1.0
Устройства и типы ЭВМ
Система управления БД. Лекция 1
Юри на льду
Локаальные сети. Лекция 1
Всемирный день защиты прав потребителей - Цифровой мир: надежные смарт-устройства
Курс по основам программирования на Python. Двумерные массивы
Векторное кодирование графической информации
Разработка баз данных