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

кандидата технических наук
Лисс, Владимир Александрович
город
Санкт-Петербург
год
2006
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка математических и имитационных моделей надежности программного обеспечения систем реального времени»

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

На правах рукописи

Лисс Владимир Александрович

РАЗРАБОТКА МАТЕМАТИЧЕСКИХ И ИМИТАЦИОННЫХ МОДЕЛЕЙ НАДЕЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ

Специальность: 05,13.11 - Математическое и программное

обеспечение вычислительных машин, комплексов и компьютерных сетей

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

Санкт-Петербург - 2006

Работа выполнена в Санкт-Петербургском государственном электротехническом университете «ЛЭТИ» им. В.И. Ульянова (Ленина)

Научный руководитель —

доктор технических наук, профессор Геппенер В. В.

Официальные оппоненты:

доктор технических наук, профессор Водяхо А.И. кандидат технических наук, доцент Доронин Е.М.

Ведущее предприятие— Санкт-Петербургский государственный морской

технический университет

Защита диссертации состоится «/^>> 2006 г. в ю часов на

заседании диссертационного совета Д 212.23 Й. 01Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» им. В.И. Ульянова (Ленина) по адресу: 197376, Санкт-Петербург, ул. Проф. Попова, 5.

С диссертацией можно ознакомиться в библиотеке университета.

Автореферат разослан 2006 г.

Ученый секретарь

диссертационного совета _ "С ' Пантелеев М.Г.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы. Архитектура современных вычислительных и информационно-управляющих систем реального времени является, как правило, функционально распределенной. Она характеризуется многопроцессной организацией вычислений, при которой процессы реализуются параллельно и распределяются по нескольким процессорам (ЭВМ). Основным средством реализации функций обработки информации и управления в таких системах является программное обеспечение (ПО), объем которого часто составляет десятки и сотни тысяч строк текста. Создание ПО такого объема возможно только коллективами программистов, работающих совместно в течение всего жизненного цикла системы. Длительность жизненного цикла систем реального времени, включающего все фазы разработки и сопровождения, составляет от нескольких месяцев до нескольких лет.

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

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

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

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

Для достижения поставленной цели в работе решены следующие

задачи; .....

1, Выполнен ..¿анализ современного состояния проблемы ; прогнозирования надежности программных систем и подходов к ее „• решению. Отмечены недостатки существующих моделей . . надежности и предложены пути их совершенствования. 2: Разработаны математические и имитационные модели потока отказов и процессов тестирования и отладки ПО.

3. Предложен алгоритм прогнозирования показателей надежности в процессе тестирования и отладки ПО.

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

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

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

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

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

: 2. . Математическая и имитационная модели надежности ПО, ■ учитывающие вероятностный характер процесса отладки ПО,

размер-, программной системы и квалификацию коллектива с? л программистов, участвующих в разработке ПО. > : - 3.: Методика расчета продолжительности отладки системы, ■".::.:»- обеспечивающей достижение заданных значений показателей

. , . ■ ■ надежности ПО. . '4. Алгоритм: прогнозирования надежности ПО на основе оценок .--л-7 " .,'среднего, времени наработки на отказ по результатам промежуточных прогонов системы. \г Подход к проектированию ПО распределенных информационных г' -- систем реального времени с учетом надежностных характеристик, с: о:-..,- основанный на разбиении на непересекающиеся кластеры задач, '* 6. Система сбора и обработки данных о надежности в процессе отладки ПО, основанная на результатах диссертационной работы.

Научные положения, выносимые на защиту:

1. Модель потока отказов ПО на основе геометрической модели распределения средних значений периодов проявления ошибок.

2. Рандомизированная модель надежности ПО.

3. Методика расчета продолжительности отладки ПО.

4. Алгоритм прогнозирования надежности ПО в процессе тестирования и отладки.

5. Подход к проектированию информационных систем реального времени с учетом надежности ПО.

6. Инструментальный программный комплекс контроля и прогнозирования надежности ПО.

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

Внедрение результатов работы. Результаты диссертационной работы внедрены в процессы проектирования гидроакустических систем в ОАО «Концерн «Океанприбор» и использованы в учебном процессе кафедры МО ЭВМ СПбГЭТУ «ЛЭШ». Работа поддержана грантом Федерального агентства по образованию А04-3.16-481,

Апробация работы. Основные положения, результаты исследований и выводы, содержащиеся в диссертационной работе, обсуждались в широком кругу специалистов, ученых и разработчиков систем реального времени в ОАО «Концерн «Океанприбор», на конференциях ППС СПбГЭТУ «ЛЭТИ», а также на научно-технических конференциях:

- «Технологии Microsoft в теории и практике программирования», г. Санкт-Петербург, 2005г.

— VIII Международная конференция по мягким вычислениям и измерениям SCM-2005, г. Санкт-Петербург, 2005 г.

— IX Международная конференция по мягким вычислениям и измерениям SCM-2006, г. Санкт-Петербург, 2006 г.

- 7-ая Всероссийская научно-техническая конференция «Теоретические и прикладные вопросы современных информационных технологий» ТиПВ СИТ'2006, г. Улан-Удэ, 2006 г.

Публикации. По теме диссертации опубликованы 4 научные работы, из них — 1 статья, 3 работы — в материалах конференций.

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

СОДЕРЖАНИЕ РАБОТЫ

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

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

Пусть P(t) — вероятность того, что ни одного отказа не будет обнаружено на временном интервале (0,i)* Тогда вероятность хотя бы одного отказа за этот период есть

Q(t) ~ 1 - P(t),

а плотность вероятности отказов можно записать следующим образом:

q{t) = dQldt = -dP{t)ldt, (1)

Учитывая равенство (1), определим функцию риска R(t) как плотность вероятности отказа программы в момент времени t при условии, что до этого момента отказов не было:

*<0=-[1/П0]^(0Л" (2)

Учитывая (2), имеем dP(f)jP(t)^-R{t)dtt следовательно,

о

ИЛИ ...-:.„.:.

- ' . .. P(t) = e[ * К

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

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

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

Вторая глава посвящена математическим моделям потока отказов программного обеспечения систем реального времени. В ней рассмотрены модель стационарного случайного потока отказов (характер проявления отказов и их среднее число не зависят от интервала времени) ПО и модель распределения средних периодов проявления ошибок. Модель стационарного случайного потока отказов основана на статистике функционирования распределенных гидроакустических систем реального времени, полученной при их разработке и эксплуатации. На рис. 1 представлен фрагмент потока отказов, зафиксированных при опытной эксплуатации многомашинного гидроакустического комплекса (ГАК),

№ теории вероятностных распределений известно, что для пуассоновского процесса закон распределения вероятностей имеет вид = где параметр Я - среднее число отказов в единицу

времени; г - длительность интервала наблюдения; вероятность

наступления т отказов на интервале (О, О.

РЛ

м

4.1

И М КО юсо НА ЧМ ЯЩ 1»« и»

Щ*и »ям ¡» 41, ч.) .

Рис. 1. Поток отказов программного обеспечения

Из теории вероятностей также известно, что для пуассоновского процесса закон распределения длительности интервалов времени между последовательными отказами является экспоненциальным с плотностью распределения вероятностей вида Р(тД) = где переменная т - время между последовательными отказами. С параметром X связано среднее время между отказами = 1/Л. В терминах среднего времени между отказами

плотность распределения г имеет вид Дт,7^) = (1/7^,)в""7*'. Статистическая

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

подтвердившую принятую гипотезу об экспоненциальном распределении. На рис. 2 представлена гистограмма распределения длительности интервалов между отказами и теоретическая кривая плотности, подобранная по выборке. Из графика видно, что теоретическое и статистическое распределения хорошо согласуются между собой. Проверка гипотезы по критерию Пирсона X1 подтвердила гипотезу с уровнем значимости а ~ 0.05.

Для пуассоновского процесса при т = О получаем вероятность безотказной работы на интервале (0, t) : P(t) =■ P0(f) = е~*.

Рассматривая функцию риска как плотность вероятности отказа программы в момент времени t, при условии, что до этого момента отказов не было, получаем выражение для функции риска: R(t) = \/Тер.

Пцгоявнщш

Рис. 2. Гистограмма распределения интервалов между отказами

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

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

3; = 7У, f = i,2.....где

7]—средний период проявления /-ой ошибки;

—неизвестный средний период проявления самой частой ошибки; а— параметр геометрической модели, значение которого неизвестно; ЛГ— общее количество ошибок, оставшихся в системе к началу комплексной отладки системы (также неизвестное). Параметр модели а определяется исходя из фактического начального времени безотказной работы системы (времени наработки на отказ). Исходя из соотношения для среднего начального времени наработки на отказ

= 1/21/3;, получим: Т„т - ?;/|>".

На рис. 3 представлен фрагмент геометрической модели распределения средних периодов проявления ошибок 7)(в часах).

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

N

имеет место соотношение: = / 2 а'* ■

¡«1+1

Рис. 3. Геометрическая модель распределения средних периодов проявления ошибок

Т& " — €С )

Преобразуя его, получим: = д*-') ' '==0>1>2>*->ЛГ-'-

Положим ЛГ-»«>, тогда 7,гр(/) = 7^(а-1)й'. При / = 0, т.е. в начале

отладки, когда не устранено еще ни одной ошибки, начальное среднее время наработки на отказ равно: 7^(0) = (а -1). Тогда формула для среднего времени наработки на отказ после устранения части ошибок может быть представлена в виде: 7^,(/) =2^,(0)а', / = 1,2,,..,ЛГ. Если считать, что начальное среднее время наработки на отказ известно, то остается один неизвестный параметр а, который необходимо определить. В работе предложен метод оценки неизвестного параметра а по данным о прогонах системы.

Пусть ц =ХрО]Х~>тт~ оценхи времени наработки на отказ

по результатам т прогонов. В предположении нормальности распределения

этих оценок функция правдоподобия имеет вид: ■

т 1 -А^-^«!»'"

Перейдем к логарифму функции правдоподобия и приравняем производные нулю:

ва

Тогда оценка максимального правдоподобия параметра 7| имеет вид: .; 7!=^_ 1 *-о __

1-0 «.О

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

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

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

При построении таких моделей будем исходить из следующих предположений: ...

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

2, Для обнаружения и локализации причины программного отказа - (ошибки) требуется некоторое число т его проявлений. При этом устранение ошибки возможно с некоторой вероятностью Рн, тем большей, чем больше величина т; ; ' 3. Величина т является случайной величиной, распределенной по закону Пуассона с параметром (1 - среднее число нримллений

' ошибки, необходимое для ее устранения: Рн (ц) = (ц" ¡т \)е~", т = 0, ■■■ 1,2,....

В рассматриваемом случае вероятность устранения одиночной ошибки за т проявлений при среднем числе fi проявлений, необходимых для ее устранения, совпадает с функцией распределения Пуассона:

Исходя из принятой модели, вероятность Рг(т,г | Г)по крайней мере т-кратного проявления ошибки на некотором временном интервале длительности t может быть определена следующим образом;

Рг(т,11Т) -1 fit.

(-0

Таким образом интегральная вероятность локализации и устранения ошибки со средним периодом ее проявления Т за время отладки t описывается многомерной функцией: P{m,t | ц,Г) Py(m | ц)Р5{от,/1Т).

На рис.4 представлен вид этой функции для отношения t/T, также варьируемого от 4 до 10. По оси абсцисс отложены значения параметра m -числа проявлений ошибки. Очевидно, что с ростом отношения t/T максимум вероятности локализации и устранения ошибки возрастает, асимптотически приближаясь к единице.

-■!■■■-У

......- - \ ; --;■■

■ Л ■•.: Ч ч

Рис. 4, Вероятности локализации и устранения ошибки со средним периодом ее проявления Гза время I, ц = 5.

На основе соотношений, описывающих поведение модели процесса тестирования и отладки ПО, построены детерминированная и рандомизированная модели.

Суть детерминированной модели заключается'в том, что из всего множества ошибок, которые должны быть устранены для обеспечения требуемого значения наработки на отказ, в первую очередь выбираются наиболее редко проявляющиеся ошибки. Все более частые ошибки (с меньшим периодом проявления) будут устранены в среднем за меньшее время, чем эти наиболее редкие ошибки. Таким образом, среднее время наработки на отказ определяется следующим соотношением:

^(0-тЛ- -

Суть рандомизированной модели заключается в учете всех вероятностей

устранения ошибок при заданной продолжительности отладки и расчете на их основе среднего времени наработки на отказ, которое имеет вид:

Ът—л—1-.

м

На рис, 5 представлен график зависимости среднего времени наработки на отказ от числа устраненных ошибок для детерминированной и рандомизированной моделей.

Рис, 5, Зависимости среднего времени наработки на отказ от числа устраненных ошибок

Рис .6. Зависимость времени наработки на отказ от продолжительности отладки системы при наличии аномальной ошибки

В реальной практике иногда возникают ситуации так называемых «аномальных» ошибок, которые не могут быть устранены в течение долгого времени, К таким ошибкам относятся, в частности, ошибки в аппаратной части системы, например, неверное выполнение команды в ЭВМ, проявляющееся в определенных ситуациях, не встречавшихся при отладке соответствующих микропрограмм машины. Несмотря на многочисленные ' проявления, такие ошибки не удается локализовать в течение долгого времени. Иногда число проявлений ошибки может достигать многих десятков и даже сотен. На рис.6 представлена ситуация «аномальной» ошибки. Ошибка со средним периодом 12.8 часа была устранена через 1900 часов отладки системы, т.е. для ее устранения потребовалось около 150

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

Наряду с оценкой надежности по средней наработке на отказ, возможно, оценить надежность системы по интенсивности устранения ошибок в процессе отладки системы. Для этого необходимо построить распределение числа устраненных ошибок на последовательных интервалах времени. Это распределение можно вывести на основе вышеописанных соотношений. Предположим, что для устранения ошибки требуется не менее т ее проявлений. Рассмотрим некоторый промежуток времени (О,/), Для ошибки со средним периодом проявления Т, вероятность ее устранения за время / вычисляется по формуле:

/«я Jl

Тогда среднее число устраненных ошибок, т.е. проявившихся в среднем не менее т раз на интервале (0,/), равно сумме вероятностей устранения каждой ошибки с периодом Тп Эта величина может быть

вычислена следующим образом:

»-«(-а У' „

Расчетные и экспериментальные зависимости для этих величин при различных значениях параметра приведены на рис.7. Шаг по времени составляет »250 часов, что соответствует примерно полутора месяцам работы при 8-часовом рабочем дне.

Рис.7. Распределение числа устраненных ошибок по интервалам времени N=200, /*=5

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

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

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

Рис. 8. Линейное прогнозирование среднего времени наработки на отказ по результатам промежуточных прогонов системы.

Предположим, что в моменты времени выполнены прогоны системы, в ходе которых оценены времена наработки на отказ тп где 1=1,2,...,и, а п-число прогонов системы. Будем строить прогноз в виде линейной функции у = ат + Ь, где а и Ъ - параметры прогноза. В соответствии с методом наименьших квадратов подберем значения параметров а и Ь так, чтобы минимизировать функцию:

и

Приравняв нулю производные дФ(«,6)/За = 0 и 8Ф(а,Ь)/дЬ-0 и ретив соответствующую систему линейных уравнений, найдем оценки параметров атлЬ:

а =

Я I н п

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

через 30, 45, 60 и т.д. часов. Фактическое время наработки на отказ, достигнутое через 230 часов отладки, составило 1,9 часа. Из рис. 8 следует, что имеет место сходимость прогнозной оценки к истинному значению.

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

В диссертационной работе рассматриваются два типа информационных систем: мультипроцессорные - системы, в которых компьютеры используют память совместно, и мультикомпьютерные — системы, в которых компьютеры работают каждый со своей памятью. Изложенные в работе принципы расчета надежности для мультихомпьютерных систем некоторых типов позволяют предложить подход к проектированию информационных систем с учетом требований по надежности их функционирования.

На рис. 9 представлены зависимости среднего времени наработки на отказ, полученные для трех систем с объемом программного обеспечения V = 25К, 50К и 100К, или остаточного числа ошибок N = 50, 100 и 200 соответственно.

, Рис. 9. Зависимость времени наработки на отказ от продолжительности отладки при разном объеме ПО

Подтверждением справедливости результатов, представленных на рис. 9, являются результаты имитационного моделирования. Моделировалось разбиение интегрированной системы, реализованной на одной ЭВМ, на две ЭВМ, решающих независимые задачи. Объем ПО в интегрированной системе составлял 100^ слов, а при разделении задач на две ЭВМ - по 50ЛГ слов в каждой. Соответственно, число ошибок в централизованной системе равно 200, а при разделении на две ЭВМ - по 100 ошибок в каждой ЭВМ, Ошибки распределены по ЭВМ случайным образом с равной вероятностью. На рис. 10 представлены зависимости усредненного по двум ЭВМ времени наработки на отказ и времени наработки на отказ для интегрированной системы.

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

разбиваются на непересекающиеся кластеры задач так, чтобы

и

5 = = 1,2,...,и.

м

7м * |мы

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

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

выходов задачи и п = 0 при iФ ). После выполнения такого разбиения оцениваются объемы V, программного обеспечения каждого кластера / = 1,2,.,.,п1 и рассчитываются прогнозные оценки показателей надежности -вероятности Р, безотказного функционирования в течение времени / или средние времена Т, наработки на отказ, для заданного значения продолжительности отладки системы. Величины Т% вычисляются на основе логической структуры кластера с учетом резервирования отдельных модулей. На рис. 11 приведен пример системы разбитой на две подсистемы (кластера) 51, и содержащих 3 и 4 вычислительных модуля

соответственно. В силу независимости кластеров задач среднее время наработки на отказ для всей системы Я составит:

1

и

ы Л

Рис.11. Пример декомпозиции системы на кластеры

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

Укрупненная структурная схема разработанного инструментального комплекса представлена на рис.12. В состав комплекса входят подсистемы:

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

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

• математического и имитационного моделирования потоков ошибок и процессов устранения ошибок на основе результатов глав 2 и 3 диссертации;

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

Рис. 12. Укрупненная структурная схема инструментального комплекса

В заключении сформулированы основные "научные ■ и практические рфультаты работы, полученные автором. * ^;

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

2. Разработаны математическая и имитационная модели процессов тестирования и отладки ПО с учетом размера программной системы, квалификации программистов л вероятностного характера процесса устранения ошибок.

3. Предложена методика расчета продолжительности тестирования и

отладки ПО для достижения заданных значений показателей надежности системы.

4. На основе разработанных моделей выполнены расчеты надежностных характеристик, подтвержденные экспериментальными данными о функционировании реальных систем.

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

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

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Лисс, В. А. Математические модели надежности программного обеспечения распределенных систем / В. А. Лисс // Известия СПбГЭТУ «ЛЭТИ». Сер. «Информатика, управление и компьютерные технологии»,— 2005 — Вып. 2,— С. 26-32.

2. Лисс, В. А. Прогнозирование надежности программного обеспечения сложных вычислительных систем на основе математических моделей / В. А. Лисс //Международная конференция по мягким вычислениям и измерениям — SCM 2005: Сб. докл.; г. Санкт-Петербург, 27-29 июня 2005 г.- СПб, 2005,- С. 131-134.

3. Лисс, В. А. Прогнозирование надежности программного обеспечения в процессе тестирования/ В.А. Лисс// Международная конференция по мягким вычислениям и измерениям — SCM 2006: Сб. докл.; г. Санкт-Петербург, 27-29 июня 2006 г.- СПб, 2006.- С. 201-203.

4. Лисс, В.А. Математическая модель распределения среднего времени наработки программного обеспечения на отказ для множественных источников программных отказов/ В.А. Лисс // Теоретические и прикладные вопросы современных информационных технологий ТиПВСИТ'2006: Сб. докл. 7-ой Всеросс. науч.-техн. конф., г. Улан-Удэ, 24-30 июля 2006 г. - Улан-Удэ, 2006.- С. 192-196.

Подписано в печать 10.10.2006. Формат 60*84/16

ГУпгЛиТЮчЛ О пуп\ппгл «титч/иоч . . I -1 V .-т-. в шлЛтМ^ии 1А А

Печать ризо графическая. Заказ № 1/1010. П. л. 1.0. Уч.-иаа. л. 1.0. "Пфаж 100 экз.

ЗАО «КопиСервис» Адрес юр,; 194017, Санкт-Петербург Скобелевский пр.,д, 16. Адрес факт,: 197376, Санкт-Петербург, ул. Проф, Полова, д. 3, тел.: (812)327 5098

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

Содержание.

Введение.

Глава 1. Анализ проблемы прогнозирования надежности информационных систем

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

1.2 Модель Джелинского-Моранды.

1.3 Простая экспоненциальная модель.

1.4 Модель Шика-Уолвертона.

1.5 Модели Липова.

1.6 Геометрические модели.

1.7 Модель Шнейдевинда.

1.8 Модели, основанные на методе «посева» ошибок.

1.9 Выводы.

Глава 2. Математические модели потока отказов программного обеспечения систем реального времени.

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

2.2 Математическая модель распределения среднего времени наработки на отказ для множественных источников программных отказов.

2.3 Выводы.

Глава 3. Математические модели надежности программного обеспечения систем реального времени.

3.1 Математическая модель процесса отладки программного обеспечения для одиночного источника отказов.

3.2 Математическая модель процесса отладки для множественных источников программных отказов.

3.3 Прогнозирование надежности программного обеспечения в процессе тестирования и отладки.

3.4 Методика прогнозирования продолжительности тестирования и отладки ПО

3.5 Выводы.

Глава 4. Прогнозирование надежности программного обеспечения информационных систем различного типа.

4.1 Структурная организация информационных систем.

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

4.3 Надежность мультикомпьютерных систем конвейерного типа.

4.4 Надежность мультикомпьютерных систем с резервированием.

4.5 Выводы.

Глава 5. Инструментальный программный комплекс контроля и прогнозирования надежности.

5.1 Укрупненная структурная схема инструментального комплекса.

5.2 Описание технических решений инструментального комплекса.

5.3 Иллюстрация применения инструментального комплекса.

5.4 Выводы.

Введение 2006 год, диссертация по информатике, вычислительной технике и управлению, Лисс, Владимир Александрович

Архитектура современных вычислительных и информационно-управляющих систем реального времени является, как правило, функционально распределенной. Она характеризуется многопроцессной организацией вычислений, при которой процессы реализуются параллельно и распределяются по нескольким процессорам (ЭВМ). Основным средством реализации функций обработки информации и управления в таких системах является программное обеспечение (ПО), объем которого часто составляет десятки и сотни тысяч строк текста. Создание ПО такого объема возможно только коллективами программистов, работающих совместно в течение всего жизненного цикла системы. Длительность жизненного цикла систем реального времени, включающего все фазы разработки и сопровождения, составляет от нескольких месяцев до нескольких лет.

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

Многочисленные научные публикации и накопленный опыт разработки программных систем в России и за рубежом свидетельствуют о том, что в начальных фазах жизненного цикла системы надежность программного обеспечения является крайне низкой, что вызывает многочисленные инциденты (отказы, остановы, зависания вычислительного процесса) при функционировании системы [66,67,74].

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

Считается, что в начальных фазах жизненного цикла системы в программах содержится в среднем 1-3 ошибки на 1000 строк текста, приводящих к многочисленным инцидентам вычислительного процесса [65,68]. В связи с этим время непрерывной работы системы в начальных фазах жизненного цикла составляет от нескольких минут до нескольких десятков минут. По мере устранения ошибок ПО частота проявления инцидентов уменьшается, и надежность функционирования системы возрастает. Однако достаточно уверенно прогнозировать уровень надежности функционирования системы весьма трудно. Проблема заключается в том, что в настоящее время отсутствуют научно обоснованные методы и модели прогнозирования надежности ПО, пригодные для практического применения.

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

- какова продолжительность отладки ПО, обеспечивающая получение заданных значений показателей надежности?

- как зависит надежность решения задачи от времени ее решения и от продолжительности отладки?

- как зависит продолжительность отладки ПО от квалификации программистов?

- как связаны надежность решения задачи и время наработки на отказ ПО?

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

Для достижения поставленной цели решены следующие задачи:

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

2. На основе анализа статистики функционирования информационных систем реального времени предложены и обоснованы математические модели потока отказов программного обеспечения для одиночного и множественных источников отказов.

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

4. Разработана имитационная модель, подтвердившая корректность предложенных математических моделей надежности ПО.

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

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

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

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

9. Результаты диссертационной работы использованы при разработке гидроакустических систем МГК-520.6, МГК-400ЭМ-03.

Объектом исследования данной работы являются информационные системы реального масштаба времени.

Предметом исследования являются процессы тестирования и отладки программного обеспечения и методы прогнозирования его надежности.

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

Научной новизной обладают следующие результаты исследования:

1. Геометрическая модель, описывающая распределение средних значений периодов проявления ошибок ПО;

2. Статистическая модель потока отказов ПО, вызванных множественными источниками ошибок;

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

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

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

6. Структура системы сбора и обработки данных о надежности в процессе отладки программного обеспечения.

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

Результаты диссертационного исследования внедрены в процессы проектирования гидроакустических систем в ОАО «Концерн «Океанприбор» при создании ГАК МГК-520.6 и ГАК МГК-400ЭМ-03.

Основные положения, результаты исследований и выводы, содержащиеся в диссертационной работе, обсуждались в широком кругу специалистов, ученых и разработчиков распределенных систем в ОАО «Концерн «Океанприбор», в ОАО «НИЦ ЭТУ», на кафедре МО ЭВМ СПбГЭТУ «ЛЭТИ», а также на научно-технических конференциях:

1. VIII Международная конференция по мягким вычислениям и измерениям SCM-2005, г. Санкт -Петербург.

2. IX Международная конференция по мягким вычислениям и измерениям SCM-2006, г. Санкт -Петербург.

3. Конференция «Технологии Microsoft в теории и практике программирования, г. Санкт -Петербург, 2006 г.

4. 7-ая Всероссийская научно-техническая конференция «Теоретические и прикладные вопросы современных информационных технологий» ТиПВСИТ '2006, г. Улан-Удэ.

Основные результаты диссертационной работы отражены в 4 печатных научных трудах [69 - 72].

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

Результаты работы реализованы при создании гидроакустических систем и комплексов различного назначения в ОАО «Концерн «Океанприбор», а также внедрены в учебный процесс в Санкт-Петербургском государственном электротехническом университете «ЛЭТИ».

Заключение и выводы

В процессе выполнения диссертационной работы получены следующие научные и практические результаты:

1. На основе обработки статистики функционирования реальных гидроакустических систем обосновано экспоненциальное распределение интервалов времени между отказами ПО с параметром 1 /Т ; в качестве потока отказов принят пуассоновский поток с параметром Я = \/Тср.

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

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

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

5. На основе полученного выражения для вероятности, предложена рандомизированная модель прогнозирования надежности ПО в процессе его тестирования и отладки.

6. Исследовано поведение прогнозных оценок в зависимости от объема ПО, квалификации программистов, участвующих в отладке ПО и при наличии «аномальных» ошибок.

7. Наряду с оценкой надежности по средней наработке на отказ, предложена методика оценивания надежности системы по интенсивности устранения ошибок ПО.

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

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

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

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

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

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

Библиография Лисс, Владимир Александрович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Angus J.E., Schafer R.E., Suckert A. Software reliability model validation. In: PARMS, 1980, p. 191-199.

2. Bates M.D. A practical approach toward achieving software reliability.1.: Proc. IEEE National Aerospace and Electron. Conf., 1984, vol.2, p.l224-1228

3. Bhargard B. Software reliability in real-time systems. Proc. of IFIP Intern. Computer Conf., 1981, p.297-315.

4. Bihari Т.Е., Schwan K. A comparison of four adaptation algorithms for increasing the reliability of real-time software. In: Real-Time Systems Symp.,1988, v.232-241.

5. Brown J.R., Lipow M. Testing for software reliability. -In: ICRS75, p.518-527.

6. Everett W.W., Musa J.D. A software reliability engineering practice. Computer, 1993, v.26, N 3, p.77-79.

7. Hoang Pham Software Reliability. Springer-Verlag. ISBN: 981-3083-840, 2000.

8. Lipow M. Some variation of a Model for Software Time-to-Failure

9. TRW Systems Group. Correspondence ML-74-2260, 19-21 Aug., 1974.

10. Lipow M. Number of faults per line of code. TSE, 1982, v.8, N 5, p.437-439.

11. Lipow M. Prediction of software errors. JSS, 1979, v.l, N 1, p.71-75.

12. Lyu M.R. Handbook of Software Reliability Engineering. Computer Society Press. ISBN: 0-07-039400-8. 1996.

13. Mills H.D., "On the statistical validation of computer programs", in: Software Productivity, Little, Brown, Boston, 1983.

14. Mills H.D., "On the Statistical Validation of Computer Programs," IBM Federal Syst. Div., Gaithersburg, MD, Rep. 72-6015,1972.

15. Moranda P.B. Probability-Based Models for the Failures During Burn

16. Phase Joint National Meeting ORSAII Tims. Las Vegas; N.Y.; Nov., 1975.

17. Moranda P.B., Jelinsky J. Final Report of Software Reliability Study.-McDonnell Douglas Astronautic Company. MDC Report №63921. Dec. 1972.

18. Moranda P.B., Jelinsky J. Software Reliability Research // Statistical Computer Performance Evaluation / Ed. by W. Freiberger. -N.Y.:Academic, 1972.

19. Moranda P.B., Jelinsky J.Applications of a Probability // Based Model to a Code Reading Experiment, April 30 May 2,1973. - P. 73-83.

20. Musa J.D. Software reliability data. DACS, RADC. New York, 1980.

21. Musa J.D. Software Reliability Engineering: More Reliable Software, Faster Development and Testing by. McGraw-Hill. ISBN: 0-07-913271-5,1999.

22. Musa J.D. Software reliability measurement. JSS, 1980, v.l, N 3, p.223-241.

23. Musa J.D., Janino A. Software reliability modelling accounting for program size variation due to integration or design changes. - PER, 1981, v. 10, N 2, p.16-25.

24. Nelson E.C. Estimation software reliability from test data // Microelectronics and reliability. 1978. - Vol. 17. - P.61-74.

25. Nelson E.C. Software reliability FTC-5 Internat. Symp. Fault Tolerant Computing. Paris; N.Y., 1975.-P.24-28.

26. Norman F. Schneidewind: Body of Knowledge for Software Quality Measurement. IEEE Computer 35 (2): 77-83,2002.

27. Norman F. Schneidewind: Software quality control and prediction model for maintenance. Ann. Software Eng. 9: 79-101,2000.

28. Norman F. Schneidewind: Software Quality Maintenance Model. ICSM 1999: 277-286.

29. Norman F. Schneidewind: Software Reliability Model with Optimal Selection of Failure Data. IEEE Trans. Software Eng. 19(11): 1095-1104, 1993.28.0benza R. Rate monotonic analysis for real-time systems. Computer, 1993, v.26, N 3, p.73-74.

30. Peled D.A.Software Reliability Methods. Springer-Verlag. ISBN: 0-387-95106-7,2001.

31. Rudner, В. Seeding/tagging estimation of software errors: Models and estimates. Rome Air Development Centre, Rome, NY, RADC-TR-77-15, 1977.

32. Shick C.J., Wolwerton R.W. Achieving reliability in large scale software system // Proc. of the Annual Reliability and Maintainability Symp. Los Angeles, 1974 -P.302-319.

33. Shick C.J., Wolwerton R.W. Assessment of Software Reliability // Proc. 11-th Annual Meeting of the German Operation Research Society. Hamburg, Germany, 6-8 Sept., 1972.

34. Sommerville I., Software Engineering, 7 edition: Addison-Wesley, 2004.

35. Авен О.И., Турин H.H., Коган Я.А. Оценка качества и оптимизация вычислительных систем. М.: Наука, 1982.

36. Айрленд Э.А. Обеспечение качества и надежности сложных электронных систем: Аппаратные и программные средства. (Обзор).1. ТИИЭР, 1988, N 1, с.4-20.

37. Александровская J1.H., Афанасьев А.П., Лисов А.А. Современные методы обеспечения безотказности сложных технических систем. М.: Логос, 2003.

38. Архангельский Б.В., Черняховский В.В. Поиск устойчивых ошибок в программах. М.: РиС, 1989.

39. Афонин В.А., Ладыгин И.И. Построение отказоустойчивых вычислительных систем. М.: Изд. МЭИ, 1987.

40. Байхелы Ф., Франкен П. Надежность и техническое обслуживание. Математический подход. М.: Радио и связь, 1988.

41. Безбородое Ю.М. Индувидуальная отладка программ. М.: Наука, 1982.

42. Благодатских В.А. и др. Уч.: Экономика, разработка и использование программного обеспечения ЭВМ. М.: Финансы и статистика, 1995.

43. Борзов Ю.В. Методы тестирования и отладки программ ЭВМ. Рига: изд-во Латв. ун-ва, 1980.

44. Боэм Б., Браун Дж., Каспар X. Харакгерисшки качества программного обеспечения. М.: Мир, 1981.

45. Бутаков Е.А. Методы создания качественного программного обеспечения ЭВМ. М.: Энергия, 1984.

46. Вентцель Т.С., Овчаров J1.A. Теория случайных процессов и её инженерные приложения. -М.: Высшая школа, 2000.

47. Вентцель Е.С. Теория вероятностей, М.: Высшая школа, 1998.

48. Власов В.Е. Классификация методов обнаружения ошибок в системах реального времени. В кн.: Вопросы управления в сложных технических системах. - М., 1992, с.139-146.

49. Волков Ю.М. Некоторые вопросы надежности распределенных вычислительных систем. В кн.: Вычислительные системы. Вып.73. - Н., 1978, с.122-131.

50. Вопросы кибернетики. Вып. 160. Отказоустойчивые параллельные вычислительные системы реального времени. М., 1990.

51. Гласс Р. Руководство по надежному программированию. М.: Финансы и статистика, 1983.

52. Голинкевич Т.А. Прикладная теория надежности. -М.: Высшая школа, 1977.

53. Головкин Б.А. Надежное программное обеспечение. (Обзор). -ЗР, 1978, N 12, с.3-6.

54. Дружинин Г.В. Методы оценки и прогнозирования качества. М.: РиС, 1982.

55. Дружинин Г.В. Надежность автоматизированных систем. М.: Энергия, 1977.

56. Ершов М.С. Основы теории надежности. -М.: ГАНГ им. И.М. Губкина, 1993.

57. Иыуду К.А. Надежность, контроль и диагностика вычислительных машин и систем. М.: Высшая школа, 1989.

58. Кинг Д. Создание эффективного программного обеспечения. М., "Мир", 1991.

59. Копп В.Я., Оберин Ю.Е., Песчанский А.И. Стохастические модели автоматизированных производственных систем с временным резервированием / Сев. ГТУ,-Севастополь, 2000.

60. Корнеев В.В. Параллельные вычислительные системы. М.: Москва, 1999.

61. Корнеев В.В., Киселев А.В. Современные микропроцессоры. М.: Нолидж, 2000.

62. Корнеева Т.К. Толковый словарь по метрологии, измерительной технике и управлению качеством. -М.: Русский язык, 1990.

63. Крамер Г. Математические методы статистики.-М.:Мир, 1975.

64. Кузнецов О.П., Адельсон-Вельский Г.М. Дискретная математика для инженеров. -М.: Энергия, 1980.

65. Лескин А.А., Мальцев П.А., Спиридонов A.M. Сети Петри в моделировании и управлении. Л.: Наука, 1989,

66. Липаев В.В. Качество программного обеспечения. М.: Финансы и статистика, 1993.

67. Липаев В.В. Надежность программного обеспечения АСУ, М.: Энергоиздат, 1981.

68. Липаев В.В. Надежность программных средств. -М.: Синтег, 1988.

69. Липаев В.В. Тестирование программ. М.: РиС, 1986. - 296с.

70. Лисс, В. А. Математические модели надежности программного обеспечения распределенных систем/В. А. Лисс//Известия СПбГЭТУ «ЛЭТИ». Сер. Информатика,- 2005 Вып. 2 - С. 26-32.

71. Лисс, В. А. Прогнозирование надежности программного обеспечения в процессе тестирования/ В.А. Лисс// Международная конференция по мягким вычислениям и измерениям SCM 2006: Сб. докл.; г. Санкт-Петербург, 2729 июня 2006 г.- СПб, 2006 - С. 201-203.

72. Лоигботтом Р. Надежность вычислительных систем. М.: Энергоатомиздат, 1985.

73. Майсре Г. Надежность программною обеспечения. М.: Мир, 1980. 360с.

74. Майерс Г.Д. Искусство тестирования программ. М.: Финансы и статистика, 1982.

75. Максимов Ю.Д. Вероятностные разделы математики,- СПб,: Иван Федоров, 2001.

76. Мартин Дж, Программирование для вычислительных систем реального времени. М., "Наука", 1975.

77. Мизин И.А., Богатырев В.А., Кулешов А.П. Сети коммутации пакетов. М.: Радио и связь. 1986.

78. Надежность и эффективность в технике: Справ-к! Ред. сов. Лвлуевский B.C. и др. М.: Машиностроение, 1986.

79. ВО.Ошрсйковскин В.А. Теория надежноеги. -М.: Высшая школа, 2003.8!.Пальчуте В.П., Юсупов P.M. Оценка надежности программного обеспечения. С.-Петербург.: Наука. 1994.

80. Питерсон Дж. Теория сетей Петри и моделирование систем. М.: Мир, 1984

81. Политехнический словарь. Акустика, вычислительная техника., диагностика, измерения и смертельная гехника, неразрушающий Ktmipo.ib. мсфолшия. управление качеством. Термины и определения. -М., 1999.

82. Таненбаум X ван Стеен М. Распределенные системы. Принципы и иарадшмы. С11б.:Г1итер, 2003.

83. Таннснбаум Э. Современные операционные системы. СПб.: Пктер, 2002.

84. Тейер Т., Липов М., Нельсон Э. Надежность программного обеспечения. М.: Мир. 1981.

85. Ушаков И.Л. Вероятностные модели надежности информаиионно-вычислительных систем. М.: CP, 1991.

86. Ушаков И.А. Оценка, прогнозирование и обеспечение надежности сетей ЭВМ. М.: Машиностроение, 1989.

87. Черкесов Г.Н. Надежность аппаратно-программных комплексов. -СПб.:Питер, 2005.

88. Черкесов Г.Н. О расчете надежности обслуживаемых систем при ограниченном ЗИП с периодическим пополнением запасов // Надежность.-2003 .-№2(5).-С. 16-34.

89. Черкесов Г.Н. Проектирование систем контроля с учетом надежности.-М.:3нание, 1989.

90. Черкесов Г.Н., Можаев А.С. Логико-вероятностные методы расчета надежности структурно-сложных систем. -М.: Знание, 1991.93.1Пураков В.В. Надежность программного обеспечения систем обработки данных. М.: Статистика, 1981.

91. Янг С. Алгоритмы и языки реального времени. М.: Мир, 1985.

92. Ястребенецкий М.А., Иванова Г.М. Надежность автоматизированных систем управления техническими процессами. М.: Энергоиздат,1989.