WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!

Pages:     |
|

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

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

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

Специальность: 05.13.11 – Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

А В Т О Р Е Ф Е Р А Т

диссертации на соискание ученой степени

кандидата технических наук

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

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

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

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

Официальные оппоненты:
доктор технических наук, профессор Водяхо А.И.

кандидат технических наук, доцент Доронин Е.М.

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

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

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

Автореферат разослан «____» ____________ 2006 г.

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

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

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

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

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

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

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

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

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

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

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

  1. Геометрическая модель, описывающая распределение средних значений периодов проявления ошибок ПО, и модель потока отказов на ее основе.
  2. Математическая и имитационная модели надежности ПО, учитывающие вероятностный характер процесса отладки ПО, размер программной системы и квалификацию коллектива программистов, участвующих в разработке ПО.
  3. Методика расчета продолжительности отладки системы, обеспечивающей достижение заданных значений показателей надежности ПО.
  4. Алгоритм прогнозирования надежности ПО на основе оценок среднего времени наработки на отказ по результатам промежуточных прогонов системы.
  5. Подход к проектированию ПО распределенных информационных систем реального времени с учетом надежностных характеристик, основанный на разбиении на непересекающиеся кластеры задач.
  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 наименований. Основная часть работы изложена на 95 страницах машинописного текста. Работа содержит 47 рисунков.

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

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

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

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

,

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

(1)

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

(2)

Учитывая (2), имеем, следовательно,

или

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

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

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

Из теории вероятностных распределений известно, что для пуассоновского процесса закон распределения вероятностей имеет вид где параметр – среднее число отказов в единицу времени; t – длительность интервала наблюдения; – вероятность наступления m отказов на интервале.

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

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

Для пуассоновского процесса при получаем вероятность безотказной работы на интервале (0, t) :.

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

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

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

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

,, где

– средний период проявления i-ой ошибки;

Pages:     |
|



© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.