Надежность АСОИУ (1088455), страница 16
Текст из файла (страница 16)
1.2.Таблица 1.2.СвязьДля модуляДля ПО (или многомодульной программы)УзелТочка ветвления модуляМодуль, имеющий белее одного выходаДугаПоследовательные участки модуляПоследовательность нескольких модулей,имеющих один выходПетляЦиклические участки модуляЦиклическиеучастки,состоящиеизнескольких модулейВ качестве структурных характеристик модуля ПО или программы используются:• отношение действительного числа дуг к максимально возможному, получаемому искусственным соединениемкаждого узла с любым другим узлом дугой;• отношение числа узлов к числу дуг;• отношение числа петель к общему числу дуг.Для сложных модулей и больших многомодульных программ составляется имитационная модель, программакоторой «засоряется» ошибками и тестируется по случайным входам.
Оценка надежности осуществляется по моделиМиллса.При проведении тестирования известна структура программы, имитирующей действия основной, но не известенконкретный путь, который будет выполняться при вводе входных тестовых данных. Кроме того, выбор очередноготестового набора из множества тест-входов случаен, т. е.
в процессе тестирования не обосновывается выбор очередныхвходных тестовых данных. Это характерно для реальных условий тестирования больших программ.После анализа полученных данных проводится расчет показателей надежности с помощью модели Миллса (илилюбой другой из описанных выше) и считается, что реальное ПО, выполняющее аналогичные функции, с подобнымихарактеристиками и в реальных условиях должно вести себя аналогичным или похожим образом.Преимущества оценки показателей надежности по имитационной модели, создаваемой на основе анализаструктуры будущего реального ПО, заключаются в том, что модель позволяет уже на этапе проектирования ПОпринимать рациональные проектные решения, опираясь на характеристики ошибок, оцениваемые с помощью имитационной модели.
Имитационная модель позволяет прогнозировать требуемые ресурсы тестирования, определять мерусложности программ и предсказывать возможное число ошибок.К недостаткам можно отнести необходимость дополнительных затрат на составление имитационной модели иприблизительный характер получаемых показателей.Основываясь на описанной процедуре оценки результатов тестирования, требуемого для доводки ПО, можнопостроить две различные стратегии корректировки ошибок:• фиксировать все ошибки в одном выбранном модуле и устранять все побочные эффекты, вызванныеизменениями этого модуля, отрабатывая, таким образом, последовательно все модули;• фиксировать все ошибки нулевого порядка в каждом модуле, затем все ошибки первого порядка и т.
д.Исследование этих стратегий доказывает, что время корректировки ошибок на каждом шаге тестированияопределяется максимальным числом изменений, вносимых в ПО на этом шаге, а общее время — суммой максимальныхвремен на каждом шаге.47Это подтверждает известный факт, что тестирование обычно является последовательным процессом и обладаетзначительными возможностями для параллельного исправления ошибок, хотя и приводит к повышению затрачиваемыхна него ресурсов.Для количественной оценки надежности можно воспользоваться одной из рассмотренных ранее моделей(например, La Padula).Пример графика изменения надежности программного продукта при устранении выявленных в процессетестирования ошибок приведен на рис. 1.10.IРис.
1.10. Изменения надежности программного продуктаИз графика видно, что с повышением числа тестовых прогонов прогнозируемое значение надежностиприближается к единице.Помимо рассмотренных моделей существует множество других моделей, методов и подходов к оценке иповышению надежности программного и информационного обеспечения. Например, известны модели переходныхвероятностей, модель Вейса и т. п.
И это естественно, поскольку разработка надежного программного обеспечения —проблема актуальная не только для АСОИУ, но и для других программных изделий.1.6. РезервированиеРасчетные соотношения для определения основных характеристик надежности технических средств показывают,что надежность системы зависит от ее структуры (структурно-логической схемы) и надежности элементов.
Поэтому длясложных систем возможны два пути повышения надежности: повышение надежности элементов и изменениеструктурной схемы.Повышение надежности элементов на первый взгляд представляется наиболее простым приемом. Действительно,теоретически всегда можно указать такие характеристики надежности элементов, чтобы вероятность безотказнойработы системы удовлетворяла заданным требованиям. Однако практическая реализация этой идеи сталкивается сограничениями технологического характера и не всегда может быть решена положительно.Изменение структуры аппаратных средств системы с целью повышения надежности подразумевает перестройкуструктурной или функциональной схемы KTC (структуры связей между составными элементами) или введение вкомплекс технических средств дополнительных, избыточных элементов, дублирующих работу основных элементов приих отказе.
Применение дополнительных средств и возможностей с целью сохранения работоспособного состояниясистемы при отказе одного или нескольких ее элементов называется резервированием.Резервными средствами могут быть:• резервные элементы, включаемые в структуру системы;48• резервные возможности, связанные с выполнением дополнительных функций;• резерв времени, выделяемый на выполнение заданной функции;• резерв информации для ее восстановления в случае искажения.
Исходя из указанного набора средств,резервирование делят на структурное, функциональное, временное и информационное.Для анализа структурной надежности KTC особый интерес представляет структурное резервирование, котороереализуется путем введения в структуру системы дополнительных элементов, берущих на себя выполнение функцийосновных элементов в случае их отказа.Классификация различных способов структурного резервирования осуществляется по следующим признакам:1) по схеме включения резерва:общее резервирование — резервируется устройство или блок в целом;раздельное резервирование — резервируются отдельные элементы или их группы;смешанное резервирование — различные виды резервирования сочетаются в одной системе;2) по способу включения резерва:постоянное резервирование, без перестройки структуры системы при возникновении отказа ее элемента;динамическое резервирование, при котором при отказе элемента происходит перестройка структуры схемы.В свою очередь, динамическое резервирование использует:а) резервирование замещением, при котором функции основного элемента передаются резервному только послеотказа основного;б) скользящее резервирование, при котором несколько основных элементов резервируются одним или несколькимирезервными, каждый из которых может заменить любой основной (т.
е. группы основных и резервных элементовидентичны);3) по состоянию резерва:нагруженное резервирование — резервные элементы (или один из них) находятся в режиме основного элемента;облегченное резервирование — резервные элементы (или по крайней мере один из них) находятся в менеенагруженном режиме по сравнению с основными;ненагруженное резервирование — резервные элементы до начала выполнения ими функций находятся вненагруженном режиме.Основной характеристикой структурного резервирования является кратность резервирования, котораяопределяется отношением числа резервных элементов к числу резервируемых основных элементов.
Резервированиеодного основного элемента одним резервным (т. е. с кратностью 1:1) называется дублированием. Количественноповышение надежности системы в результате резервирования или применения высоконадежных элементов можнооценить по коэффициенту выигрыша надежности, определяемому как отношение показателей надежности до и послепреобразования системы. В общем случае при выборе элемента (или группы элементов) для повышения надежности илирезервирования необходимо исходить из условия обеспечения максимального эффекта.В системах с резервированием работоспособность обеспечивается до тех пор, пока для замены отказавшихосновных элементов имеются в наличии резервные.Система с резервированием — это система с избыточностью элементов, т.е.
с резервными составляющими,избыточными по отношению к минимально необходимой (основной) структуре и выполняющими те же функции, что иосновные элементы.49Структурное резервирование может быть общим, раздельным исмешанным. При общем резервировании резервируются все основныеэлементы или система в целом путем создания параллельногоканала обработки информации (рис.
1.11). В предельном случаемогут быть зарезервированы ЭВМ, процессор, ОЗУ, ВЗУ и т. д.Рассматриваемый способ резервирования считается недостаточнопрактичным с точки зрения используемых ресурсов, так как егореализациятребуетзначительнойизбыточностиаппаратныхсредств, а, следовательно, и повышения стоимости проектируемойсистемы.Рис. 1.11.
Общее резервированиеПри раздельном резервировании резервируются отдельные элементы или группы элементов (рис. 1.12).Резервированная (параллельная) система с точки зрения надежности работает до тех пор, пока работоспособен хотя быодин элемент в параллельной цепочке. Такой подход к решению проблемы более экономичный, поскольку можнорезервировать устройства, блоки и ТЭЗы выборочно, исходя из их значимости в процессе функционирования системы.Рис.
1.12. Раздельное (поэлементное) резервированиеПриведенные схемы иллюстрируют так называемый горячий резерв. Его также называют нагруженным (или пассивным)включением резерва. При этих способах резервирования резервные элементы функционируют на полную мощностьнаравне с основными, т. е. постоянно включены в работу схемы.