Мультиверсионная среда исполнения для отказоустойчивых программных комплексов систем управления тема диссертации и автореферата по ВАК РФ 05.13.01, кандидат технических наук Котенок, Андрей Владимирович

  • Котенок, Андрей Владимирович
  • кандидат технических науккандидат технических наук
  • 2009, Красноярск
  • Специальность ВАК РФ05.13.01
  • Количество страниц 119
Котенок, Андрей Владимирович. Мультиверсионная среда исполнения для отказоустойчивых программных комплексов систем управления: дис. кандидат технических наук: 05.13.01 - Системный анализ, управление и обработка информации (по отраслям). Красноярск. 2009. 119 с.

Оглавление диссертации кандидат технических наук Котенок, Андрей Владимирович

Введение.

1. Отказоустойчивые системы управления.

1.1. Программная составляющая критичных по надежности систем управления.

1.1.1. Надежностная характеристика программного модуля.

1.1.2. Обеспечение надежности программ с помощью введения избыточности.

1.2. Описание объекта исследования и его анализ.

1.3. Методы повышения надежности программных систем.

1.3.1. Моноверсионные модели.

1.3.2. Модели восстанавливающихся блоков.

1.3.3. Мультиверсионное программирование.

1.3.4. Мультиверсионное программирование с самопроверкой.

1.3.5. Модель согласованных восстанавливающихся блоков.

1.3.6. t/(n-l)-BepcH0HH0e программирование.

2. Мультиверсионная среда исполнения оптимизационных алгоритмов: программная реализация.

2.1. Анализ требований к среде мультиверсионного исполнения.

2.2. Применение мультиверсионной методологии к системе управления

2.3. Выбор способа реализации программных модулей и их взаимодействия со средой исполнения.

2.3.1. Конструирование программной модели.

2.4. Реализация общих алгоритмов функционирования среды исполнения

2.5. Реализация алгоритма выявления отказов программных модулей.

2.6. Реализация алгоритмов принятия решения о корректности или ошибочности состояний мультиверсий.

2.6.1. Алгоритм голосования абсолютным большинством (ГАБ).

2.6.2. Алгоритм голосования согласованным большинством (ГСБ).

2.6.3. Алгоритм нечеткого голосования согласованным большинством (НГСБ).

2.6.4. Медианное голосование.

3. Программный комплекс среды мультиверсионного исполнения.

3.1. Теоретическое исследование предельной надежности мультиверсионных моделей проектирования отказоустойчивых систем

3.2. Исследование результатов работы реализованной среды исполнения

3.2.1. Выводы.

3.3. Применение методологии мультиверсионного программирования к оптимизационным алгоритмам отказоустойчивых систем.

3.4. Методология выбора наилучшего алгоритма оптимизации.

3.4.1. Классы тестовых функций.

3.5. Анализ результатов.

Рекомендованный список диссертаций по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Введение диссертации (часть автореферата) на тему «Мультиверсионная среда исполнения для отказоустойчивых программных комплексов систем управления»

Актуальность работы.

Несмотря на то, что концепция «отказоустойчивых вычислений" существует уже достаточно давно, до недавних пор прерогатива отказоустойчивости оставалось за проектировщиками аппаратной части. Аппаратные структуры разрабатываются так, чтобы они могли сохранять работоспособность и соответствовать заданным показателям даже при возникновении отказов — как случайных, так и повторяющихся. Однако отказы аппаратных компонентов являются только одним из источников ненадежности компьютерных систем, который существенно теряет свою значимость как способ повышения надежности по мере увеличения размеров и сложности программных компонентов. Использование аппаратных методов отказоустойчивости предполагает отсутствие ошибок в выбранной модели обеспечения надежности, и применяемые меры исключают только отказы компонент, а не ошибки самой модели. Основная причина этого заключается в том, что очень сложно определить причину возникновения отказа на уровне аппаратной части. Следовательно, очень сложно разработать эффективную модель. Программные отказы, напротив, всегда являются следствием несоответствия модели, и их частота напрямую зависит от логической сложности программной модели.

Модели повышения надежности главным образом связаны с введением избыточности в систему. Поэтому до недавнего времени улучшение программной составляющей критичных по надежности систем управления существенно ограничивалось вычислительными ресурсами применяемых вычислительных устройств. Однако сейчас развитие техники достигло того уровня, когда вычислительная мощность выпускаемых микропроцессоров значительно превосходит требования отдельных задач. Поэтому одной из основных задач разработчиков программного обеспечения становится создание таких алгоритмов разработки программных систем, которые обеспечивали бы устойчивость системы к программным и аппаратным сбоям.

В связи с этим возникает техническая проблема, заключающаяся в создании программных средств разработки отказоустойчивого программного обеспечения. Это требует развития процедур проектирования отказоустойчивого программного комплекса систем управления, что является актуальной научной проблемой.

Объектом исследования является программный комплекс критичной по надежности системы управления.

Предмет исследования — среда исполнения программного комплекса системы управления.

Целью диссертационного исследования является повышение отказоустойчивости среды исполнения программных комплексов систем управления, за счет применения мультиверсионных моделей.

Основной задачей данной работы является применение методологии проектирования отказоустойчивого программного обеспечения для повышения качества работы алгоритмов в системах управления. Для решения основной задачи требуется разработать программную систему, представляющую собой инструментарий, который позволяет с минимальными временными затратами повысить отказоустойчивость систем управления при решении каждой конкретной задачи.

Для достижения цели требуется решить следующие задачи:

• Проанализировать существующие модели проектирования отказоустойчивого программного обеспечения.

• Разработать методику применения моделей для реализации программного комплекса системы управления.

• Разработать программный инструментарий, представляющий собой универсальную среду мультиверсионного исполнения модулей программного комплекса.

• Оценить эффективность различных моделей проектирования отказоустойчивого программного обеспечения и алгоритмов мультиверсионного голосования.

• Реализовать и протестировать мультиверсионную среду программного комплекса системы управления.

Методы исследования. Для решения поставленных задач использовались методы теории систем управления, проектирования отказоустойчивых программных систем и системного анализа. Ряд результатов получен на основе имитационного моделирования.

Научная новизна результатов, полученных в диссертации, состоит в следующем:

• Разработана универсальная среда мультиверсионного исполнения программных модулей, позволяющая повысить отказоустойчивость программного комплекса систем управления за счет использования мультиверсионных методологий.

• Предложены и реализованы модифицированные варианты алгоритмов мультиверсионного голосования, обладающие более высокой устойчивостью к межверсионным ошибкам программных, модулей, по сравнению с не взвешенными аналогами.

• Предложена процедура оценки эффективности основных мультиверсионных моделей, позволяющая осуществить выбор модели для реализации в программных комплексах.

• Разработан подход к выбору методов мультиверсионного голосования, позволяющий оценить эффективность алгоритмов мультиверсионного голосования по характеристикам системы.

Достоверность полученных результатов подтверждается корректным использованием имитационных моделей при обосновании полученных результатов, выводов, рекомендаций, а также успешным выполнением компьютерных экспериментов с разработанной средой мультиверсионного исполнения программных модулей.

Практическая ценность. Разработанные в диссертации инструментальные средства позволяют применить мультиверсионный подход при реализации конкретных программных комплексов сложных систем управления, а также выбрать соответствующую практической задаче мультиверсионную модель и способ мультиверсионного голосования еще на этапе проектирования системы

Реализация результатов работы. В диссертационной работе были разработаны две программные системы, предназначенные для внедрения мультиверсионного подхода при проектировании программного комплекса системы управления. В рамках системы «СМВИ vl.O» предложена методика оценки эффективности мультиверсионных моделей в зависимости от количества мультиверсий, вероятностей их безотказной работы и качества проверочного модуля. Разработанная имитационная система «ИС-СМВИ vl.O» помогает выбрать мультиверсионную модель и наилучший алгоритм мультиверсионного голосования. Программные системы прошли экспертизу и зарегистрированы в Отраслевом фонде алгоритмов и программ (ОФАП), что делает их доступными широкому кругу специалистов в области архитектуры, проектирования и разработки программного обеспечения отказоустойчивых информационно-управляющих систем.

На основе материалов диссертационной работы был разработан учебный курс, читаемый магистрам на кафедре «Системный анализ и исследование операций» Сибирского государственного аэрокосмического университета.

Апробация работы. Основные положения и результаты диссертационной работы прошли апробацию на международных и всероссийских научных конференциях: на всероссийских научных конференциях «Современные телекоммуникационные и информационные технологии» (2006), «Информационно-телекоммуникационные технологии и электроника» (2007), международных научных конференциях «Решетневские чтения» (2006), «Инновационные технологии» (2008).

Диссертационная работа в целом обсуждалась на научных семинарах Сибирского государственного аэрокосмического университета, а также НИИ Систем управления, волновых процессов и технологий.

Публикации. По материалам диссертации опубликовано 13 работ, включая публикации в журналах по Перечню ВАК РФ.

Структура и объем работы. Диссертация состоит из введения, трех разделов и списка литературы из 121 наименования. Содержание работы изложено на 119 страницах.

Похожие диссертационные работы по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Заключение диссертации по теме «Системный анализ, управление и обработка информации (по отраслям)», Котенок, Андрей Владимирович

3.2.1. Выводы

Проведя анализ полученных зависимостей, можно сделать вывод о том, что наиболее универсальным алгоритмом принятия решений является взвешенное голосование согласованным большинством - ВГСБ. Алгоритм ВГСБ показал лучшие результаты во всех ситуациях, где средняя вероятность ошибки программного модуля не превышала 0,30. Следует также отметить, что алгоритм, реализующий голосование абсолютным большинством, позволяет добиваться очень высокой отказоустойчивости для систем, в которых все программные модули являются высоконадежными (средняя вероятность ошибки не превышает 0,15), и их количество достаточно велико. Это важно, так как алгоритм ГАБ является очень простым [3], и его использование позволит снизить (относительно других методом голосования) ресурсоемкость решения задачи для системы в целом. Все рассмотренные алгоритмы голосования обладают своими преимуществами и недостатками, поэтому для достижения максимальной эффективности функционирования каждой конкретной мультиверсионной системы управления следует проводить исследование всех характеристик этой системы. Затем, используя значения этих характеристик в среде ИС-СМВИ, можно осуществить обоснованный выбор наиболее подходящего для конкретной системы управления алгоритма принятия решений.

Рисунок 3.8. Зависимость отказоустойчивости системы от отказоустойчивости отдельных модулей

Рисунок 3.9. Зависимость отказоустойчивости системы от отказоустойчивости отдельных модулей

Рисунок 3.10. Зависимость отказоустойчивости системы от отказоустойчивости отдельных модулей

Рисунок 3.11. Зависимость отказоустойчивости системы от отказоустойчивости отдельных модулей

3.3.Применение методологии мультиверсионного программирования к оптимизационным алгоритмам отказоустойчивых систем

Исследуем возможность применения мультиверсионных моделей к реализациям широко известных оптимизационных алгоритмов. В связи с тем, что модель восстанавливающихся блоков требует формализации условия проверки правильности каждой выполненной итерации поиска, что не представляется возможным, то применение любой модели основанной на модели восстанавливающихся блоков затруднительно. Поэтому будем использовать методологию мультиверсионного программирования. Недостижение системой точки минимума, связанное как с отказом программного модуля, так и с ошибкой конкретной реализации алгоритма (или с недостатками алгоритма в целом), считается «отказом» системы.

Цель эксперимента состоит в демонстрации возможностей разработанной мультиверсионной среды исполнения повысить отказоустойчивость системы за счет различных версий программного модуля. В качестве мультиверсий выступают различные программные реализации алгоритмов оптимизации, а принятие решения происходит на каждой итерации основного цикла мультиверсий. При этом время, выделяемое на выполнение одной итерации, ограничивается средой исполнения.

Очевидно, что все алгоритмы оптимизации обладают одинаковой спецификацией - они получают на вход функцию и начальную точку, а на выходе возвращают найденную оптимальную точку. Это свойство позволяет нам объединить их в одну мультиверсионную систему.

Для работы оптимизационных алгоритмов в среде мультиверсионного исполнения необходимо доработать модуль согласования результатов. Этот модуль, опираясь на выходы мультиверсий, генерирует оптимальный выход всей системы. Используя процесс оптимизации, целесообразно не сравнивать результаты версий алгоритмов оптимизации между собой, а выбирать оптимальную точку среди всех выходов. В этом случае будем считать корректными все те результаты, которые находятся в определенной окрестности этого значения, а остальные - ошибочными. Иными словами, результат алгоритма j считается корректным, если /(X') < min /(X* ) + sf, ye[l^V], где N — количество мультиверсий. Назовем такой способ голосованием по значению оптимизируемой функции.

3.4.Методология выбора наилучшего алгоритма оптимизации

Конкретную детерминированную задачу оптимизации можно решить различными алгоритмами. Отсюда возникают вопросы:

• какой алгоритм выбрать?

• какой алгоритм является «наилучшим»?

Ответ на эти вопросы возможен только в том случае, когда определен класс функций {Ф(Х)}, которому принадлежит критерий оптимальности Ф(Х). Без определения этого класса ответить на поставленные вопросы невозможно — нет алгоритма, наилучшего для всех возможных функций Ф(Х).

Множество рассматриваемых алгоритмов оптимизации обозначим {А}. Причем, мультиверсионную систему, объединяющую несколько методов оптимизации, мы здесь будем считать за один новый метод оптимизации.

Для формальной постановки задачи определения наилучшего алгоритма из множества {А} на классе функций (Ф(Х)} необходимо еще ввести критерий качества алгоритма оптимизации. Обозначим этот критерий W^,A), где Фе{Ф(Х)}, Ае{А}. Положим, что оптимальным является наименьшее значение этого критерия.

Для построения критерия качества алгоритма на всем классе функций (Ф(Х)} можно воспользоваться

• принципом гарантированного результата: W(A) = ^ max IV(Ф, А);

• некоторым средним значением критерия качества алгоритма на классе функций (Ф(Х)}.

Если критерий качества алгоритма на классе функций (Ф(Х)} тем или иным образом определен, то задача отыскания наилучшего алгоритма оптимизации на этом классе функций формально может быть записана в следующем виде: W(A') = maxW(A).

Лф!)

Теоретическое решение такой задачи возможно только для алгоритмов поиска минимума одномерных унимодальных функций. В более сложных случаях сравнение алгоритмов поисковой оптимизации и выбор из них наилучшего производится на основе экспериментального тестирования.

В качестве критерия качества алгоритма оптимизации W(0,A) обычно рассматривают затраты времени на поиск. Эти затраты складываются I

• из затрат на испытания

• из затрат на нахождение точек Хг по информации о предыдущих испытаниях (можно сказать — из затрат на вычисления значений функции).

Обычно, на практике, последние затраты много меньше первых, поэтому в качестве критерия качества алгоритма оптимизации А можно использовать количество испытаний N(0,A,e,X°), необходимых для нахождения минимума функции Ф(Х) с заданной точностью 8 при начальном приближении Х°.

Для корректного сравнения эффективности различных алгоритмов, экспериментальное тестирование алгоритмов оптимизации необходимо выполнять при одинаковых значениях заданной точности решения е.

Поэтому будем в качестве критерия качества алгоритма оптимизации А на классе функций (Ф(Х)} использовать критерий Ы(Ф,А,Х°).

При заданной точности решения эффективность любого алгоритма поисковой оптимизации зависит от начального приближения Х°. Поэтому при экспериментальном тестировании обычно критерий Ы(Ф,Л,Х°) усредняют по множеству допустимых значений вектора варьируемых параметров D. Обозначим такой критерий N(d>,A).

Точность решения задачи оптимизации определяется используемым условием окончания поиска. При экспериментальном тестировании в качестве такого условия будем использовать одно из двух условий: ех, где Ф - значение функции mm re[0,JV]

Ф(ХГ)-Ф

Ф((ХГ) )-Ф ф ИЛИ

ХГУ-Х

Ф(Х) в точке истинного минимума, а Х- точка истинного минимума функции Ф(Х), ||*|| - некоторая векторная норма.

Заметим, что эти условия накладывают на класс тестовых функций дополнительное требование: у этих функций априори должно быть известно положение истинного минимума X.

Сделаем следующие предположения:

• множество тестируемых алгоритмов {А} состоит из Па алгоритмов А,-, /g[1,#iJ;

• при тестировании алгоритма А,-, / е [1,ял] используется совокупность пф тестовых функций Ф, ^(Х) е {Ф(Х)}, j е [1,иф];

• при тестировании алгоритма А,-, /е[1,лл] с помощью функции Ф,ДХ)е{Ф(Х)},/е[1,яф] используется ^начальных приближений вектора варьируемых параметров X°jJc е Z), к е[1,гсЛ,].

В сделанных предположениях общую схему экспериментального тестирования алгоритмов оптимизации можно представить в следующем виде (см. рисунок 3.12).

Рисунок 3.12 Общая схема экспериментального тестирования алгоритмов поисковой оптимизации

3.4.1. Классы тестовых функций

Класс одномерных унимодальных функций.

Покроем интервал [а,Ь] сеткой из М узлов и обозначим Ф(х,)=Ф/, /е[1,М].

Положим, что необходимо построить одномерную унимодальную функцию, минимум которой находится в узле /* е[1,М], т.е. в точкех*.'Тогда для генерации такой функций может быть использован следующий алгоритм построения тестовых одномерных унимодальных функций.

1. Генерируем дискретную случайную величину i, равномерно распределенную на множестве 1,2,.,М

2. Генерируем случайные числа Фг по рекуррентной формуле: ГФ,=ФМ+Д

1 Фо = & ' где рг-, /е[0,М] - случайные величины, равномерно распределенные в * интервале (-а,0), если i<i, и в интервале (а,0), если i>i. Здесь а - некоторая константа, определяющая максимальную скорость изменения искомой функции.

3. Для получения функции Ф(х) используем линейную интерполяцию полученных значений Ф„ i е [1,М]. Минимум полученной функции Ф(х) достигается в точке х*—х*.

Функцию данного класса можно описать следующим образом: Ф, + к{ (jcj - х), х < х,

ЭС Д> iXi ф,—--+ ф2-— ,Xj <Х<Х2

Ф(Х) =

Х^ Xj

X \i X j- X Хх ф —ZМ.— + ф — M~l х <х<х

ХМ ХМ-1 ХМ ХМ-1

Фм + к2 (х где ki и к2 - некоторые случайные величины.

Класс многоэкстремальных функций нескольких переменных.

Алгоритм генерации многоэкстремальных функций нескольких переменных можно построить на основе использования совокупности М квадратичных функций, каждая из которых дает локальный минимум м искомой функции: Ф(Х) = ^]ФДХ), где j е[\,М] квадратичная функция j=1

Здесь п — размерность X, X*. =(x*i j,x*2 j,.,x*n j) — точка у'-го локального минимума глубиной Cj, постоянные akj, x'kJ, su, Cj - случайные величины с некоторыми законами распределения.

3.5.Анализ результатов

Тестирование будем производить на одномерной унимодальной функции мультиверсиями, которые реализуют:

• метод дихотомии;

• метод «золотого сечения»;

• метод квадратичной интерполяции.

А также на функции Розенброка и классе многоэкстремальных функций несколько переменных программными реализациями алгоритмов:

• алгоритм Гаусса-Зейделя;

• алгоритм Нелдера-Мида;

• алгоритм Хука-Дживса;

• алгоритм Флетчера-Ривса.

При тестировании не имеет существенного значения то, какие именно алгоритмы оптимизации используются. Цель эксперимента - показать эффект от применения мультиверсионного программирования в системах управления. Поэтому важно лишь различие программных реализаций и различие конечного алгоритма функционирования.

103

Стандартные алгоритмы мультиверсионного голосования во всех исследуемых ситуациях показали заметно худшие результаты и по времени, и по отклонению от точки экстремума, чем метод голосования по значению оптимизируемой функции (см. главу 3). Результаты будем приводить только для этого метода согласования.

Так как, в случае сравнения мультиверсионной системы из нескольких методов, с каждым отдельным методом количество итераций основного цикла не может являться показателем производительности, то в таблицу результатов был добавлен показатель «время». Это число показывает время затраченное системой на весь процесс оптимизации. В случае с мультиверсионной системой, это время также включает время работы внутренних алгоритмов системы.

Показатель количества побед как мультиверсия отображает, какой вклад внес тот или иной модуль, в общий результат мультиверсионной системы.

Результаты представлены в таблице 3.1.

В целом мультиверсионный подход к оптимизационным алгоритмам показывает не худшие результаты, чем наилучший из алгоритмов.

ЗАКЛЮЧЕНИЕ

• Разработана методика, позволяющая использовать существующие мультиверсионные модели повышения надежности для реализации программного комплекса системы управления.

• Разработан программный инструментарий, позволяющий унифицировать применение мультиверсионного подхода к различным программным комплексам, который в отличие от существующих в настоящее время, позволяет исполнять модули не только с помощью методологии мультиверсионного программирования, но также с использованием остальных распространенных мультиверсионных моделей: восстанавливающихся блоков, согласованных восстанавливающихся блоков, t/(n-1 )-версионного программирования и мультиверсионного программирования с самопроверкой.

• Разработана методика, позволяющая оценить эффективность мультиверсионных моделей, а также выбрать алгоритм мультиверсионного голосования.

• Предложена и проверена модификация алгоритмов мультиверсионного голосования, позволяющая повысить устойчивость алгоритмов к межверсионным ошибкам.

• Путем тестирования показано, что применив методологии мультиверсионного программирования позволяет повысить отказоустойчивость системы.

Результаты выполнения имитационных тестов подтвердили универсальность разработанных систем мультиверсионного исполнения программных модулей.

Список литературы диссертационного исследования кандидат технических наук Котенок, Андрей Владимирович, 2009 год

1. Котенок, А.В. Программная система "СМВИ vl.O" (среда мультиверсионного исполнения программных модулей) // Компьютерные учебные программы и инновации.- № 8, 2005.

2. Котенок, А.В. Построение среды мультиверсионного исполнения программных модулей / А.В. Котенок // Вестник НИИ СУВПТ: Сб.научн. трудов / Под общей ред. профессора Н.В. Василенко; Красноярск: НИИ СУВПТ.- 2003. Выпуск 14.- с. 13-21.

3. Котенок, А.В. Реализация алгоритмов мультиверсионного голосования / А.В. Котенок // Вестник университетского комплекса: Сб.научн. трудов / Под общей ред. профессора Н.В. Василенко; Красноярск: ВСФ РГУИТП, НИИ СУВПТ.- 2004. Выпуск 3 (17). -с. 86-93.

4. Котенок, А.В. Среда мультиверсионного исполнения программных модулей // Вестник университетского комплекса: Сб.научн. трудов / Под общей ред. профессора Н.В. Василенко; Красноярск: ВСФ РГУИТП, НИИ СУВПТ.- 2006. Выпуск 6 (20). -с. 219-238.

5. Ковалев, И.В. К проблеме выбора алгоритма принятия решения в мультиверсионных системах / И.В. Ковалев, А.В. Котенок // Информационные технологии; №9, 2006. с. 39-44.

6. Ковалев, И.В. Имитационная система для среды мультиверсионного исполнения программных модулей (программная система «ИС-СМВИ vl.O») // Компьютерные учебные программы и инновации.- № 2, 2007.

7. Котенок А.В. Программная система "СМВИ vl.O" (Среда мультиверсионного исполнения программных модулей). / А.В. Котенок // Номер гос. регистрации 50200401366 от 25.11.2004 г.- М.: ВНТИЦ, 2004.

8. Ковалев И.В. Имитационная система для среды мультиверсионного исполнения программных модулей (программная система «ИС-СМВИ vl.O») / И.В. Ковалев, А.В. Котенок / Номер гос. регистрации 50200501597 от 24.11.2005 г.- М.: ВНТИЦ, 2005.

9. Гантер, Р. Методы управления проектированием программного обеспечения: Пер. с англ./ Р. Гантер, Е. К. Масловский. М.: Мир, 1981. -392 с.

10. Липаев, В. В. Качество программного обеспечения. / В. В. Липаев. М.: Финансы и статистика, 1983. - 263 с.

11. Мамиконов, А. Г. Проектирование АСУ. / А. Г. Мамиконов. М.: Высшая школа, 1987. - 304 с.

12. Липаев, В. В. Проектирование программных средств: Учеб. пособие для вузов по спец. "Автом. сист. обр. информ. и упр.". / В. В. Липаев. М.: Высшая школа, 1990. - 303 с.

13. Майерс, Г. Надежность программного обеспечения: Пер. с англ. Галимова Ю. Ю. / Г. Майерс, В. Ш. Кауфман. М.: Мир, 1980. - 360 с.

14. Avizienis, A. On the implementation of N-version programming for software fault-tolerance during execution. / A. Avizienis, L. Chen. In Proc. IEEE COMPSAC 77, c. 149-155, ноябрь 1977.

15. Elmendorf, W. Fault-tolerant programming. / W. R. Elmendorf. // In Digest of 2-nd FTCS, c. 79-83, Newton, MA, June 1972.

16. Avizienis, A. Fault tolerance and fault intolerance: complementary approaches to reliable computing. / A. Avizienis. In Proc. 1975 International Conference on Reliable Software, c. 458-464, апрель 1975.

17. Avizienis, A. The methodology of N-version programming. In Software fault-tolerance / A. Avizienis, M. R. Lyu, c. 23-47, Wiley, 1995.

18. Avizienis, A. DEDIX 87 A supervisory system for design diversity experiments at UCLA. / A. Avizienis, M. R. Lyu, W. Schuetz, U. Voges. // In Digest of 18th FTCS, c. 129-168, Токио, Япония, июнь 1988.

19. Chen, J. Software Diversity and Its Implications in the N-version Software Life Cycle. / J. J. Chen. PhD dissertation, UCLA, Computer Science Department, 1990.

20. Pressman, R. Software Engineering: A Practitioner's Approach. // 4th Edition. Mc Graw-Hill, 1997.

21. Software Considerations in Airborne Systems and Equipment Certification. RTCA/DO-178B, RTCA, Inc, 1992.

22. Lyu, M.R. Improving the N-Version Programming Process Through the Evolution of a Design Paradigm / M.R. Lyu, Y. He, IEEE COMSPAC, 1993

23. Lyu, M. Software diversity metrics and measurements. / M. R. Lyu, J. H. Chen, A. Avizienis. In Proc. IEEE COMPSAC 1992, c. 69-78, Chicago, Illinois, сентябрь 1992.

24. Randell, B. The Evolution of the Recovery Block Concept / J. Xu, B. Randell University of Newcastle upon Tyne, England, 1995.

25. Anderson, T. Fault Tolerance: Principles and Practice / T. Anderson, P. A. Lea Practice Hall, 1981

26. Randell, B. System structure for software fault tolerance // IEEE Trans Software Engineering, том SE-1, c. 220-231, 1975

27. Peter J. Denning, Fault Tolerant Operating Systems // ACM Computing Surveys, Vol. 8, No. 4, December 1976, pp. 359 389.

28. Fetzer, C. Automatic Detection and Masking of Non-Atomic Exception Handling / C. Fetzer and K. Hogstedt (USA), P. Felber (France). 2003

29. Kim, K. Fault-Tolerant Software Voters Based on Fuzzy Equivalence Relations / K.Kim, M.A. Vouk and D.F. McAllister Department of Computer Science, North Carolina State University, 1997

30. Leung, Y.W. Maximum Likelihood Voting for Fault Tolerant Software with Finite Output Space / IEEE Trans. Rel, Vol. 44(3) c. 419-427, 1995

31. Mitchell, G. An approach for network communications systems Recovery / G.G. Mitchell, S. Brown Department of Computer Science, National University of Ireland, 2000

32. Romanovsky, A. Diversely Designed Classes for Use by Multiple Tasks. -University of Newcastle upon Tyne, 2000

33. Xu, J. The t/(n-l)-VP Approach to Fault-Tolerant Software / J. Xu, B. Randell — University of Newcastle upon Tyne, 1998

34. Steen, M. A Scalable Location Service for Distributed Objects / M. van Steen, F J. Hauck, A.S. Tanenbaum Vrije Universiteit, Amsterdam, 1996

35. Daniels, F. The Reliable Hybrid Pattern: A Generalized Software Fault Tolerant Design Pattern — Department of Electrical & Computer Engineering, North Carolina State University, 1999

36. Xu, J. Implementing Software-Fault Tolerance in С++ and Open С++: An Object-Oriented and Reflective Approach / J. Xu, B. Randell, A.F. Zorzo -Department of Computing Science, University of Newcastle upon Tyne, 2000

37. Bondavalli, A. Adaptable Fault Tolerance For Real-Time Systems / A. Bondavalli, J. Stankovic, L. Strigini CNUCE-CNR, Pisa, Italy, 1995

38. Brunie, L. Optimizing complex decision support queries for parallel execution / L. Brunie, H. Kosh LIP-CNRS at Ecole Normale Superieure de Lyon, France, 1997

39. Anderson Т., Fault Tolerance: Principles and Practice / T. Anderson and P.A. Lee//Prentice Hall, 1981.

40. Knight, J.C. An Experimental Evaluation of the Assumption of Independence in Multiversion Programming / J.C. Knight, N.G. Leveson // IEEE Transactions on Software Engineering, том SE-12, №1, c. 96-109, январь 1986

41. Avizienis, A. In Search of Effective Diversity: A Six-Language Study of Fault-Tolerant Flight Control Software / A. Avizienis, M.R. Lyu, W. Schutz //

42. Proceedings 18th Annual International Symposium on Fault Tolerant Computing Токио, Япония, 27-30 июня 1988.

43. Pradhan, D. К. Fault-Tolerant Computer System Design. / D. K. Pradhan -Prentice-Hall, Inc., 1996.

44. Laprie, J.C. Architectural Issues in Software Fault Tolerance, in Software Fault Tolerance, Michael R. Lyu, editor, Wiley, 1995, pp. 47 80.

45. Hecht, H. Fault-Tolerance in Software, in Fault-Tolerant Computer System Design. / H. Hecht, M. Hecht Dhiraj K. Pradhan, Prentice Hall, 1996.

46. Lorczack, P. R. A Theoretical Investigation of Generalized Voters for Redundant Systems. / P. R. Lorczack Digest of Papers FTCS-19: The Nineteenth International Symposium on Fault-Tolerant Computing, 1989. — pp. 444-451.

47. Taylor, J. Redundancy in Data Structures: Improving Software Fault Tolerance, IEEE Transactions on Software Engineering, Vol. SE-6, No. 6, November 1980, pp. 585 594.

48. Taylor, J. Redundancy in Data Structures: Some Theoretical Results, IEEE Transactions on Software Engineering, Vol. SE-6, No. 6, November 1980, pp. 595 602.

49. Broen, R. B. New Voters for Redundant Systems, Transactions of the ASME. / R. B. Broen Journal of Dynamic Systems, Measurement, and Control, March 1975.-pp. 41-45.

50. Abbott, J. Resourceful Systems for Fault Tolerance, Reliability, and Safety / Russell J. Abbott ACM Computing Surveys, Vol. 22, No. 1, March 1990, pp. 35 - 68.

51. Gersting, J. A Comparison of Voting Algorithms for N-Version Programming. / J. Gersting Proceedings of the 24th Annual Hawaii International Conference on System Sciences, Volume II, January 1991. - pp. 253-262.

52. Croll, P. R. Dependable, Intelligent Voting for Real-Time Control Software. / P. R. Croll — Engineering Applications of Artificial Intelligence, vol. 8, no. 6, December 1995. pp. 615-623.

53. Bass, J. M. Voting in Real-Time Distributed Computer Control Systems. / J. M. Bass-PhD Thesis, University of Sheffield, October 1995.

54. Kelly, J. P. J. Multi-Version Software Development. / J. P. J. Kelly -Proceeding of the Fifth IF AC Workshop, Safety of Computer Control Systems, October 1986. pp. 43-49.

55. Tso, K. S. Community Error Recovery in N-Version Software: A Design Study with Experimentation. / K. S. Tso, A. Avizienis Digest of Papers FTCS-17: The Seven teenth International Symposium on Fault-Tolerant Computing, July 6-8, 1987. - pp. 127-133.

56. Saglietti, F. The Impact of Voter Granularity in Fault-Tolerant Software on System Reliability and Availability. / F. Saglietti, M. Kersken, Software Fault Tolerance: Achievement and Assessment Strategies, Springer-Verlag, 1991.

57. Ковалев, И.В. Автоматизация создания программных средств систем управления. / В кн.: Микроэлектронные устройства: проектирование и технология. Красноярск. КПИ, 1990. - С. 79-85.

58. Ковалев И.В. Многоатрибутивная модель формированиягарантоспособного набора проектов мультиверсионных программных112систем. / И.В. Ковалев, Р.Ю. Царев; Вестник НИИ СУВПТ. Вып.7. -Красноярск: НИИ СУВПТ, 2001. - С. 129-137.

59. Ковалев, И.В. Оптимальное проектирование мультиверсионных систем управления. / И.В. Ковалев, А.А. Попов, А.С. Привалов. Доклады НТК с международным участием «Информационные технологии в инновационных проектах». - Ижевск: ИжГТУ, 2000. - С. 24-29.

60. Ковалев, И.В. Параллельные процессы в информационно-управляющих системах. Формирование и оптимизация: Монография. / И.В. Ковалев, Р.Ю. Царев, Ю.Г. Шиповалов. Под ред. д.т.н., проф. А.В. Медведева. -Красноярск: НИИ СУВПТ, 2001. - 143 с

61. Ковалев, И.В. Система мультиверсионного формирования программного обеспечения управления космическими аппаратами: Диссертация на соискание ученой степени доктора технических наук. / Красноярск: КГТУ, 1997.-228 с.

62. Ковалев, И.В. Надежность архитектуры программного обеспечения телекоммуникационных технологий. / И.В. Ковалев, Н.В. Василенко, Р.В.Юнусов; Международная научная конференция Telematica'2001, Санкт-Петербург, 2001- С. 23-24

63. Kovalev, I. Y. An Approach for the Reliability Optimization of N-Version Software under Resource and Cost/Timing Constraints. / 16th International Computer Measurement Group Conference, Nashville, TN, USA, December 9-13, 1991.

64. Kovalev, I. V. Computer-Aided Modelling of Production Cycles Optimal Sequence in: Letunovsky V.V.(Editor-in-chief): Problems of products quality assurance in machine-building: Proceedings of Int. Conf. KSTU / Krasnoyarsk, 1994. pp. 43-48.

65. Kovalev, I.V. Fault-tolerant software architecture creation model based on reliability evaluation / I.V. Kovalev, R.V.Younoussov; Advanced in Modeling & Analysis, vol. 48, № 3-4. Journal of AMSE Periodicals, 2002, pp. 31-43.

66. Юдин, Д.Б. Математические методы оптимизации устройств и алгоритмов АСУ / Д.Б. Юдин, А.П. Горяшко, А.С. Немировский -Москва, «Радио и связь», 1982. 288 с.

67. Антамошкин, А.Н. Оптимизация функционалов с булевыми переменными. Монография. Под ред. д.т.н. JI.A. Растригина. - Томск:

68. Издательство томского университета, 1987. 104 с.114

69. Антамошкин, А.Н. Оптимизация процессов автоматизированного синтеза систем управления космическими аппаратами. — Дисс. на соиск. уч. ст. доктора техн. наук — Красноярск: Сибирская аэрокосмическая академия, 1996, 285 с.

70. Antamoshkin, A. System Analysis, Design and Optimization / A. Antamoshkin, H.P. Schwefel, and others. Ofset Press, Krasnoyarsk, 1993. -312 p.

71. Семенкин, E.C. Поисковые методы синтеза управления космическими аппаратами. Монография / Е.С. Семенкин, О.Э. Семенкина, С.П. Коробейников Под ред. д.т.н. Е.С. Семенкина. - Красноярск: СИБУП, 1996.-325 с.

72. Березовский, Б.А. Многокритериальная оптимизация: математические аспекты. — Москва: Наука, 1989. — 128 с.

73. Вентцель, Е.С. Теория случайных процессов и ее инженерные приложения. / Е.С. Вентцель, JI.A. Овчаров. М.-.Наука, Гл.ред.физ.-мат.лит. - 1991. - 3 84 с.

74. Питерсон У., Уэлдон Э. Коды, исправляющие ошибки: Пер. с англ. // Под ред. P. JI. Добрушина и С. И. Самойленко. М.: Мир, 1976. - 594 с.

75. Семенкин, Е.С. Адаптивные поисковые методы оптимизации сложных сложных систем. Монография / Е.С. Семенкин, О.Э. Семенкина, С.П. Коробейников. Под ред. д.т.н. Е.С. Семенкина. - Красноярск: СИБУП, 1996.-358 с.

76. Аоки, М. Ведение в методы оптимизации. — М.: Наука, 1977. — 344 с.

77. Габасов, Р.Ф. Методы оптимизации. / Р.Ф. Габасов, Ф.М. Кириллова -Минск: Изд. бел. гос. ун., 1981. 350 с.

78. Моисеев, Н.Н. Методы оптимизации. / Н.Н. Моисеев, Ю.П. Иванилов, Е.М. Столярова М.: Наука. 1978.-352 с.

79. Поляк Б.Т. Введение в оптимизацию. М.: Наука, 1983. - 384 с.

80. Дегтярев, Ю. И. Методы оптимизации: Учеб. пособие для вузов. — М.: Сов. радио, 1980. — 272 с.

81. Лебедев, В.А. Параллельные процессы обработки информации в управляющих системах: Монография. / В.А. Лебедев, Н.Н. Трохов, Р.Ю. Царев. Красноярск: НИИ СУВПТ, 2001. - 137 с.

82. Попов, А.А. Бинарная модель отказоустойчивой системы программного обеспечения: Доклады НТК с международным участием «Информационные технологии в инновационных проектах». / А.А. Попов, А.С. Привалов. Ижевск: ИжГТУ, 2000. - С. 77-83

83. Царев, Р.Ю. Многокритериальное принятие решений при создании отказоустойчивого программного обеспечения. / Вестник НИИ СУВПТ. Вып.2. - Красноярск: НИИ СУВПТ, 1999. - С. 190-194.

84. Юнусов, Р.В. Анализ надежности аппаратно-программного информационно-управляющего комплекса. / Вестник НИИ СУВПТ: Сб. научн. Трудов. / Под общей ред. профессора Н.В. Василенко; Красноярск: НИИ СУВПТ. 2003. Выпуск 11. С. 103-106.

85. Юнусов, Р.В. Оценка надежности и гарантоспособная модель архитектуры программного обеспечения. / Вестник НИИСУВПТ; Красноярск: НИИСУВПТ.2001. -Вып.8. С. 194-208.

86. Юнусов, Р.В. Моделирование программных архитектур автоматизированных систем управления. / Управляющие и вычислительные системы. Новые технологии: Материалы всероссийской электронной научно-технической конференции. Вологда: ВоГТУ, 2001. С. 60-61.

87. Фокс, Д. Программное обеспечение и его разработка: Пер. с англ. / Д. Фокс М.: Мир, 1985. - 268 с.

88. Козленко JI. Проектирование информационных систем. / JI. Козленко — М.: КомпьютерПресс, № 9-11, 2001.

89. Орлов С.А. Технологии разработки программного обеспечения. / С.А. Орлов СПб.: Питер, 2002.

90. Гантер, Р. Методы управления проектированием программного обеспечения: Пер. с англ. / Р. Гантер, Е. К. Масловский. — М.: Мир, 1981. -392 с.

91. Майерс, Г. Надежность программного обеспечения: Пер. с англ. / Г.

92. Майерс, В. Ш. Кауфман. М.: Мир, 1980. - 360 с.117

93. Буч Г. Объектно-ориентированный анализ и проектирование с примерами на С++. / Г. Буч. М.: БИНОМ, 1998. - 560 с.

94. Поздняков, Д.А. Разработка и исследование среды мультиверсионного исполнения программных модулей. / Д.А. Поздняков, И.С. Титовский, Р.В.Юнусов; Вестник НИИ СУВПТ: Сб. научн. трудов; Красноярск: НИИ СУВПТ.- 2003. Выпуск 13.- с. 155-170

95. Gray, J. Why Do Computers Stop and What Can Be Done About It / Proceedings of the Fifth Symposium On Reliability in Distributed Software and Database Systems, January 13-15, 1986, pp. 3-12.

96. Randell, B. Predictably Dependable Computing Systems / Springer, 1995.

97. Pradhan, K. Fault-Tolerant Computer System Design / Prentice-Hall, Inc., 1996

98. Xu, J. Software Fault Tolerance: t/(n-l)-Variant Programming / Jie Xu and Brian Randell // IEEE Transactions on Reliability, Vol. 46, No. 1, March 1997, pp. 60 68.

99. Rosenberg, L. Software Metrics and Reliability / L. Rosenberg, T. Hammer, J. Shaw; Software reliability engineering was presented at the 9-th International Symposium, "Best Paper" Award, November, 1998

100. Shooman, M.L. Software Reliability for Use During Proposal and Early Design Stages / FastAbstract ISSRE Copyright 1999

101. Scott, R. Fault-Tolerant Software Reliability Modeling / R. Keith Scott, James W. Gault, and David F. McAllister // IEEE Transactions on Software Engineering, Vol. SE-13, No. 5, May 1987, pp. 582 592.

102. Silayeva, Т. K.-E. An Innovative Method for Program Reliability Evaluation / T. Silayeva, K.-E. Grosspietsch. Euromicro '95. Como (Italy), September 1995

103. Ammann, P.E. Data Diversity: An Approach to Software Fault Tolerance / P.E. Ammann, J.C. Knight // IEEE Transactions on Computers, Vol. 37, No. 4, April 1988, pp. 418 425.

104. Tai, A. Performability Enhancement of Fault-Tolerant Software / A. Tai, J. Meyer, A. Avizienis. IEEE Trans, on Reliability, 1993. - Vol. 42, No. 2 . -P. 227-237

105. Wattanapongsakorn, N. Reliability Optimization for Software Systems with Multiple Applications./ FastAbstract ISSRE and Chillarege Corp. Copyright 2001

106. Whitehouse, G. E. Applied operations research: a survey, Wiley, Inc. / G. E. Whitehouse, B. L. Wechsler. New York, 1976. - 424 c.

107. Xie, M. Regression Goodness-Of-fit Test for Software Reliability Model Validation / M. Xie, B.Yang; FastAbstract ISSRE Copyright 2000

108. Zahedi, F. Software reliability allocation based on structure, utility, price, and cost / F. Zahedi, N. Ashrafi. IEEE Trans, on Software Engineering, April 1991. - Vol. 17, No. 4. - c. 345-356

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.