Разработка программы вычисления надежности работы ИВС
Аппаратурные отказы целесообразно подразделять на внезапные и постепенные, т. е. отказы, различные по своей физической природе, законам распределения времени до отказа, методам борьбы за снижение их вероятности. Программные отказы нет смысла делить на внезапные и постепенные. Они возникают внезапно, как только программа переходит на такой участок, который содержит «ошибку». В то же время они… Читать ещё >
Разработка программы вычисления надежности работы ИВС (реферат, курсовая, диплом, контрольная)
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ КЫРГЫЗСКОЙ РЕСПУБЛИКИ БАТКЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ КЫЗЫЛ-КИЙСКИЙ ИНСТИТУТ ТЕХНОЛОГИИ, ЭКОНОМИКИ И ПРАВА КАФЕДРА «АТиВТ»
ДИПЛОМНЫЙ ПРОЕКТ на тему: «Разработка программы вычисления надежности работы ИВС»
Зав. кафедрой, Ст. преп.: С. Зулпуев Руководитель дипломной работы: Руслан Зулпуев Рецензент: проф. А. Бердиев Дипломник:
студентка группы ИВТ-08:
Кызыл-Кыя — 2013
СОДЕРЖАНИЕ ВВЕДЕНИЕ
ГЛАВА 1. НАДЁЖНОСТЬ ФУНКЦИОНИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ СИСТЕМ
1.1 Основные направления развития теории надёжности
1.2 Факторы, влияющие на надёжность изделия
1.3 Пути повышения надёжности
1.4 Основные понятия теории надёжности
1.5 Виды надёжности
1.6 Основные понятия и теоремы теории вероятностей
1.7 Количественные характеристики надёжности
1.8 Плотность вероятности f (t) времени безотказной работы
1.9 Интенсивность отказов (t)
1.10 Числовые характеристики надёжности
1.11 Характеристики ремонтопригодности
1.12 Экспериментальная оценка надёжности изделий ГЛАВА 2. НАДЕЖНОСТЬ ИНФОРМАЦИОННЫХ СИСТЕМ
2.1 Основные понятия и определения надежности в ИВС
2.2 Основные показатели надёжности ИВС
2.3 Методы повышения надежности ИВС
2.4 Резервирование как способ повышения надежности
2.5 Нагруженное резервирование
2.6 Ненагруженное резервирование
2.7 Надежность резервированной системы с автоматом контроля и коммутации ГЛАВА 3. НАДЁЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
3.1 Сравнительные характеристики программных и аппаратурных отказов
3.2 Проверка и испытания программ
3.3 Основные проблемы исследования надёжности ПО
3.4 Критерии оценки надёжности программных изделий
3.5 Критерии надёжности сложных комплексов программ
3.6 Математические модели надёжности комплексов программ
3.7 Проверка математических моделей ГЛАВА 4. РАСЧЕТ НАДЕЖНОСТИ ФУНКЦИОНИРОВАНИЯ СИСТЕМ
4.1 Постановка задачи
4.2 Математические и алгоритмические решения задачи
4.3 Функциональные модели и блок-схемы решения задачи
4.4 Программная реализация решения задачи
4.5 Пример выполнения программы ЗАКЛЮЧЕНИЕ
ПРИЛОЖЕНИЕ. ПРОГРАММЫ надёжность вероятность автомат отказ ВВЕДЕНИЕ Наука о надёжности — молодая наука. Её формирование относится к середине текущего столетия. Но это не означает, что люди не интересовались и не занимались вопросами надёжности создаваемой ими техники до тех пор, пока не возникла наука о надёжности. С первых шагов развития техники стояла задача сделать техническое устройство таким, чтобы оно работало надёжно. Середина текущего столетия ознаменовалась новым качественным скачком в развитии техники — широким распространением больших и малых автоматизированных систем управления (АСУ) различного назначения. Создание и использование такой техники без специальных мер по обеспечению её надёжности не имеет смысла. Опасность заключается не только в том, что новая сложная техника не будет работать (будут возникать простои), но главным образом в том, что отказ в её работе, в том числе и неправильная работа, может привести к катастрофическим последствиям.
Очевидно, что новая автоматизированная техника, выполняющая ответственные функции, имеет право на существование только тогда, когда она надёжна.
С развитием и усложнением техники усложнялась и развивалась проблема её надёжности. Для решения её потребовалась разработка научных основ нового научного направления — наука о надёжности. Предмет её исследований — изучение причин, вызывающих отказы объектов, определение закономерностей, которым отказы подчиняются, разработка способов количественного измерения надёжности, методов расчёта и испытаний, разработка путей и средств повышения надёжности.
Наука о надёжности развивается в взаимодействии с другими науками.
Математическая логика позволяет на языке математики представить сложные логические зависимости между состояниями системы и её комплектующих частей.
Теория вероятностей, математическая статистика и теория вероятностных процессов дают возможность учитывать случайный характер возникающих в системе событий и процессов, формировать математические основы теории надёжности.
Теория графов, исследования операций, теория информации, техническая диагностика, теория моделирования, основы проектирования систем и технологических процессов — такие научные дисциплины, без которых невозможно было бы развитие науки о надёжности. Они позволяют обоснованно решать задачи надёжности.
Проблема надежности является очень важной для современных технических систем. Можно привести примеры многих систем, для которых решение проблемы надежности в самом прямом смысле означает, быть или не быть данной системе. К ним можно отнести и различные информационные системы, включающие в свой состав большое число компьютеров, имеющих сетевую структуру, территориально распределенные информационные системы, информационные системы измерения параметров различных объектов, системы мониторинга и т. п.
Информационные системы могут иметь простую и сложную структуру. Их усложнение идет сегодня в различных направлениях. С одной стороны, в состав систем входит все большее число комплектующих элементов. С другой стороны, усложняется их структура, определяющая соединение отдельных элементов и их взаимодействие в процессе функционирования и поддержания работоспособности. При этом усложнение систем является прямым следствием постоянно возрастающей ответственности выполняемых ими функций, сложности и многообразия этих функций.
При прочих равных условиях система, состоящая из большого числа комплектующих элементов и имеющая более сложную структуру и сложный алгоритм функционирования, является менее надежной по сравнению с более простой системой. Все это требует разработки специальных методов обеспечения надежности таких систем, включая разработку математических методов расчета надежности и экспериментальной оценки.
Большинство систем спроектировано таким образом, что при отказе любого из элементов система отказывает. При анализе надежности такой системы предполагаем, что отказ любого из элементов носит случайный и независимый характер и не вызывает изменения характеристик (не нарушает работоспособности) остальных элементов.
С точки зрения теории надежности в системе, где отказ любого из элементов приводит к отказу системы, элементы включены по основной схеме или последовательно.
В понятии отказа заложен физический аналог электрической схемы с последовательным включением элементов, когда отказ любого из элементов связан с разрывом цепи. Но очень часто при расчетах надежности приходится физическое параллельное включение элементов рассматривать как последовательное включение расчетных элементов. Например, некоторый потребитель потребляет электроэнергию по двум одинаковым кабелям, причем сечение жил одного кабеля не в состоянии пропустить всю электрическую нагрузку потребителя. При выходе из строя одного кабеля, оставшийся в работе попадает под недопустимую перегрузку, и этот кабель с помощью защиты отключается — система электроснабжения отказывает, то есть отказ одного из кабелей вызывает отказ электроснабжения. Следовательно, при расчете надежности кабели, как расчетные элементы, имеют последовательную основную схему включения.
Надежность технического объекта любой сложности должна обеспечиваться на всех этапах его жизненного цикла: от начальной стадии выполнения проектно-конструкторской разработки до заключительной стадии эксплуатации. Основные условия обеспечения надежности состоят в строгом выполнении правила, называемого триадой надежности: надежность закладывается при проектировании, обеспечивается при изготовлении и поддерживается в эксплуатации. Без строгого выполнения этого правила нельзя решить задачу создания высоконадежных изделий и систем путем компенсации недоработок предыдущего этапа на последующем.
Если в процессе проектирования должным образом не решены все вопросы создания устройства или системы с заданным уровнем надежности и не заложены конструктивные и схемные решения, обеспечивающие безотказное функционирование всех элементов системы, то эти недостатки порой невозможно устранить в процессе производства и их последствия приведут к низкой надежности системы в эксплуатации. В процессе создания системы должны быть в полном объеме реализованы все решения, разработки и указания конструктора (проектировщика).
Важное значение в поддержании, а точнее в реализации необходимого уровня надежности имеет эксплуатация. При эксплуатации должны выполняться установленные инструкциями условия и правила применения устройств, к примеру, электроустановок; своевременно приниматься меры по изучению и устранению причин выявленных дефектов и неисправностей; анализироваться и обобщаться опыт использования устройств.
Целью данной четвертой главы является расчет надежности функционирования систем (Лисп-реализация).
ГЛАВА 1. НАДЁЖНОСТЬ ФУНКЦИОНИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ СИСТЕМ
1.1 Основные направления развития теории надёжности Развитие математических основ теории надёжности. Обобщение статистических материалов об отказах и разработка рекомендаций по повышению надёжности объектов вызвали необходимость определять математические закономерности, которым подчиняются отказы, а также разрабатывать методы количественного измерения надёжности и инженерные расчёты её показателей. В результате сформировалась математическая теория надёжности.
Развитие методов сбора и обработки статистических данных о надёжности. Обработка статистических материалов в области надёжности потребовала развития существующих методов и привела к накоплению большой статистической информации о надёжности. Возникли статистические характеристики надёжности и закономерности отказов. Работы в этом направлении послужили основой формирования статистической теории надёжности.
Развитие физической теории надёжности. Наука о надёжности не могла и не может развиваться без исследования физико — химических процессов. Поэтому большое внимание уделяется изучению физических причин отказов, влиянию старения и прочности материалов на надёжность, разнообразных внешних и внутренних воздействий на работоспособность объектов. Совокупность работ в области исследования физико — химических процессов, обуславливающих надёжность объектов, послужила основой физической теории надёжности.
В конкретных областях техники разрабатывались и продолжают разрабатываться прикладные вопросы надёжности, вопросы обеспечения данной конкретной техники (полупроводниковые приборы, судовые установки, транспортные машины, вычислительная техника, авиация и т. д.). При этом решается также вопрос о наиболее рациональном использовании общей теории надёжности в конкретной области техники и ведётся разработка новых приложений, методов и приёмов, отражающих специфику данного вида техники. Так возникли прикладные теории надёжности, в том числе прикладная теория надёжности АСУ.
Проблема надёжности возникла по следующим причинам:
Резкое усложнение изделий, электронной аппаратуры, большое количество элементов, входящих в состав изделия. Чем сложнее и точнее аппаратура, тем менее она надёжна;
Рост сложности системы превышает рост надёжности элементов в этой системе;
Функция, которую выполняет изделие, бывает очень ответственной и отказ изделия может дорого обойтись.
Пример: отказ аппаратуры управления производственным процессом может привести не только к прекращению изготовления продукции, но может вызвать серьёзную аварию.
К каким последствиям могут привести отказы электронной аппаратуры военного назначения, учитывая огромную разрушительную силу ядерного оружия.
Исключение человека — оператора из процесса управления. Это обусловлено скоротечностью процессов либо вредными условиями труда. Важным фактором безотказности аппаратуры является способность человека принимать решения при управлении сложным объектом.
Сложность условий, в которых осуществляется эксплуатация аппаратуры.
Академик Берг: «Не одно достижение науки и техники, сколь бы эффективно оно не было, не может быть полноценно использовано, если его реализация будет зависеть от „капризов“ малонадёжной аппаратуры».
1.2 Факторы, влияющие на надёжность изделия При анализе надёжности целесообразно рассматривать три этапа в создании аппаратуры или изделия.
Проектирование Изготовление Эксплуатация Факторы, влияющие на надёжность при проектировании Количество и качество элементов в системе оказывает влияние на надёжность. Увеличение количества используемых элементов приводит к резкому ухудшению надёжности аппаратуры. К ухудшению надёжности приводит применение менее надёжных элементов.
Режим работы элементов. Самые надёжные элементы, работающие в тяжёлом, не предусмотренном для их применения режиме, могут стать источником частых отказов. Для каждого элемента устанавливаются технические условия на режим работы элемента. Необходимо правильно выбрать режимы работы элементов.
Применение стандартных и унифицированных элементов резко повышает надёжность системы. Технология производства этих элементов отработана, надёжность их известна.
Конструктор должен предусмотреть хороший доступ к блокам, элементам аппаратуры для осмотра, ремонта; предусмотреть сигнализацию об отказе того или иного элемента.
Факторы, влияющие на надёжность в процессе изготовления Качество материалов. Необходим хороший входной контроль материалов и комплектующих изделий, поступающих от других предприятий.
Качество хранения материалов и комплектующих изделий.
Чистота рабочих мест, оборудования, рабочего помещения.
Соблюдение технологии изготовления и сборки: термообработка, антикоррозийные покрытия и т. п.
Факторы влияющие на надёжность в процессе эксплуатации Квалификация обслуживающего персонала. Этот фактор доказан практикой.
На надёжность влияют внешние условия: климатические условия, вибрации, перегрузки, удары. Частое включение и выключение аппаратуры нежелательно.
На надёжность влияет фактор времени. Продолжительность эксплуатации аппаратуры с момента выпуска с завода до капитального ремонта может составлять несколько лет. К концу этого периода повышается опасность возникновения отказов отдельных элементов.
1.3 Пути повышения надёжности Устранение влияния факторов, приводящих к снижению надёжности аппаратуры.
Резервирование (вместо одного изделия ставят два). Второе изделие резервное. Если откажет 1-е изделие, то подключают 2-е изделие.
Сбор во время эксплуатации аппаратуры полных и достоверных данных об отказах и простоях аппаратуры. Эта информация может использоваться при решении задачи повышения надёжности аппаратуры.
1.4 Основные понятия теории надёжности Теория надёжности это наука, изучающая закономерности особого рода явлений — отказов технических устройств.
Надёжность — это более узкая характеристика изделия, чем качество изделия.
Качество изделия — это совокупность свойств, определяющих пригодность изделия для работы в соответствии со своим назначением. К таким свойствам относятся надёжность, точность, удобство и т. д.
Надёжность — свойство изделия выполнять заданные функции в заданных условиях эксплуатации.
Надёжность — свойство изделия сохранять значения заданных параметров в заданных пределах при определённых условиях эксплуатации.
Надёжность находится в противоречии с точностью, габаритами и весом изделия. Чем меньше габариты изделия, тем менее оно надёжно.
Вторым фундаментальным понятием теории надёжности является понятие отказа.
Отказ — это событие, после наступления которого изделие перестаёт выполнять свои функции.
Отказы делят на внезапные, постепенные, перемежающиеся.
Внезапный отказ — происходит в результате скачкообразного изменения характеристик изделия.
Постепенный отказ — отказ, возникший в результате постепенного изменения характеристик изделия вследствие износа, старения элементов изделия.
Перемежающийся отказ — самоустраняющийся отказ, возникающий в результате временно действующих причин.
Отказы в АСУ целесообразно подразделять на аппаратурные и программные.
Аппаратурным отказом принято считать событие, при котором изделие утрачивает работоспособность и для его восстановления требуется проведение ремонта аппаратуры или замена отказавшего изделия на исправное.
Программным отказом считается событие, при котором объект утрачивает работоспособность по причине несовершенства программы (несовершенство алгоритма решения задачи, отсутствие программной защиты от сбоев, отсутствие программного контроля за состоянием изделия, ошибки в представлении программы на физическом носителе и т. д.). Характерным признаком программного отказа является то, что устраняется он путём исправления программы.
Второстепенные неисправности: дефекты и неполадки.
Дефект — это неисправность, которая приводит к отказу не сразу, а через некоторое время. Пример: нарушение изоляции провода, а впоследствии короткое замыкание.
Неполадки — неисправности, не приводящие к отказу изделия (перегорание лампочки освещения шкалы).
Ремонтопригодность — приспособленность изделия к предупреждению, обнаружению и устранению отказов.
Сохранность изделия — свойство изделия сохранять свою способность к работе в определённых условиях хранения.
Долговечность (технический ресурс) — это суммарная продолжительность работы изделия, ограниченная износом, старением или другим предельным состоянием.
Ресурс — это установленное время, по истечению которого эксплуатация изделия недопустима. Пример: авиационный двигатель: ресурс 500 часов.
Безотказность — свойство изделия непрерывно сохранять работоспособность в течении некоторого времени или некоторой наработки.
Работоспособность — такое состояние изделия, при котором оно способно выполнять заданные функции, удовлетворяя требованиям нормативно — технической документации. Работоспособность — характеристика состояния изделия в некоторый момент времени.
Наработка — это продолжительность или объём работы изделия.
Наработка до отказа — продолжительность или объём работы изделия до возникновения первого отказа.
Средняя наработка до отказа — математическое ожидание наработки изделия до первого отказа.
Однако для АСУ, информационных сетей и вычислительной техники оказалось, что этих понятий для характеристики надёжности недостаточно. В практике создания и использования АСУ находят применение дополнительные понятия, без учёта которых нельзя в полной мере представить комплексное понятие «надёжность». Рассмотрим эти понятия.
Живучесть — свойство объекта сохранять работоспособность (полностью или частично) в условиях неблагоприятных воздействий, не предусмотренных нормальными условиями эксплуатации. Главный смысл требования к живучести объекта состоит не только в том, чтобы он длительное время работал непрерывно без отказа в нормальных условиях эксплуатации и чтобы его можно было быстро отремонтировать, но также и в том, чтобы он в ненормальных условиях эксплуатации сохранял работоспособность, хотя бы и ограниченную.
Достоверность информации, выдаваемой объектом. При работе вычислительной машины или тракта передачи информации могут отсутствовать отказы. Поэтому объект может обладать высокой безотказностью, хорошей долговечностью, сохраняемостью и ремонтопригодностью. Однако в нём могут иметь место сбои, искажающие информацию. В изделии «ломается», «портится» не аппаратура, а информация. Это не менее опасная «поломка».
1.5 Виды надёжности При исследовании надёжности часто ставится задача определить причины, приводящие к формированию той или другой стороны надёжности. Без этого невозможно наметить правильную программу работ по повышению надёжности. Это приводит к делению надёжности на:
Аппаратную надёжность, обусловленную состоянием аппаратуры;
Программную надёжность объекта, обусловленную состоянием программ;
Надёжность объекта, обусловленную качеством обслуживания;
Надёжность функциональная.
Особого внимания заслуживает понятие «программная надёжность», так как её важная роль в обеспечении надёжности АСУ является одной из самых характерных особенностей прикладной теории надёжности АСУ. Понятие «программная надёжность» возникло в результате следующих основных причин. В инженерной практике всё большее значение приобретают программно-управляемые изделия: программно-управляемые станки; вычислительные машины и системы машин; системы передачи данных АСУ и др. Для этих изделий характерно то, что они являются органическим слиянием технических средств (аппаратуры) и программы. Без программного обеспечения вычислительный комплекс, или тракт передачи данных, — это «мёртвый» набор технических устройств, который оживает тогда и только тогда, когда он используется как единое целое с программой. Поэтому говорить о надёжности таких устройств бессмысленно, если не учитывать влияния программного обеспечения.
Учёт влияния программного обеспечения приводит к необходимости выделять в особый вид программную надёжность объектов.
Надёжность функциональная — надёжность выполнения отдельных функций, возлагаемых на систему. АСУ, как правило, система многофункциональная, т. е. она предназначается для выполнения ряда функций, различных по своей значимости. Требования к надёжности выполнения различных функций могут быть различными (например, для функции «расчёт зарплаты» требуется высокая точность, но не требуется жёсткого ограничения времени). Поэтому может оказаться целесообразным задавать различные требования к выполнению различных функций. Примером функциональной надёжности в АСУ может быть надёжность передачи определённой информации в системе передачи данных.
1.6 Основные понятия и теоремы теории вероятностей Надёжность изделия зависит от многочисленного комплекса факторов, определяемых как внутренними свойствами изделия, так и воздействием внешних условий.
Это приводит к тому, что процесс возникновения отказов, а также другие характеристики надёжности носят случайный характер.
Для исследования случайных явлений используются вероятностные методы.
Рассмотрим понятие событие.
Событие — это всякий факт, который в результате опыта может произойти или не произойти.
Примеры событий:
А — появление герба при бросании монеты.
В — попадание в цель при выстреле.
С — отказ изделия.
Д — безотказная работа изделия.
Событие достоверное — если оно обязательно появляется в результате данного опыта.
Невозможное событие — если оно не может появиться в результате данного опыта.
Случайное событие — событие, которое может появиться, а может и не появиться в результате данного опыта.
Вероятность события — это степень возможности появления этого события.
Более вероятными являются те события, которые происходят чаще.
Менее вероятными являются те события, которые происходят реже.
Мало вероятными являются те события, которые почти никогда не происходят.
Достоверному событию можно приписать вероятность, равную единице.
Невозможному событию можно приписать вероятность, равную нулю.
P (A) — вероятность события А.
Рассмотрим последовательность n одинаковых опытов. Предположим, что в результате каждого опыта регистрируется появление или непоявление некоторого события А.
Пусть: m — число появлений события, А при n опытах;
n — общее число произведённых опытов.
Здесь — частота события А.
При n .
Частота события при n сходится по вероятности к вероятности этого события .
где E — любое наперёд заданное, сколь угодно малое положительное число.
Классификация событий Несколько событий в данном опыте образуют полную группу событий, если в результате опыта должно появиться хотя бы одно из них.
Примеры событий, образующих полную группу:
выпадение герба и выпадение цифры при бросании монеты;
появление 1,2,3,4,5,6 очков при бросании игральной кости;
попадание и промах при выстреле;
безотказная работа изделия и отказ изделия.
Несовместные события: несколько событий называются несовместными в данном опыте, если никакие два из них не могут появиться вместе.
Если в данном опыте могут иметь место два несовместных события, то они называются противоположными.
А — событие (безотказная работа изделия)
— противоположное событие (отказ изделия) Суммой нескольких событий называется событие, состоящее в появлении хотя бы одного из этих событий
;
Произведением нескольких событий называется событие, состоящее в совместном появлении всех этих событий
.
Теорема сложения вероятностей Вероятность суммы n несовместных событий равна сумме вероятностей этих событий
.
Сумма вероятностей n несовместных событий, образующих полную группу событий, равна единице
;
где — несовместные события, образующие полную группу.
Следствие: Сумма вероятностей двух противоположных событий равна единице
.
Теорема умножения вероятностей Зависимое событие — это такое событие, вероятность которого зависит от того, произошли или не произошли остальные события.
Независимое событие — это такое событие, вероятность которого не зависит от того, произошли или не произошли остальные события.
Вероятность произведения n независимых событий равна произведению вероятностей этих событий
.
Условная вероятность : — условная вероятность события, А при условии, что событие В имело место.
Вероятность произведения двух событий равна произведению вероятности 1-го события на условную вероятность 2-го события, при условии, что 1-ое событие имело место:
.
Теорема полной вероятности Пусть требуется определить вероятность некоторого события А, которое может произойти вместе с одним из событий
События образуют полную группу n несовместных событий. Будем называть эти события гипотезами.
Вероятность события, А определяется формулой
— формула полной вероятности.
где — вероятность осуществления гипотезы ;
— условная вероятность события, А при условии, что событие имело место.
1.7 Количественные характеристики надёжности Предварительно рассмотрим понятие «случайная величина».
Случайная величина — величина, которая в результате опыта может принять то или иное значение, причём заранее неизвестно, какое именно.
Примеры случайной величины:
Интервал времени между соседними отказами ЭВМ;
Интервал времени от начала работы изделия до первого отказа или время безотказной работы;
Число деталей, изготовленных рабочим в единицу времени.
Обозначим через T — время безотказной работы изделия (интервал времени от начала работы изделия до первого отказа). T — случайная величина. Величина T также называется наработка на отказ изделия. t — возможные значения случайной величины T.
Введём понятие «вероятность безотказной работы».
— вероятность того, что время безотказной работы изделия будет больше или равно некоторому значению t. Другими словами, вероятностью безотказной работы называется вероятность того, что при заданных условиях эксплуатации в течении интервала времени t не возникнет отказа, т. е.система будет работоспособна.
Вероятность отказа:
— вероятность того, что время безотказной работы изделия меньше некоторого заданного значения t.
Другими словами, вероятностью отказа является вероятность того, что в течении заданного времени произойдёт хотя бы один отказ.
Функция представляет собой функцию распределения случайной величины Т.
События В и С несовместные события (в опыте не могут появиться вместе).
А = В + С; P (A) = P (B) + P (С);
откуда
P© = P (A) — P (B); P (A) =; P (B) =; P© = ;
Следовательно
= -; или = - ;
Введём в рассмотрение событие А. Событие, А означает, что, т. е. в интервале времени от 0 до t отказа не произойдёт.
Введём в рассмотрение событие. Событие означает, что T < t, т. е в интервале времени от 0 до t произойдёт отказ. События A и являются противоположными, т.к. они образуют полную группу событий. События образуют полную группу, если в результате опыта одно из них обязательно должно произойти.
Из теории вероятностей известно, что сумма вероятностей противоположных событий равна единице, т. е.
P (A) + P; P (A) = P (T t); P= P (T
Следовательно
P (T t) + P (T < t) = 1 или P (t) + q (t) = 1
Для вероятности безотказной работы справедливо приближённое соотношение P (t), где =
Здесь n (t) — число изделий, не отказавших к моменту времени t;
N — Число изделий, поставленных на испытания.
Испытания изделий должны проводиться при одинаковых условиях так, чтобы отказы изделий были независимы друг от друга.
Для вероятности отказа справедливо приближённое равенство
; где .
Здесь N — n (t) — число изделий, отказавших к моменту времени t.
1.8 Плотность вероятности f (t) времени безотказной работы T
; - частота отказов.
Здесь — плотность вероятности случайной величины T или частота отказов.
вероятность того, что отказ изделия произойдёт на интервале времени .
Для плотности вероятности времени безотказной работы T справедливо приближённое равенство:
где — оценка частоты отказов.
Здесь N — число изделий, поставленных на испытания, — число отказавших изделий на участке времени (t, t + t).
1.9. Интенсивность отказов (t)
Рассмотрим вероятность безотказной работы изделия на промежутке времени от до при условии, что изделие до момента времени не отказывало.
Обозначим эту вероятность через .
0 T
Событие, А — изделие работало безотказно на интервале времени от 0 до .
Событие В — изделие работало безотказно на интервале времени от до (=+)
AB — произведение событий, А и В. Произведением событий, А и В является событие, заключающееся в совместном появлении этих событий.
P (AB) = P (A) P (B/A).
P (B/A) — условная вероятность события B при условии, что событие, А произошло (имело место).
P (A) = P (t) — вероятность безотказной работы изделия на интервале времени от 0 до t
P (B/A) = P (AB) / P (A); P (B/A) = P.
Но вероятность P (AB) есть вероятность безотказной работы изделия на интервале
; т. е. P (AB) = P.
Поэтому
Р (.
Вероятность отказа изделия на интервале равна
;
Так как =+, то
; ;
;
Введём обозначение
; (1.2); - интенсивность отказов.
При малом t из (1.1) имеем
.
Отсюда. (1.3)
Из (1.3) видно, что интенсивность отказов представляет собой отношение вероятности отказа на интервале (t, t + t) к длине этого интервала (при малом t).
Из (1.1) имеем
.
Из (1.2) имеем
.
Отсюда; или (1.4)
;; или (1.5)
Для практически важного частного случая; формула (1.4) принимает вид
(1.6)
Формула (1.6) называется экспоненциальным законом надёжности. На практике этот закон ввиду его простоты нашёл широкое применение при расчёте надёжности изделий.
График функции (t):
(t)
0 t
1-й участок 2-й участок 3-й участок
1 — й участок — период приработки изделия.
2 — й участок — период нормальной работы.
3 — й участок — период старения или износа изделия.
Определение интенсивности отказов (t) по результатам испытаний Интенсивность отказов (t) может быть определена по результатам испытаний. Пусть на испытания поставлено N изделий. Пусть n (t) — число изделий, не отказавших к моменту времени t. Тогда:
;; ;
;
где n (t) — число отказавших изделий на интервале времени (t, t + t). Тогда:
или
1.10 Числовые характеристики надёжности Рассмотренные количественные характеристики надёжности являются функциями времени. Для определения этих характеристик на основе опытных данных с достаточной точностью требуется большой объём испытаний. Более просто найти числовые характеристики надёжности.
среднее время безотказной работы;
дисперсия времени безотказной работы;
Определим среднее время безотказной работы или математическое ожидание случайной величины T. Имеем Величина также называется средняя наработка на отказ.
Известно, что f (t) =. Тогда: .
Этот интеграл можно вычислить по частям
; u = t;; du = dt; v = P (t) ;
;
т.к. P (t) при t убывает быстрее, чем растёт t.
Для экспоненциального закона надёжности имеем:
; .
Итак, для экспоненциального закона надёжности среднее время безотказной работы есть величина, обратная интенсивности отказов.
Приближённое значение можно определить по формуле, где
Здесь — время безотказной работы — го изделия; N — общее число изделий, поставленных на испытания.
Определим дисперсию времени безотказной работы. Имеем
;
.
Интеграл берём по частям
;;; v = P (t) ;
;
Для экспоненциального закона надёжности имеем:
;; .
Интеграл берём по частям:
u = t;; du = dt; ;
;
; ;
Дисперсия характеризует степень разброса значений T относительно .
На основании результатов испытаний можно определить приближённое значение дисперсии
; где .
1.11 Характеристики ремонтопригодности Рассмотрим систему длительного (многократного) использования. В этом случае система после отказа восстанавливается и затем продолжает функционировать.
Время восстановления системы — суммарное время обнаружения и устранения отказов.
зависит от многих факторов, имеющих случайный характер (вид отказа, тип и число отказавших элементов).
— случайная величина.
Ремонтопригодность системы характеризуется следующими вероятностными характеристиками:
вероятность выполнения ремонта в заданное время ;
вероятность невыполнения ремонта в заданное время ;
плотность вероятности времени восстановления ;
интенсивность восстановления ;
среднее время восстановления ;
дисперсия времени восстановления .
Вероятность выполнения ремонта в заданное время — это вероятность того, что отказ изделия будет устранён в течении заданного t: .
Вероятность невыполнения ремонта в заданное время — это вероятность того, что отказ изделия не будет устранён в течении заданного времени t
.
Плотность вероятности времени восстановления равна .
Событие, А — отказ изделия не устранён на интервале времени от 0 до t.
Событие В — отказ изделия не устранён на интервале времени от до .
АВ — произведение событий, А и В. Произведением событий, А и В является событие, заключающееся в совместном появлении этих событий
P (AB) = P (A) P (B/A).
P (B/A) — условная вероятность события В при условии, что событие, А произошло (имело место).
— вероятность того, что отказ изделия не устранён на интервале времени от 0 до t. P (B/A) = P (AB) / P (A).
Вероятность P (AB) есть вероятность того, что отказ изделия не устранён на интервале
т.е. P (AB) =
— вероятность того, что отказ изделия не устранён на интервале времени при условии, что отказ изделия не был устранён на интервале времени от 0 до t.
Таким образом ;
— вероятность того, что отказ изделия будет устранён на интервале времени при условии, что отказ изделия не был устранён на интервале времени от 0 до t.
.
Пусть; тогда
; ;
;
.
Таким образом:
; (*) или:
Из (*) имеем; или ;
или; ;
вероятность выполнения ремонта в заданное время.
При получаем экспоненциальный закон ремонтопригодности
Определим среднее время восстановления :
;; ;
Это интеграл можно вычислить по частям
u = t;; du = dt; ;
; ;
— дисперсия времени восстановления
В случае экспоненциального закона ремонтопригодности имеем:
; .
1.12 Экспериментальная оценка надёжности изделий Для решения теоретических и практических задач надёжности необходимо знать законы распределения исходных случайных величин. При оценке надёжности изделий может решаться задача определения по данным эксплуатации или специальных испытаний среднего времени безотказной работы, среднего времени восстановления .
Рассмотрим случайную величину Т — время безотказной работы. При эксплуатации или испытаниях изделий в течении определённого времени случайная величина Т может принять n различных значений. Совокупность этих значений случайной величины Т называется статистической выборкой объёма n. Эта выборка может использоваться для статистической оценки закона распределения случайной величины Т.
Приведём пример статистической выборки для 10 однотипных изделий. При большом числе n удобнее перейти от статистической выборки к статис-тическому ряду. Определяем диапазон значений случайной величины Т.
где , — максимальное и минимальное значение случайной величины Т.
Этот диапозон R разбивается на интервалы длины
; где Kколичество интервалов. Целесообразно выбирать число интервалов порядка 10 — 20. Обозначим через количество значений случайной величины Т, попавших в интервал i — й длины. Полагаем; i = 1, 2,…, K.
Определим частоту попадания в i — й интервал .
Определяем статистическую плотность вероятности времени безотказной работы Т
.
Наглядное представление о законе распределения случайной величины Т дают статистические графики. Из них самые распространённые: полигон, гистограмма, статистическая функция распределения.
Полигон строится следующим образом: на оси абцисс откладываются интервалы, i = 1, 2, …k, в серединах интервалов строятся ординаты, равные частотам и концы ординат соединяются.
Построение гистограммы: над каждым интервалом, i = 1, 2, …k строится прямоугольник, площадь которого равна частоте в этом интервале.
Построение статистической функции распределения случайной величины Т. Над каждым интервалом проводится горизонтальная линия на уровне ординаты, равной величине накопленной частоты.
Второй способ построения статистической функции распределения случайной величины Т: ,
где — частота выполнения события .
где — число опытов, при которых
Статистическая плотность вероятности и статистическая функция распределения случайной величины Т представляют статистический закон распределения случайной величины Т.
ГЛАВА 2. НАДЕЖНОСТЬ ИНФОРМАЦИОННЫХ СИСТЕМ
2.1 Основные понятия и определения надежности в ИВС Прежде чем начать изложение теоретических основ надежности, введем основные термины и определения, принятые в современной инженерной практике.
Под надёжностью технической системы понимают свойство системы сохранять работоспособность в заданных условиях функционирования. Говоря о работоспособности, следует сразу же определить критерий отказа системы. Отказ — это событие, после возникновения которого система утрачивает способность выполнять заданное назначение. Эти два понятия в определенном смысле выражаются одно через другое: отказ — это потеря работоспособности. Однако для той или иной информационной системы конкретное определение отказа зависит от многих факторов: назначения системы, выполняемой задачи, требований к выполнению данной конкретной функции и др.
Надежность — это сложное свойство, включающее в свой состав несколько единичных свойств: безотказность, готовность, сохраняемость, ремонтопригодность, а также безопасность и живучесть.
Под безопасностью понимается способность системы функционировать, не переходя в опасное состояние. Для информационных систем это свойство не является существенным по сравнению, например, с системами атомной энергетики.
Под живучестью технической системы понимают ее способность противостоять внешним воздействиям как естественного характера не предусмотренных условиями нормальной эксплуатации, так и преднамеренным.
Отличительным признаком надежности как свойства технической системы является то, что она характеризуется вероятностными процессами, протекающими во времени.
При изучении теории надёжности широко используются такие понятия как система, объект, элемент. Элемент — это такой объект, отдельные части которого не представляют существенного интереса в пределах проводимого анализа. Под термином «система» будем понимать множество (совокупность) действующих объектов, взаимосвязанных между собой функционально и рассматриваемых как единое структурное целое. Понятия «элемент», «объект» и «система» достаточно относительны. Подразделение системы на элементы зависит от требуемой точности проводимого анализа, от уровня наших представлений о системе и т. п. Более того, объект, считавшийся системой в одном исследовании, может рассматриваться как элемент, если изучается система большего масштаба. Например, в информационной сетевой системе элементом может считаться компьютер, терминал, канал связи и др. В тоже время, рассматривая функционирование компьютера, можно выделить процессор, входные и выходные устройства, различные интерфейсы и т. д.
В теории надежности весьма важную роль играет деление элементов и систем на восстанавливаемые и невосстанавливаемые. Содержательный смысл этих понятий очевиден.
Информационные системы бывают простыми и сложными.
Простыми системами будем считать такие, в которых чётко определён признак отказа, т. е. можно указать элемент, отказ которого приводит к отказу системы.
Основные признаки классификации отказов изделий приведены в таблице 1.
Таблица 1
Признак классификации | Вид отказа | |
Характер изменений параметра до момента отказа | внезапный постепенный (параметрический) перемежающийся (сбои) | |
Степень потери полезных свойств | полный частичный | |
Восстанавливаемость полезных свойств | необратимый обратимый | |
Связь с другими отказами | независимый зависимый | |
Наличие внешних признаков | явный неявный | |
Причина возникновения | конструктивный технологический эксплуатационный | |
Период появления | период приработки при работе нормальная эксплуатация период старения при хранении при испытаниях | |
Цена отказа | простой техники (ущерб от ремонта) невыполнение задачи (ущерб от этого) моральный ущерб | |
2.2 Основные показатели надёжности ИВС Одной из основных характеристик надежности объекта является время безотказной работы или наработка до отказа. Обозначим эту случайную величину Т. Будем считать, что в момент времени t=0 объект начинает работу, а в момент t=T происходит отказ. Отказ — это случайное событие во времени. Закон распределения случайной величины T характеризуется интегральной функцией распределения = Вер (Tk < t), где Tk — случайный момент времени, когда произошёл отказ. Тогда, — вероятность отказа на интервале [0, t].
Функция Q (t) есть вероятность отказа до момента t. Плотность распределения вероятности отказа
(1)
Безотказная работа — противоположное событие по отношению к событию отказа, поэтому вероятность безотказной работы в течении времени t:
(2)
Если F (t) — дифференцируемая функция (на практике это почти всегда выполняется), то дифференциальная плотность отказа:
(3)
Tогда вероятность отказа и вероятность безотказной работы объекта в течение времени t определяется через плотность вероятности отказа:
(4)
.
В расчетах чаще всего применяют такую характеристику надежности как интенсивность отказов (t). Интенсивность отказов можно рассматривать как относительную скорость уменьшения значений функции надежности с увеличением интервала (0, t).
(5)
Решение уравнения (5) при начальном условии p (0)=1 дает для функции надежности формулу
(6)
При =const формула (6) существенно упрощается:
P (t)=exp (-t). (7)
Интенсивность отказовэто есть условная плотность вероятности отказов в предположении, что до момента t элемент функционировал безотказно. Таким образом, случайная величина имеет три характеристики — p (t),, .
В качестве показателей надежности применяют также числовые характеристики случайной наработки до отказа. Их обычно легче определить по экспериментальным данным, чем зависимости p (t), (t), f (t). Наиболее часто используют среднюю наработку до отказа (математическое ожидание наработки до отказа или первый начальный момент).
(8)
где F (t) — функция распределения случайной величины T.
Интегрируя (8) по частям, получаем
(9)
Таким образом, средняя наработка до отказа численно равна площади под кривой p (t).
При =const имеем
(10)
Второй центральный момент (среднее квадратичное отклонение)
(11)
Очень часто этих двух моментов бывает достаточно для полной характеристики функций распределения наработки до отказа. Например, в практически часто встречающихся случаях, когда (экспоненциальное распределение), p (t)=exp (-t) и mt= - несёт исчерпывающую информацию о надежности системы.
Наиболее часто встречающиеся распределения и их основные показатели представлены в таблице 2.
Таблица 2
N п/п | Тип распределения | Функция распределения отказов | Плотность распределения отказов | Интенсив; ность отказов | Параметры законов | ||
мат. ожид. | дисперсия | ||||||
Показатель-ные (экспоненциальные) | |||||||
Рэлея | |||||||
Равномерное | |||||||
Вейбулла | |||||||
при — распределение Вейбулла превращается в показательное.
при — распределение Рэлея
2.3 Методы повышения надежности ИВС Эффективность информационной системы в значительной степени зависит от уровня ее надежности, в первую очередь от уровня ее безотказности. Опыт эксплуатации показывает, что уровень надежности систем не всегда отвечает современным требованиям, поэтому весьма актуальна проблема разработки методов, позволяющих обеспечить требуемые уровни характеристик надежности системы. Надежность системы можно повысить, используя различные методы. При этом каждый раз надо выбирать пригодный метод с учетом стоимости, весовых, габаритных и других характеристик системы.
Методы повышения надежности можно классифицировать по области их использования.
Методы | |
Конструктивные | Производственные | Эксплуатационные | |||
— Создание надежных элементов; — Создание благоприятного режима работы; — Методы рационального проектирования систем; — Методы введения избыточности: Нагрузочная, Параметрическая, Функциональная, Резервирование структуры. — Методы, защищающие элементы от разрушающих факторов | — Совершенствование технологии; — Автоматизация производства; — Тренировка элементов и модулей системы. | — Методы предупреждения отказов, основанные на прогнозировании моментов их появления; — Методы предупреждения отказов, основанные на статистических данных о долговечности элементов; — Повышение квалификации обслуживающего персонала; — Научные методы эксплуатации. | |||
2.4 Резервирование как способ повышения надежности Повышение надежности системы путем резервирования является одним из эффективных способов повышения надежности, но всегда связано с увеличением ее габаритов, массы, стоимости.
Рассмотрим кратко классификацию методов резервирования (см. табл. 3
Таблица 3
Признак резервирования | Метод резервирования | |
По виду соединения основных и резервных элементов | Общее | |
Раздельное | ||
Смешанное | ||
С изменяющейся структурой (динамическое) | ||
По нагруженности резервных элементов до их включения | Нагруженное | |
Недогруженное (облегченное) | ||
Ненагруженное | ||
С изменяющейся нагрузкой | ||
По способу переключения основных и резервных элементов | С ручным переключением | |
С полуавтоматическим переключением | ||
С автоматическим переключением | ||
По наличию восстановления элементов | Без восстановления | |
С восстановлением | ||
По используемым параметрам системы | Информационное Структурное Функциональное Временное | |
Рассмотрим методы резервирования по нагруженности резервных элементов.
По нагруженности резервных элементов резервирование подразделяется на следующие виды:
Нагруженное резервирование — когда резервный элемент находится в том же режиме, что и основной элемент.
Недогруженное резервирование — когда резервный элемент находится в менее нагруженном режиме, чем основной элемент.
Ненагруженное резервирование — когда резервный элемент не несет нагрузок (выключен).
Резервирование с изменяющейся нагрузкой — когда резервный элемент в выбранные моменты времени может находиться в одном из заданных состояний (нагруженном, облегченном, ненагруженном).
2.5 Нагруженное резервирование Пусть система состоит из n основных элементов и m резервных элементов. Плотность вероятности безотказной работы f (t). Условия работы элементов не зависимы, а автомат контроля и коммутации элементов (АКК) — абсолютно надежный.
; (12)
Для решения задачи используем метод гипотез. Предположим, что все элементы исправны. Так как работа элементов не зависима, вероятность этой гипотезы:
(13)
Пусть отказал один конкретный (s-й) элемент, тогда вероятность гипотезы:
(14)
Вероятность отказа любого одного из m + n элементов:
(15)
Пусть отказали любые два элемента (сначала s-й, потом k-й). Тогда вероятность этой гипотезы:
(16)
Далее аналогично
(17)
Все рассмотренные выше гипотезы благоприятствуют работоспособному состоянию системы. Поэтому вероятность безотказной работы системы равна сумме вероятностей этих гипотез.
или (18)
(19)
Так как все элементы равнонадежны, то Если закон распределения экспоненциальный, т. е., то,. Тогда
(20)
При n=1
где k=m+1/ (21)
Тогда
(22)
(23)
при
Таким образом, у резервированной системы интенсивность отказа является функцией времени наработки, даже для экспоненциального закона распределения времени наработки для элементов.
При t=0,=0; при
2.6 Ненагруженное резервирование Здесь те же условия, что и в п. 5, но время безотказной работы элементов распределено по экспоненциальному закону с параметром. Интенсивность отказов такой системы, так как резервированные элементы без отказов.
Необходимо найти плотность распределения суммы независимых случайных величин
(24)
Для этого воспользуемся характеристической функцией
где (25)
Тогда
(26)
Плотность вероятности момента выхода из строя m + 1 элемента
(27)
Вероятность безотказной работы системы определится как
(28)
Если резервирования элементов нет, т. е. m =0, то
(29)
2.7 Недогруженное резервирование Система состоит из n основных элементов с интенсивностью отказов л = а и m резервных элементов с л = b. Условия работы элементов независимы. Автомат контроля и коммутации — абсолютно надежен. Система будет исправна, если число k отказов элементов 0? k (t)?m. Тогда
или, (30)
так как при k = m + 1 будет отказ, а группа 0? k (t)?m + 1 — полная группа событий.
Если в момент t система находится в состоянии k, то интенсивность отказов В момент времени t + Д t система будет находиться в состоянии k c вероятностью
(31)
— вероятность того, что система не уйдет из состояния k.
Устремив получим общее выражение для дифференциального уравнения
(32)
При k=0 (33)
k=1 (34)
k=m+1 (35)
Начальные условия
(36)
т.е. в начальный момент времени все элементы исправны.
Уравнение (32) — уравнение А. Н. Колмогорова для однородного марковского процесса (л = const).
Уравнению (32) можно сопоставить граф переходов из одного состояния системы в другое На основании анализа уравнений А. Н. Колмогорова, Б. В. Васильева было сформулировано мнемоническое правило составления таких уравнений по заданному графу. В левой части каждого уравнения стоит производная по времени от вероятности нахождения системы в k-м состоянии в момент времени t. Число членов в правой части равно алгебраической сумме произведений интенсивностей переходов на соответствующие вероятности пребывания системы в тех узлах графа, откуда совершается непосредственный переход системы в другие (соседние) узлы. Причем, слагаемым, которым соответствуют выходящие из k-го узла стрелки графа, приписывается — знак минус, а входящем — знак плюс. Как видим уравнение (32) составлено по этому правилу.
Применяя преобразование Лапласа:
(37)
систему дифференциальных уравнений сводим к алгебраической, решая которую получим
(38)
Зная изображение по Лапласу находим
(39)
Решая (39), получим
(40)
где (41)
Окончательно
(42)
где (43)
Например, m=1, a/b=1
B0(1)=1+n; B1(1)=n
(44)
(45)
(46)
Из анализа выражения (46) следует, что распределение времени безотказной работы резервированной системы отлично от экспоненциального распределения, даже, если все ее элементы имеют такое распределение.
2.8 Надежность резервированной системы с автоматом контроля и коммутации Влияние надежности АКК на работоспособность системы. Требования к надежности автомата.
До сих пор предполагали, что АКК абсолютно надежный.
Сделаем следующие допущения:
1) Обнаружение и замена отказавших элементов в системе происходит мгновенно.
2) Интенсивность отказов обозначим как a и в
3) fa (t)=e-t
4) Условия работы элементов независимы.
5) Отказ АКК не приводит к отказу системы до следующего отказа элемента.
Очевидно, что АКК может отказать до того как будет использован весь резерв, т. е. он тоже определяет надежность системы.
Можно показать, что
(47)
(48)
ГЛАВА 3. НАДЁЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Исследования в области программной надёжности находятся на начальном этапе своего развития.
Целесообразно выделить две стороны программного обеспечения объекта: программную надёжность объекта — свойство объекта выполнять заданные функции, обусловленные качеством программного обеспечения; надёжность программного обеспечения — свойство программного обеспечения выполнять предписанные ему требования.
Программная надёжность изделия проявляется при совместной работе аппаратуры и программы. Она характеризует способность изделия выполнять заданные функции при условии, что программа будет находиться в том или другом состоянии.
Надёжность программного обеспечения характеризует качественное состояние программы. Её иногда называют правильностью программы, корректностью программы, надёжностью программы.
Программная надёжность объекта — это то, что интересует его потребителя. Для её обеспечения необходимо, чтобы программа была «правильной», «корректной», «надёжной», т. е. чтобы она не содержала ошибок. Может оказаться, что некоторые из ошибок совсем не проявятся при работе объекта или, наоборот, при работе объекта обнаружатся дополнительные несовершенства («ошибки») программы. Однако очевидно, что необходимым условием надёжной работы объекта является «корректность» программ, т. е. отсутствие в них ошибок.
Программная надёжность становится особо актуальной, когда программы являются самостоятельным изделием. В этом случае они изготовляются, проверяются и подвергаются приёмосдаточным испытаниям так же, как обычные объекты.
Положения о двух сторонах надёжности программного обеспечения полезно иметь в виду при исследовании надёжности программно-управляемых объектов.
3.1 Сравнительные характеристики программных и аппаратурных отказов Программные отказы изделия и аппаратурные отказы имеют много общего, но во многом существенно различаются. Общее между ними:
а) невыполнение объектом заданных функций;
б) времена до отказов и времена устранения отказов носят случайный характер;
в) методы обработки статистических данных об отказах одинаковы, а потому статистические оценки показателей надёжности аппаратурной и программной, полученные по результатам испытаний и эксплуатации, могут быть одинаковыми по своему названию: средняя наработка объекта на программный отказ, интенсивность программных отказов объекта и т. д. Возможны и объединённые (комплексные) оценки: средняя наработка объекта на программный и аппаратурный отказ и т. п.
Вместе с тем отказы программные существенно отличаются от отказов аппаратурных:
а) отказ аппаратурный зависит либо от времени, либо от объёма выполненной работы, а отказ программный — от той функции, которую выполняет изделие под управлением программы (точнее, от того, с какой вероятностью программа выйдет на такой участок, который содержит ошибку);
б) обнаружение и устранение аппаратурного отказа (заменой отказавшего элемента исправным) не означает, что такой же отказ не повторится при дальнейшей работе изделия, а обнаружение и устранение отказа программного (исправление программы) означает, что такой отказ в дальнейшем не повторится;
в) программный отказ, обнаруживаемый при автономной проверке программы, может переходить в разряд недействующих, если состояние аппаратуры делает её нечувствительной к данному виду программного отказа. Например, если в программе ошибочно не предусмотрена программная защита от аппаратурного сбоя, то это программный отказ, но если при этом в аппаратуре не возникает сбоя, то отказ программный становится недействующим;
г) прогнозировать возникновение аппаратурных отказов сравнительно легко, а прогнозировать возникновение отдельных программных отказов трудно, а часто и невозможно. Для отдельных программных отказов трудно предвидеть время, когда они становятся действующими, а когда-недействующими;
д) аппаратурные отказы целесообразно подразделять на внезапные и постепенные, т. е. отказы, различные по своей физической природе, законам распределения времени до отказа, методам борьбы за снижение их вероятности. Программные отказы нет смысла делить на внезапные и постепенные. Они возникают внезапно, как только программа переходит на такой участок, который содержит «ошибку». В то же время они по природе своей не совпадают с внезапными аппаратурными отказами. Вероятность их возникновения не связана с продолжительностью работы изделия, а связана с условной вероятностью того, что программа содержит ошибку в данной части программы, и вероятностью того, что изделие будет работать под управлением этой части программы.
3.2 Проверка и испытания программ Испытания программ на надёжность и испытания изделий на надёжность их программного обеспечения — обязательные этапы при проверке надёжности систем.
Испытания с целью проверки надёжности программ осуществляются с помощью специальных программ (тестирование) и специальных (имитационных) стендов. Проверяется при этом степень отработанности программы и её соответствие заданным требованиям.
Испытания с целью проверки надёжности изделий, работающих под управлением программ, осуществляются при совместной работе программы и изделия. Проверяются при этом и степень отработанности программы в соответствии с заданными требованиями, и корректность этих требований, и согласованность взаимодействий программы и аппаратуры.
Степень отработанности программы может проверяться различными методами. Чем выше требование к достоверности проверки, тем более сложен метод проверки.
Рассмотрим один из наиболее простых методов. В процессе проверки «корректности» программы (с помощью наблюдений за работой либо изделия, либо имитирующего устройства, либо на специальном стенде с помощью тестов) фиксируются времена обнаружения ошибок в программе. Результаты проверки обрабатываются при следующих предположениях: 1) ошибки программы независимы. Каждый раз после обнаружения они устраняются и в дальнейшем не проявляются. 2) интенсивность ошибок уменьшается по мере их обнаружения и устранения (ступенчато, как показано на рисунке 3.1).
Выявление и устранение ошибок производится до тех пор, пока значение будет меньше заданного значения. Заданное значение назначается с учётом требований к надёжности изделия. Ориетировочно можно исходить из того, что интенсивность программных ошибок, приводящих к отказу, на этапе отладочных испытаний должна быть не больше интенсивности аппаратурных отказов.
Положение о том, что при создании программного обеспечения больших систем возможно возникновение ошибок и что выявление программных ошибок — чрезвычайно трудная задача, не только не должно обезоруживать разработчиков систем, а наоборот, должно ориентировать их на максимальное сосредоточение сил для ликвидации программных отказов.
Влияние программных ошибок на надёжность изделия должно непрерывно уменьшаться с каждым новым этапом освоения программ (разработка — отладка — опытная эксплуатация — нормальная эксплуатация) так, чтобы на этапе нормальной эксплуатации объекта программная надёжность его была на уровне заданных требований.
3.3 Основные проблемы исследования надёжности программного обеспечения В сложной программно — управляемой технической системе любого типа можно выделить две основные, относительно независимые части.
Совокупность автономно, параллельно работающих технических схем и устройств — аппаратная часть.
Совокупность программ, ориентированных на решение данного комплекса задач, представляющих математическое обеспечение технической системы и образующих её программную часть (операционная система и рабочие программы пользователей).
При общем анализе характеристик технической системы (её надёжности) следует учитывать, что если аппаратная часть жестко задана, неизменна и её надёжность может быть обеспечена на требуемом уровне, то программная часть в каждом отдельном случае может иметь ряд модификаций, является достаточно гибкой, изменяемой частью технической системы и в обеспечении совокупной надёжности системы определяет наибольшее количество ошибок. Авторы считают, что в настоящее время около половины отказов сложных вычислительных систем обусловлено ошибками программ, а с ростом надёжности элементной базы (ИС, БИС) число откзов, связанных с математическим обеспечением, возрастает до 90% от общего числа отказов.
К основным проблемам исследования надёжности программного обепеспечения (ПО) относится:
Разработка методов оценки и прогнозирования надёжности ПО на основе совокупности количественных показателей и характеристик, идентичных показателям аппаратурной надёжности.
Определение факторов, влияющих на достижение заданного уровня надёжности ПО.
Разработка методов, обеспечивающих достижение заданного уровня надёжности ПО.
Совершенствование методов повышения надёжности ПО в процессе проектирования и эксплуатации.
Эффективный способ повышения надёжности ПО — использование методов структурного проектирования программ, так как в зависимости от структуры ПО последствия отдельных ошибок могут быть легко обнаружены, локализованы и исправлены на некотором небольшом участке программы либо распространиться на другие уровни и модули ПО.
3.4 Критерии оценки надёжности программных изделий Всё множество различных показателей надёжности программных систем можно разбить на две большие группы:
Количественные показатели надёжности ПО.
Качественные показатели надёжности ПО.
Не рассматривая качественные характеристики надёжности, которые достаточно подробно исследованы в [20, 21], остановимся более подробно на возможности использования количественных показателей для оценки и прогнозирования надёжности ПО.
Наиболее удобно в качестве таких показателей использовать статистические (вероятностные) критерии хорошо разработанной теории надёжности радиоэлектронной аппаратуры. Следует учитывать, что оценка надёжности ПО на основе статистической теории надёжности аппаратуры возможна в пределах некоторых ограничений, учитывающих специфику ПО как определённого вида продукта человеческого труда.
Можно выделить следующие характеристики и количественные показатели надёжности ПО:
Безотказность. Говоря о безотказности ПО, характеризующей способность ПО выполнять заданные функции в заданных условиях эксплуатации технической системы, будем считать, что отказ программы — это результат проявления скрытой ошибки. Следует иметь в виду, что входные данные и данные создаваемые программой, не являются элементами ПО, поскольку их надёжность связана с работой внешних устройств и аппаратной части системы. Только константы, вводимые программистом, считаются частью ПО.
Для невосстанавливаемых в ходе эксплуатации программ обобщённой характеристикой надёжности (безотказности) является вероятность безотказной работы P (t), характеризующая вероятность того, что за время t отказа не произойдёт:
P (t) = P (T t) = 1 — q (t); (3.2)
где T — время работы ПО до отказа или наработка ПО до отказа (T — случайная величина); q (t) — вероятность отказа ПО.
Из (3.2) можно определить функцию интенсивности отказов:
; (3.3)
Среднее время наработки до наступления отказа (среднее время безотказной работы) определяется как математическое ожидание временного интервала между двумя последовательными нарушениями работоспособности ПО:
(3.4)
Для экспоненциального закона распределения отказов:
; (3.5)
Поскольку программы имеют явно выраженные производственные циклы работы, то наработка программы может быть выражена либо через календарное время, либо через машинное время, либо через количество отработанных операторов, решённых задач и т. п.
Один из способов оценки — наблюдение за поведением программы в определённый временной период. Тогда величину среднего времени между отказами (сбоями) ПО можно определить так:
(3.6)
где H — общее количество часов успешного прогона программы, определяемое по формуле:
; (3.7)
где — время непрерывного прогона в часах безошибочной работы ПО;
n — общее количество прогонов ПО; r — количество прогонов ПО без ошибок; l = nr — количество прогонов с ошибками; - время прогона в часах до проявления ошибки ПО.
Полагая количество ошибок постоянным, можно вычислить интенсивность отказов ПО, приведённую к одному часу работы, и среднее время между соседними отказами ПО.
(3.8)
(3.9)
Классифицируя отказы ПО по видам отказов — аппаратные, программные, оператора и т. д., можно определить частные (взвешенные) интенсивности отказов по соответствующим видам ошибок — ап, пр, оп и т. д., а общая надёжность определяется как сумма таких интенсивностей. Такой подход может значительно облегчить сбор статистических данных по соответствующим видам отказов на основе независимого анализа программных изделий различных типов.
В случае, если в ходе эксплуатации возможна корректировка ПО или восстановление программы после отказа, вызванного действием помех (сбоев) от внепрограммных источников, а время восстановления достаточно мало по сравнению с временем между отказами или сбоями, обобщающей характеристикой безотказности ПО является интенсивность потока отказов во времени .
; (3.10)
; (3.11)
где H (t) — среднее число отказов за время t; - среднее время наработки между двумя отказами.
Для программ, время корректировки которых сравнимо с временем между отказами, обобщающей характеристикой безотказности является функция коэффициента готовности в зависимости от времени. Показатель готовности характеризует вероятность застать систему в заданный момент времени в работоспособном состоянии.
Устойчивость. Устойчивость ПО определяет способность системы выполнять заданные функции в условиях действия помех (ошибок, сбоев, отказов), возникающих во внепрограммных источниках (техническое обеспечение, исходные данные). При оценке устойчивости ПО должны быть заданы параметры окружающей среды, по отношению к которой оценивается устойчивость программ.
Показатели устойчивости — это показатели безотказности, но с использованием условных вероятностей. Условием, при котором вычисляют-ся вероятности, является отказ (сбой) в программе или аппаратуре.
Для невосстанавливаемых (некорректируемых) программ обобщённым показателем устойчивости служит условная вероятность безотказной работы:
(3.12)
где P (A) — вероятность ошибки (сбоя) программы или отказа аппаратуры.
Безотказность и устойчивость — динамические характеристики, то есть они характеризуют надёжность ПО в процессе работы.
Корректируемость. Этот показатель надёжности ПО аналогичен показателю ремонтопригодности радиоэлектронной аппаратуры, характеризует приспособленность ПО к поиску и устранению ошибок и внесению в него изменений в ходе эксплуатации. Он используется для характеристики восстанавливаемых в ходе эксплуатации программ. Показатели корректируемости: время корректировки, вероятность корректировки программы за заданное время, коэффициент готовности, параметр потока корректировок .
Защищённость и долговечность. Дополнительными характеристиками надёжности ПО являются: показатель защищённости от посторонних вмешательств в работу ПО и показатель долговечности, характеризующий свойства программ избегать морального старения при длительном использовании. Защищённость характеризуется вероятностью внесения искажений при постороннем вмешательстве, а долговечность — временем отказа ПО вследствие морального старения.
В зависимости от условий применения ПО можно выделить три режима (типа) его работы:
Программа не корректируется, и любой отказ является полным, т. е. после отказа ПО не восстанавливается. Основные показатели надёжности для этого режима работы программ — безотказность, устойчивость и защищённость.
Программа не корректируется, однако после отказа ПО система продолжает функционировать нормально. Основные показатели надёжности — безотказность, устойчивость, защищённость и долговечность.
После каждого отказа ПО корректируется, отлаживается и только после этого снова сдаётся в эксплуатацию. Основные показатели надёжности — безотказность, устойчивость, корректируемость, защищённость, а также потери времени.
3.5 Критерии надёжности сложных комплексов программ Для оценки надёжности программ, как и при исследовании характеристик аппаратуры, как правило, приходится ограничиваться интегральными показателями наработки на отказ и средним временем восстановления. Определение остальных показателей сопряжено с большими трудностями, которые обусловлены тем, что для определения показателей надёжности комплексов программ необходимы длительные эксперименты или сложные расчёты при определённых исходных данных.
Оценка достоверности результатов и надёжности функционирования комплекса программ представляет собой сложную задачу из-за «проклятия размерности». Естественным становится статистический подход к анализу надёжности функционирования и статистическая оценка достоверности результатов. Качество отладки определяется интенсивностью (частостью) отказов и значениями ошибок в выходных результатах, полученными за счёт невыявленных ошибок в программах и искажений исходных данных. Интенсивность (частость) отказов в комплексе программ иначе называется как частость проявления ошибок в комплексе программ.
Точное определение полного количества ошибок в программе прямыми методами измерения невозможно. Имеются только косвенные пути статистической оценки их полного количества. Такие оценки базируются на построении математических моделей в предположении жёсткой корреляции между общим количеством и проявлениями ошибок в комплексе программ после его отладки в течении времени, т. е. между следующими параметрами:
суммарным количеством ошибок в комплексе программ,
количеством ошибок, выявляемых в единицу времени dn/d в прцессе тестирования и отладки при постоянных усилиях на их проведение;
интенсивностью отказов или числом искажений результатов на выходе комплекса программ вследствие невыявленных ошибок при нормальном функционировании системы в единицу времени.
3.6 Математические модели надёжности комплексов программ Математические модели позволяют оценивать характеристики ошибок в программах и прогнозировать их надёжность при проектировании и эксплуатации. Модели имеют вероятностный характер, и достоверность прогнозов зависит от точности исходных данных и глубины прогнозирования по времени. Эти математические модели предназначены для оценки:
— показателей надёжности комплексов программ в процессе отладки;
— количества ошибок, оставшихся не выявленными;
— времени, необходимого для обнаружения следующей ошибки в функционирующей программе;
— времени, необходимого для выявления всех ошибок с заданной вероятностью.
Использование моделей позволяет эффективно и целеустремлённо проводить отладку и испытания комплексов программ, помогает принять рациональное решение о времени прекращения отладочных работ.
В настоящее время предложен ряд математических моделей, основными из которых являются:
— экспоненциальная модель изменения ошибок в зависимости от времени отладки;
— модель, учитывающая дискретно — понижающуюся частоту появления ошибок как линейную функцию времени тестирования и испытаний;
— модель, базирующаяся на распределении Вейбула;
— модель, основанная на дискретном гипергеометрическом распределении.
При обосновании математических моделей выдвигаются некоторые гипотезы о характере проявления ошибок в комплексе программ. Наиболее обоснованными представляются предположения, на которых базируется первая экспоненциальная модель изменения ошибок в процессе отладки и которые заключаются в следующем:
Любые ошибки в программе являются независимыми и проявляются в случайные моменты времени.
Время работы между ошибками определяется средним временем выполнения команды на данной ЭВМ и средним числом команд, исполняемым между ошибками. Это означает, что интенсивность проявления ошибок при реальном функционировании программы зависит от среднего быстродействия ЭВМ.
Выбор отладочных тестов должен быть представительным и случайным, с тем чтобы исключить концентрацию необнаруженных ошибок для некоторых реальных условий функционирования программы.
Ошибка, являющаяся причиной искажения результатов, фиксируется и исправляется после завершения тестирования либо вообще не обнаруживается.
Из этих свойств следует, что при нормальных условиях эксплуатации количество ошибок, проявляющихся в некотором интервале времени, распределено по закону Пуассона. В результате длительность непрерывной работы между искажениями распределена экспоненциально.
Предположим, что в начале отладки комплекса программ при = 0 в нём содержалось ошибок. После отладки в течении времени осталось ошибок и устранено n ошибок (+ n =). При этом время соответствует длительности исполнения программ на вычислительной системе (ВС) для обнаружения ошибок и не учитывает простои машины, необходимые для анализа результатов и проведения корректировок.
Интенсивность обнаружения ошибок в программе dn/d и абсолютное количество устранённых ошибок связываются уравнением
(3.13)
где k — коэффициент.
Если предположить, что в начале отладки при = 0 отсутствуют обнаруженные ошибки, то решение уранения (3.13) имеет вид
(3.14)
Количество оставшихся ошибок в комплексе программ пропорционально интенсивности обнаружения dn/d с точностью до коэффициента k.
Время безотказной работы программ до отказа T или наработка на отказ, который рассматривается как обнаруживаемое искажение программ, данных или вычислительного процесса, нарушающее работоспособность, равно величине, обратной интенсивности обнаружения отказов (ошибок):
(3.15)
Если учесть, что до начала тестирования в комплексе программ содержалось ошибок и этому соответствовала наработка на отказ, то функцию наработки на отказ от длительности проверок можно представить в следующем виде:
(3.16)
Если известны моменты обнаружения ошибок и каждый раз в эти моменты обнаруживается и достоверно устраняется одна ошибка, то, используя метод максимального правдоподобия, можно получить уравнение для определения значения начального числа ошибок :
(3.17)
а также выражение для расчёта коэффициента пропорциональности
; (3.18)
В результате можно рассчитать число оставшихся в программе ошибок и среднюю наработку на отказ Tср = 1/, т. е. получить оценку времени до обнаружения следующей ошибки.
В процессе отладки и испытаний программ для повышения наработки на отказ от до необходимо обнаружить и устранить n ошибок. Величина n определяется соотношением:
; (3.19)
Выражение для определения затрат времени на проведение отладки, которые позволяют устранить n ошибок и соответственно повысить наработку на отказ от значения до, имеет вид:
(3.20)
Вторая модель построена на основе гипотезы о том, что частота проявления ошибок (интенсивность отказов) линейно зависит от времени испытания между моментами обнаружения последовательных i — й и (i — 1) — й ошибок.
(3.21)
где — начальное количество ошибок; K — коэффициент пропорциональности, обеспечивающий равенство единице площади под кривой вероятности обнаружения ошибок.
Для оценки наработки на отказ получается выражение, соответствующее распределению Релея:
(3.22) где .
Отсюда плотность распределения времени наработки на отказ
. (3.23)
Использовав функцию максимального правдоподобия, получим оценку для общего количества ошибок и коэффициента K.
(3.24)
(3.25)
Особенностью третьей модели является учёт ступенчатого характера изменения надёжности при устранении очередной ошибки. В качестве основной функции рассматривается распределение времени наработки на отказ P (t). Если ошибки не устраняются, то интенсивность отказов является постоянной, что приводит к экспоненциальной модели для распределения:
Отсюда плотность распределения наработки на отказ T определяется выражением:
где t > 0, > 0 и 1/ - среднее время наработки на отказ, т. е. Тср=1/. Здесь Тср — среднее время наработки на отказ.
Для аппроксимации изменения интенсивности от времени при обнаружении и устранении ошибок используется функция следующего вида:
;
Если 0 < < 1, то интенсивность отказов снижается по мере отладки или в процессе эксплуатации. При таком виде функции (t) плотность функции распределения наработки на отказ описывается двухпараметрическим распределением Вейбулла:
.
Распределение Вейбулла достаточно хорошо отражает реальные зависимости при расчёте функции наработки на отказ.
3.7 Проверка математических моделей Обоснование приведённых математических моделей приведено в ряде работ, в которых наибольшее внимание уделялось проверке первой и второй моделей. Контролировались и обрабатывались экспериментальные данные интенсивности обнаружения ошибок dn/d на фиксированном интервале времени, количества обнаруженных ошибок n или наработки на отказ T в зависимости от времени функционирования программ на вычислительной системе. Характеристики, полученные расчётами с использованием математических моделей, сопоставлялись с полученными экспериментальными значениями и применялись для прогнозирования показателей с последующим анализом отклонений от экспериментальных данных.
Пример анализа первой модели приведён на рис. 3.3. Определялся и прогнозировался интервал времени между последовательными отказами при непрерывном
Для оценки достоверности моделей анализировалось количество ошибок n, выявленное при функционировании комплексов программ в течении времени [см. (3.14)]. Значения и K определялись методом максимального правдоподобия для каждого из 16 исследованных вариантов создания больших программ. Пример изменения количества выявленных ошибок в зависимости от времени функционирования одного комплекса программ представлен на рис. 3.4. Из графика следует, что первая модель [см. (3.14)] хорошо аппроксимирует количество ошибок во всём исследованном интервале времени. При значениях n > 288 отклонение реального количества обнаруженных ошибок от расчётного составляет 21%.
ГЛАВА 4. РАСЧЕТ НАДЕЖНОСТИ ФУНКЦИОНИРОВАНИЯ СИСТЕМ
4.1 Постановка задачи Под надежностью понимают свойство объекта сохранять во времени в установленных пределах значения всех параметров, характеризующих способность выполнять требуемые функции в заданных режимах и условиях применения, технического обслуживания, хранения и транспортирования;
Надежность является комплексным свойством, которое в зависимости от назначения объекта может включать безотказность, ремонтопригодность и долговечность или сочетание этих свойств. Термин Надежность используется только для описаний общего характера в неколичественном выражении.
Показатель надежности — количественная характеристика одного или нескольких свойств, составляющих надежность объекта.
Требуется реализовать расчет надежности функционирования систем.
Пример расчета надежности системы, собранной по основной схеме.
На рисунке 1a, представлена схема включения конденсаторной батареи (l2 = l3 =… l11 = 0,01 1/год, = 0,024 1/год). Конденсаторы выбраны так, что при выходе из строя любого из них батарея не выполняет своих функций, то есть с точки зрения надежности она отказывает.
Отказывает она также при перегорании предохранителя 1. Следовательно, мы сформулировали понятие отказа — при отказе любого из элементов система, состоящая из 11 элементов, отказывает. На рисунке 1б изображена расчетная схема надежности, где все элементы включены последовательно.
Интенсивность отказов конденсаторной батареи составит:
.
Рисунок 1. Схема конденсаторной батареи На рисунке 1 В батарея представлена эквивалентным элементом с интенсивностью отказов lo. По отношению к более сложной системе (схеме), в которой составной частью является конденсаторная батарея, эта установка будет элементом с параметром lo.
Вероятность безотказной работы батареи за год равна:
.
Средняя наработка до отказа равна: года.
Результат расчета доказывает, что надежность неремонтируемой батареи конденсаторов, за 1 год непрерывной работы, мала. Для обеспечения более высокого уровня её надежности необходимо предусмотреть более качественное техническое обслуживание.
Рассмотрим случай, когда элементы включены параллельно.
Надежности участка логической схемы:
.
4.2 Математические и алгоритмические основы решения задачи Предположим, что система состоит из n последовательно включенных элементов. Из теории вероятностей известно, что если определены вероятности появления нескольких независимых случайных событий, то совпадение этих событий определяется как произведение вероятностей их появлений. В нашем случае работоспособное состояние любого из n элементов системы оценивается как вероятность безотказной работы элемента. Система будет находиться в работоспособном состоянии только при условии совпадения работоспособных состояний всех элементов. Таким образом, работоспособность системы оценивается как произведение вероятностей безотказной работы элементов:
(2.1)
где — вероятность безотказной работы i-го элемента. Система, как и элемент, может находиться в одном из двух несовместимых состояний: отказа или работоспособности. Следовательно,
где Q (t) — вероятность отказа системы, определяемая по выражению:
. (2.2)
При произвольном законе распределения времени наработки до отказа для каждого из элементов:
(2.3)
где — интенсивность отказов i-го элемента.
Вероятность безотказной работы системы соответственно запишется:
. (2.4)
По выражению (2.4) можно определить вероятность безотказной работы системы до первого отказа при любом законе изменения интенсивности отказов каждого из n элементов во времени. Для наиболее часто применяемого условия выражение (2.4) примет вид:
(2.5)
где можно представить как интенсивность отказов системы, сведенной к эквивалентному элементу с интенсивностью отказов:
. (2.6)
Таким образом, систему из n последовательно включенных элементов легко заменить эквивалентным элементом, который имеет экспоненциальный закон распределения вероятности безотказной работы. А это значит, если, то средняя наработка до отказа системы
. (2.7)
Верно также и то, что при условии:, искомая величина определится как
. (2.8)
Для параллельного нагруженного логического соединения вероятность отказа системы равна произведению вероятностей отказа элементов. Функция ненадежности системы
(2.9) где — функция ненадежного j-го элемента.
При параллельном ненагруженном логическом соединении функция надежности участка логической схемы, состоящего из k одинаково надежных элементов, вычисляется по формуле:
(2.10)
Общий недостаток изложенного выше приближенного расчета надежности — малая и недостоверная информация о надежности типовых элементов.
Расчеты надежности при проектировании целесообразно завершить моделированием процессов появления отказов систем и испытанием первых опытных образцов. В ходе моделирования выявляются интенсивности отказов систем из-за постепенных изменений параметров элементов. При испытаниях уточняются действующие на элементы нагрузки и данные о надежности отдельных элементов.
4.3 Функциональные модели и блок-схемы решения задачи Функциональные модели и блок-схемы решения задачи представлены на рисунке 2 — 7.
Условные обозначения: LST — интенсивность отказов элементов; P — работоспособность системы; L — интенсивность отказов элементов; TME — период работы системы; X — рабочая переменная.
Рисунок 2 — Функциональная модель решения задачи для функции CAPACITY_IN_CASCADE_CON
Рисунок 3 — Функциональная модель решения задачи для функции FALL_OVER_IN_CASCADE_CON
Рисунок 4 — Функциональная модель решения задачи для функции CAPACITY_RANDOM_TIME
Рисунок 5 — Функциональная модель решения задачи для функции TIME_BEFORE_FALL_OVER
Рисунок 6 — Функциональная модель решения задачи для функции CAPACITY_PARALLEL_CON
Рисунок 7 — Функциональная модель решения задачи для функции FACTORIAL
4.4 Программная реализация решения задачи
; P — РАБОТОСПОСОБНОСТЬ СИСТЕМЫ
; Q — ОТКАЗ СИСТЕМЫ
; 1 — ПОСЛЕДОВАТЕЛЬНОЕ СОЕДИНЕНИЕ — CASCADE_CONNECT
; 2 — ПАРАЛЛЕЛЬНОЕ НАГРУЖЕННОЕ СОЕДИНЕНИЕ — PARALLEL_CONNECT_LOAD
; 3 — ПАРАЛЛЕЛЬНОЕ НЕ НАГРУЖЕННОЕ СОЕДИНЕНИЕ — PARALLEL_CONNECT
; РАБОТОСПОСОБНОСТЬ СИСТЕМЫ ПРИ ПОСЛЕДОВАТЕЛЬНОМ СОЕДИНЕНИИ
(DEFUN CAPACITY_IN_CASCADE_CON (LST)
(COND
((NULL LST) 0)
((ATOM LST) LST)
(T (* (CAPACITY_IN_CASCADE_CON (CAR LST)) (CAPACITY_IN_CASCADE_CON (CDR LST))))))
; ВЕРОЯТНОСТЬ ОТКАЗА СИСТЕМЫ
(DEFUN FALL_OVER_IN_CASCADE_CON (P)
(- 1 P)
)
; ПРИ ПРОИЗВОЛЬНОМ ЗАКОНЕ РАСПРЕДЕЛЕНИЯ ВРЕМЕНИ
; ИНТЕНСИВНОСТЬ ОТКАЗОВ СИСТЕМЫ
(DEFUN FALL_OVER_RANDOM_TIME (LST)
(COND
((NULL LST) 0)
((ATOM LST) LST)
(T (+ (FALL_OVER_RANDOM_TIME (CAR LST)) (FALL_OVER_RANDOM_TIME (CDR LST))))
)
)
; ВЕРОЯТНОСТЬ БЕЗОТКАЗНОЙ РАБОТЫ СИСТЕМЫ
(DEFUN CAPACITY_RANDOM_TIME (L TME)
(EXP (* - 1 L TME))
)
; НАРАБОТКА ДО ОТКАЗА СИСТЕМЫ
(DEFUN TIME_BEFORE_FALL_OVER (L)
(/ 1 L)
)
; ПАРАЛЛЕЛЬНОЕ НАГРУЖЕННОЕ
; ВЕРОЯТНОСТЬ ОТКАЗА
(DEFUN FALL_OVER_PARALLEL_CON_LOAD (LST)
(COND
((NULL LST) 1)
((ATOM LST) LST)
(T (* (FALL_OVER_PARALLEL_CON_LOAD (CAR LST)) (FALL_OVER_PARALLEL_CON_LOAD (CDR LST))))
)
)
; ПАРАЛЛЕЛЬНОЕ НЕНАГРУЖЕННОЕ
(DEFUN FACTORIAL (X)
(COND
((EQL X 0) 1)
((EQL X 1) 1)
(T (* X (FACTORIAL (- X 1))))
)
)
(DEFUN SUM_CAPACITY_PARALLEL_CON (L TME N)
(COND
((= N — 1) 0)
(T (FLOAT (+ (/ (EXPT (* L TME) N) (FACTORIAL N)) (SUM_CAPACITY_PARALLEL_CON L TME (- N 1)))))
)
)
; РАБОТОСПОСОБНОСТЬ СИСТЕМЫ
(DEFUN CAPACITY_PARALLEL_CON (L TME N)
(* (SUM_CAPACITY_PARALLEL_CON L TME N) (EXP (* - 1 L TME)))
)
(DEFUN GET_RES (CON L TME OUPUT)
(COND
; ПОСЛЕДОВАТЕЛЬНОЕ СОЕДИНЕНИЕ
((= CON 1)
(SETQ L (FALL_OVER_RANDOM_TIME L))
(PRINT (LIST 'INTENSIVNOST_OTKAZA '= L) OUPUT)
(PRINT (LIST 'VEROYATNOST_BEZOTKAZNOI_RABOTY '= (CAPACITY_RANDOM_TIME L TME)) OUPUT)
(PRINT (LIST 'SREDNYA_NARABOTKA_DO_OTKAZA '= (TIME_BEFORE_FALL_OVER L)) OUPUT)
)
; ПАРАЛЛЕЛЬНОЕ НАГРУЖЕННОЕ СОЕДИНЕНИЕ
((= CON 2)
(PRINT (LIST 'VEROYATNOST_OTKAZA '= (FALL_OVER_PARALLEL_CON_LOAD L)) OUPUT)
(SETQ NUM (LENGTH L))
(SETQ L (FALL_OVER_RANDOM_TIME L))
(PRINT (LIST 'INTENSIVNOST_OTKAZA '= L) OUPUT)
(PRINT (LIST 'RABOTOSPOSOBNOST_SYSTEMY '= (CAPACITY_PARALLEL_CON L TME NUM)) OUPUT)
)
; ПАРАЛЛЕЛЬНОЕ НЕНАГРУЖЕННОЕ СОЕДИНЕНИЕ
((= CON 3)
(SETQ NUM (LENGTH L))
(SETQ L (FALL_OVER_RANDOM_TIME L))
(PRINT (LIST 'INTENSIVNOST_OTKAZA '= L) OUPUT)
(SETQ P (CAPACITY_PARALLEL_CON L TME NUM))
(PRINT (LIST 'RABOTOSPOSOBNOST_SYSTEMY '= P) OUPUT)
(PRINT (LIST 'VEROYATNOST_OTKAZA '= (FALL_OVER_IN_CASCADE_CON P)) OUPUT)
)))
; ПОЛУЧАЕМ СОЕДИНЕНИЕ СИСТЕМЫ
(SETQ INPUT (OPEN «D: SYSTEM. TXT»: DIRECTION: INPUT))
(SETQ CONNECT (READ INPUT))
(SETQ L (READ INPUT))
(SETQ TME (READ INPUT))
(CLOSE INPUT)
(SETQ OUTPUT (OPEN «D: RESULT. TXT»: DIRECTION: OUTPUT))
(GET_RES CONNECT L TME OUTPUT)
(TERPRI OUTPUT)
(CLOSE OUTPUT)
; КОНЕЦ
4.5 Пример выполнения программы Пример 1.
Рисунок 8 — Входные данные: последовательное соединение, интенсивность отказов элементов, период — 1 год Рисунок 9 — Выходные данные: интенсивность отказа, вероятность безотказной работы системы, средняя наработка до отказа Пример 2.
Рисунок 10 — Входные данные: параллельное нагруженное соединение, интенсивность отказов элементов, период — 2 года Рисунок 11 — Выходные данные: вероятность отказа работы системы, интенсивность отказа, работоспособность системы Пример 3.
Рисунок 12 — Входные данные: параллельное ненагруженное соединение, интенсивность отказов элементов, период — 1 год Рисунок 13 — Выходные данные: интенсивность отказа, работоспособность системы, вероятность отказа системы ЗАКЛЮЧЕНИЕ Проблема повышения качества вычислений, как несоответствие между желаемым и действительным, существует и будет существовать в дальнейшем. Ее решению будет содействовать развитие информационных технологий, которое заключается как в совершенствовании методов организации информационных процессов, так и их реализации с помощью конкретных инструментов — сред и языков программирования.
Итогом работы можно считать созданную функциональную модель расчета надежности функционирования систем. Созданная функциональная модель и ее программная реализация могут служить органической частью решения более сложных задач.
ЛИТЕРАТУРА
Надёжность автоматизированных систем управления. / Под редакцией Я. А. Хетагурова.- М.: Высшая школа, 1979 — 287с.
Половко А. М. Основы теории надёжности. — М.: Наука, 1964 — 446с.
Голинкевич Т. А. Прикладная теория надёжности. — М.: Высшая школа, 1985 — 168с.
Маликов И. М. Надёжность судовой электронной аппаратуры и систем автоматического управления. — Л.: Судостроение, 1967 — 315с.
Шишонок Н.А. и др. Основы теории надёжности и эксплуатации радиоэлектронной техники. — М.: Советское радио, 1964 — 551с.
Шор Я. Б. Статистические методы анализа и контроля качества и надёжности. — М.: Советское радио, 1962 — 552с.
Росин М.Ф., Булыгин В. С. Статистическая динамика и теория эффективности систем управления. — М.: Машиностроение, 1981 — 312с.
Вероятностные методы в вычислительной технике. — М.: Высшая школа, 1986 — 312с.
Яншин А. А. Теоретические основы конструирования, технологии и надёжности ЭВА. — М.: Радио и связь, 1983 — 312с.
Рудзит Я.А., Плуталов В. Н. Основы метрологии, точность и надёжность в приборостроении. — М.: Машиностроение, 1991 — 303с.
Саяпин В. В. Конспект лекций по курсу «Основы теории надёжности». — М.: МВ и ССО СССР, МАИ, 1971 — 142с.
Дружинин Г. В. Надёжность автоматизированных производственных систем. — М.: Энергоатомиздат, 1986 — 479с.
Липаев В. В. Надёжность программного обеспечения АСУ. — М.: Энергоиздат, 1981 — 240с.
Шураков В. В. Надёжность программного обеспечения систем обработки данных. — М.: Финансы и статистика, 1987 — 271с.
Садчиков П.И., Приходько Ю. Г. Методы оценки надёжности и обеспечения устойчивости функционирования программ. — М.: Знание, 1983 — 102с.
Сборник задач по теории надёжности./ Под редакцией А. М. Половко и И. М. Маликова. — М.: Советское радио, 1972 — 407с.
Теория надёжности радиоэлектронных схем в примерах и задачах. — М.: Энергия, 1976 — 448с.
Снегирёв А. А. Сборник задач по надёжности САУ. — М.: МВ и ССО СССР, МИФИ, 1978 — 87с.
Тейер Т., Липов М., Нельсон Э. Надёжность программного обеспечения. — М.: Мир, 1981 — 325с.
Майерс Г. Надёжность программного обеспечения. — М.: Мир, 1980 — 360с.
Гласс Р. Руководство по надёжному программированию. — М.: Финансы и статистика, 1982 — 256с.
Ушаков И. А. Вероятностные модели надежности информационно-вычислительных систем. М. Радио и связь, 1991.
Рябинин И. А. Надежность и безопасность структурно-сложных систем. Санкт-Петербург, Политехника, 2001.
Афанасьев В.Г., Зеленцов В. А., Миронов А. И. Методы анализа надежности и критичности отказов сложных систем. МО, 1992.
Райншке К., Ушаков И. А. Оценка надежности систем с использованием графов, М. Радио и связь, 1998.
Рябинин И.А., Черкесов Г. Н. Логико-вероятностные методы исследования надежности структурно-сложных систем. М. Радио и связь, 1986.
Барлоу Р., Прошан А. Математическая теория надежности. Пер. с англ. Под ред Гнеденко Б. В., М. Сов. Радио, 1969.
Заде Л. Понятие лингвистической переменной и его применение к принятию приближенных решений. Пер. с англ. — М., Мир, 1976.
Кофман А.
Введение
в теорию нечетких множеств Пер. с франц. М. Радио и связь, 1982.
Бронштейн И. Н. Справочник по математике для инженеров и учащихся втузов / И. Н. Бронштейн, К. А. Семендяев. — М.: Наука, 2007. — 708 с.
Кремер Н. Ш. Высшая математика для экономистов: учебник для студентов вузов. [Текст] / Н. Ш. Кремер, 3-е издание — М.: ЮНИТИ-ДАНА, 2006. C.412.
Круглов В. В. Нечёткая логика и искусственные нейронные сети. [Текст] / В. В. Круглов, М. И. Дли, Р. Ю. Голунов. — М.: Питер, 2001. C.224.
Лекции по надежности [Электронный ресурс] - Режим доступа: http://www.prostoev.net/modules/myarticles/admin/index. php? op=edit&storyid=86#4.
Методы расчета надежности [Электронный ресурс] - Режим доступа: http://reliability-theory.ru/topics/t3r1part1.html
Симанков В. С. Основы функционального программирования/ В. С. Симанков, Т. Т. Зангиев, И. В. Зайцев.-Краснодар: КубГТУ, 2002.-160 с.
Степанов П. А. Функциональное программирование на языке Lisp. / П. А. Степанов, А. В. Бржезовский. — М.: ГУАП, 2003. С. 79.
Хювенен Э. Мир Лиспа [Текст] / Э. Хювенен, Й. Сеппянен. — М.: Мир, 1990. — 460 с.
ПРИЛОЖЕНИЕ. ПРОГРАММА
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, math, Menus, ComCtrls;
type
TForm1 = class (TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
Button1: TButton;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
procedure Button1Click (Sender: TObject);
procedure N1Click (Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1. Button1Click (Sender: TObject);
var
//n:real;
p:array [0.60] of real;
q:array [0.60] of real;
f:array [0.60] of real;
l:array [0.60] of real;
e:array [0.60] of real;
m:array [0.60] of real;
ex, n, t :integer;
j, s, y, z, z1,z3:string;
begin
ex:=4;
n:=60;
q[0]: = strtofloat (edit1.Text);
q[1]: = strtofloat (edit2.Text);
q[2]: = strtofloat (edit3.Text);
q[3]: = strtofloat (edit4.Text);
q[4]: = strtofloat (edit5.Text);
q[5]: = strtofloat (edit6.Text);
q[6]: = strtofloat (edit7.Text);
{ q[1]: =0.25; q[2]: =0.35; q[3]: =0.45; q[4]: =0.55; q[5]: =0.65; q[6]: =0.75;
{for t:=0 to 6 do begin
j := j + #9 + FloatToStr (q[t])+ #13;
label1.Caption := 'Q[t] - Вероятность отказа '+ #13 + '0<1'+ #13+ #13 + j + #13;
end; }
//P[t] - Вероятность безотказной работы
for t:=0 to n do begin p[t]: =1-q[t]; end;
for t:=0 to 6 do begin z := z+ #9 + FloatToStr (p[t])+ #13;
label4.Caption := 'P[t] - Вероятность безотказной работы '+ #13 + #13 + z + #13;
end;
// плотность отказа
f[1]: =q[1]-q[0]/10;
f[2]:=q[2]-q[1]/10;
f[3]:=q[3]-q[2]/10;
f[4]:=q[4]-q[3]/10;
f[5]:=q[5]-q[4]/10;
f[6]:=q[6]-q[5]/10;
for t:=0 to 6 do begin s := s+ #9 + FloatToStr (f[t])+ #13;
label2.Caption := 'f[t] - плотность отказа '+ #13 + #13 + s + #13;
end;
for t:=0 to 6 do begin p[t]: =1-q[t]; end;
//интенсивность отказа
for t:=0 to 6 do begin l[t]: =f[t]/p[t]; end;
for t:=0 to 6 do begin y := y+ #9 + FloatToStr (l[t])+ #13;
label3.Caption := 'l[t] - интенсивность отказа '+ #13 + #13 + y + #13;
end;
// E (t) — Эспоненциальный закон распределения отказа
for t:=0 to 6 do begin e[t]: = (exp (-l[t]*10)); end;
for t:=0 to 6 do begin z1 := z1+ #9 + FloatToStr (e[t])+ #13;
label5.Caption := 'E[t] - Эспоненциальный закон распределения отказа '+#13+#13+z1+#13;
end;
//Матожидание наработки до отказа
for t:=1 to 6 do begin m[t]: =1/l[t]; end;
for t:=0 to 6 do begin z3 := z3+ #9 + FloatToStr (m[t])+ #13;
label6.Caption := 'm[t] - Матожидание наработки до отказа '+#13+#13+z3+#13;
end;
end;
procedure TForm1. N1Click (Sender: TObject);
begin
form2.show
end;
end.