ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Функциональное соответствие.Это степень, с которой программное обеспечение обеспечивает выполнение функций системы в целом. Конкретная оценка возможна, если имеется строгое документирования и определение требований к системе, а также четкое описание потребностей. Функциональное соответствие подразделяется на ряд характеристик, каждую из которых можно оценивать значениями 1, 0 или “–“. 1 – да, 0 – нет «–» - показатель не подходит.
Функциональное соответствие описываются следующими характеристиками: 1. Соответствие требованиям 2. Безошибочность 3. Комплексируемость 4. Согласованность 5. Конфиденциальность
Соответствие требованиям – все функциональные требования задокументированы. Архитектура аппаратного обеспечения описана в документации. То же самое с архитектурой программного обеспечения. Ввод, обработка и вывод данных определены. Требования к испытаниям аппаратуры и ПО, определены. Результаты испытаний задокументированы. Аппаратура и программная среда каждого испытания описана.
Безошибочность: Коэффициент значащих цифр – отношение реализованного количества к тому количеству, которое необходимо для обеспечения требуемой точности Коэффициент объема программы – отношение действительного объема к требуемому Коэффициент точности – отношение объема данных, полученных с требуемой точностью, к общему объему данных
Конфиденциальность: Коэффициент контроля доступа к ПО – отношение количества несанкционированных обращений к ПО, к общему числу таких попыток Коэффициент контроля доступа к данным – отношение количества несанкционированных обращений к данным, к общему числу таких попыток Коэффициент зашифрованности данных – отношение объема зашифрованных данных к объему данных, которые должны быть зашифрованы Коэффициент повреждения данных – частота повреждения данных в процессе эксплуатации Коэффициент выявления непредусмотренных действий – отношение количества выявленных несанкционированных действий к общему числу попыток их проведения
Надежность. Под надежностью понимают свойства объекта сохранять во времени в установленных пределах значения всех параметров, которые характеризуют способность выполнять требуемые функции в заданных режимах и условиях применения. Безотказность – свойства объекта непрерывно сохранять работоспособное состояние в течение некоторого времени. Исправное состояние – состояние объекта, при котором он соответствует всем требованиям нормативной и конструкторской документации. Неисправное состояние – состояние объекта, при котором он не соответствует хотя бы одному из требований нормативной и конструкторской документации. Работоспособное состояние – состояние объекта, при котором значение всех параметров, характеризующих способность выполнять заданные функции, соответствует требованиям нормативно-технической и конструкторской документации. Неработоспособное состояние – хотя бы 1 параметр не удовлетворяет требованиям. Предельное состояние – состояние объекта, при котором его дальнейшее использование по назначению недопустимо или нецелесообразно. 1 – повреждение 2 – отказ 3 – восстановление 4 – ремонт 5 – вследствие нарушения техники безопасности, морального старения и др.
Показатель надежности – количественная характеристика одного или нескольких свойств, характеризующих вероятность надежность.
Показатели надежности: Вероятность безотказной работы – вероятность того, что за заданное время отказ не наступит P(t0) = 1 – Q(t0), где Q(t0) – вероятность того, что отказ наступит Наработка до отказа – это продолжительность времени от начала эксплуатации объекта до возникновения первого отказа. Наработка между отказами – время от окончания восстановления до наступления следующего отказа. Технический ресурс - время от начала эксплуатации объекта до перехода в предельное состояние. Срок службы – это календарная продолжительность от начала эксплуатации объекта, или от её возобновления после ремонта, до перехода в предельное состояние. Коэффициент готовности – вероятность того, что объект окажется в работоспособном состоянии в произвольный момент времени. Коэффициент готовности может быть функцией времени. Кг = tо/(tо+ tв), где tо – наработка на отказ, tв – среднее время восстановления. Коэффициент технического использования - Kт.и. = M(tp)/(M(tp) + M(t*рем)), где M(tp) – математическое ожидание времени, которое объект находится в работоспособном состоянии, а M(t*рем) - … в ремонте.
Виды отказов Независимый отказ – отказ, не обусловленный отказом какой-то другой части системы. Зависимый отказ – отказ, обусловленный отказом какой-то другой части системы. Внезапный отказ – отказ, который характеризуется скачкообразным изменением значений одного или нескольких параметров системы, которые определяют работоспособность. Постепенный отказ – отказ, который характеризуется плавным изменением одного или нескольких параметров системы, которые характеризуют ее работоспособность. Можно спрогнозировать. Перемежающийся отказ – многократно возникающий, самоустраняющийся отказ одного и того же характера. Эксплуатационный отказ – отказ вследствие нарушения установленных правил или условий эксплуатации.
Причина отказа – это явление, процесс или событие, обусловившее возникновение отказа.
Резервирование Резервирование – важнейшее средство улучшения показателей надежности.
Под резервированием понимают применение дополнительных средств или возможностей с целью сохранения рабочего состояния объекта при отказе одного или нескольких его элементов.
Под дополнительными средствами и возможностями понимаются резервные элементы. А также применения алгоритмов и программных средств с избыточностью.
Существуют различные виды резервирования: • Общее резервирование, когда объект или система в целом резервируются. • Резервирование группы элементов системы. • Различают постоянное и динамическое резервирование.
Основные понятия в надежности ПО.
В информационных системах важнейшей частью является программное обеспечение, так что остановимся на надежности ПО. Надежность ПО – это уровень, при котором система программ удовлетворяет поставленным требованиям и пригодна для эксплуатации.
Т.к. вообще говоря, программа может удовлетворять поставленным требованиям, но при этом не быть пригодной для эксплуатации. К сожалению, невозможно выделить единственный критерий качества программы. Составные части качества: Точность, надежность, устойчивость к ошибкам исходных данных, характеристики безопасности, машинная независимость, модифицируемость,...
Действия, с помощью которых определяют показатели качества (в том числе и надежности ПО):
Основные понятия надежности ПО взяты из технических определений. Однако, имеется некоторая специфика, весьма значительная.
Специфика понятий надежности, применяемых в общетехнических вопросах к ПО:
Отказ – это событие, заключающееся в нарушении работоспособности системы. Это же понятие целиком применимо к ПО. Операция восстановления – переход из неработоспособного состояния в работоспособное. Аналогично применимо к ПО. Устойчивый отказ – такой отказ, который требует специальных мер по восстановлению работоспособности. Самоустраняющийся отказ – (синоним «сбой») это отказ, который характеризуется достаточно быстрым восстановлением без вмешательства. Играет значительную роль для ПО. В аппаратуре отказ – это физическое нарушение. Для устранения отказа требуется мозг! В комплексе программ бывает сбой нарушения кодов, по которым работает программа, или искажение данных в памяти. Проявляться может по-разному (программный останов, зацикливание, пропуск выполнения группы команд, искажение накопленных данных и т.д.). В любом случае, отказ приводит или к прекращению выдачи информации, или к значительному искажению их содержанию, или к значительному искажению темпа выдачи. Когда говорят о надежности программ, подразумевают, что аппаратура работает исправно. Первопричина нарушения работоспособности программ при исправной аппаратуре – это конфликт между реальными данными и обрабатывающей их программной.
(1) - Работоспособность можно гарантировать только на пересечении всех трех множеств. (2), (4) – возможно будет неправильно работать (3) – большая неопределенность, возможны значительные аномалии
Сбой – частный случай отказа, когда он не требует вмешательства. Сбой характеризуется: tвосст < tдоп tвосст – время, которое нужно для восстановления отказа. tдопустимое – время, за которое не нарушается работоспособность. Определяется спецификой системой.
Если самоустраняющийся отказ происходит за время меньше tдоп, а также для восстановления отказа нужно потратить времени < tдоп, то говорим, что имеет место сбой. Время tдоп определяется спецификой объекта и характеристиками: • Инерционностью объекта, который служит источником информации • Периодичностью или средним темпом решения задачи • Необходимым временем реакции системы
Правильная (корректная) программа – которая обеспечивает правильные выходные данные, когда они находятся в области, которая задана требованиями ТЗ (область 1) и отсутствуют ошибки в области 2 и 4. Некорректнаяпрограмма – если данные из областей 2 или 4 и будут ненайденные ошибки. Надежная программа – время восстановления меньше, чем время допустимое. Т.е. может оказаться, что программа некорректна, но она надежна. Если же данные в области реализуемых данных (область 3), то формально правильная программа, которая выполняет всем требованиям, может оказаться ненадежной.
Главная задача при восстановлении ПО: tвосст < tдоп, т.е. отказ à сбой. Для решения задачи tвосст < tдоп (обеспечения высокой надежности), в комплексе программ должны быть средства, которые позволяют: 1. Производить систематический контроль и оперативно обнаруживать аномалии программ и данных 2. Диагностировать полученное искажение 3. Выбирать методы и средства оперативного восстановления 4. Реализовывать это восстановление 5. Регистрировать все сбои для того, чтобы выявить систематические случаи и внести исправления.
Причины искажений и снижение достоверности результатов в большинстве случаев рассматривают, как случайные, т.к. непредсказуемы. Для их снижения применяют фильтры - это средства, которые выявляют отдельные типа искажений. Для реализации таких фильтров основным средством является избыточность. Основная задача кода избыточности – это ограничение, а в идеальном случае исключение, аварийных последствий от возмущений. Избыточность
Избыточность – основное средство повышения надежности ПО. А также качества.
Существует несколько видов избыточности:
Временная избыточность – это когда некоторая часть производительности используется для контроля исполнения программ. Величина временной избыточности варьируется в широких пределах (от 5%, до х3-х4). Временная избыточность используется на контроль правильности процесса, на обнаружение искажений, на диагностику искажений, а также на реализацию операций восстановления. Один из вариантов временной избыточности – дублирование вычислительного процесса.
Информационная избыточность. Под ней понимается дублирование исходных и промежуточных данных, обрабатываемых программами. Используется для сохранения достоверности наиболее значимых данных. А также тех данных, восстановление которых потребовало бы значительного времени. Это обычно глобальные данные, которые обычно используются на различных этапах. Такие данные обычно защищают 3-кратным дублированием и периодическим обновлением. Таким образом, избыточность помогает устранить ошибки. Многие же данные, существующие короткое время, не имеют информационной избыточности и не защищаются. Программная избыточность. Заключаются в применении нескольких вариантов программы – задача решается различными методами, либо один и тот же метод отличается программной реализацией. В результате можно сопоставить результаты и устранить искажения, которые обусловлены ошибками или сбоями. Кроме того, программная избыточность необходима для реализации информационной и временной избыточности.
Избыточность дорого стоит. Тратится производительность самого процессора и, кроме того, дополнительные затраты на написание и отладку программ. Т.е. помимо стоимости избыточной, препятствием является психология руководителей и программистов проекта, желание свести к минимуму и чрезмерный оптимизм по поводу правильности своих программ. Этот оптимизм приводит к массовому пренебрежению всякими избыточностями.
Отметим, какие бывают ошибки в программах. • Технологические ошибки. При вводе программ в память, при подготовке носителей, при выводе. • Программные ошибки. Это неправильная запись на языке программирования, а также ошибки трансляции. • Алгоритмические ошибки. Это некорректная постановка задач, ошибки в условиях решения. • Системные ошибки. Это отклонения функционирования комплексов программ от предполагавшихся при проектировании.
Надо исходить из того, что ошибки всегда есть. Их нет только в случае простейших программ и при благоприятном стечении обстоятельств. Поэтому нужно обнаруживать ошибки. Методы обнаружения основывается на тестировании.
Тестирование бывает: • Детерминированное • Статистическое • Динамическое
Тем не менее, все виды тестирования, даже многократно примененные, не гарантируют отсутствие ошибок.
Отметим, как проявляется искажение программ: (основные последствия) • Зацикливание • Остановки исполнения • Значительное снижение темпа выдачи данных • Самоблокировка вычислительного процесса • Значительное искажение или частичная потеря информации • Пропуск отдельных вычислительных модулей или их частей • Обработка ложных или сильно искаженных сообщений •...
Не нашли, что искали? Воспользуйтесь поиском:
|