автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Модели и методы оценки надежности специализированного программного обеспечения систем обработки информации
Автореферат диссертации по теме "Модели и методы оценки надежности специализированного программного обеспечения систем обработки информации"
На правах рукописи
Титов Алексей Владимирович
МОДЕЛИ И МЕТОДЫ ОЦЕНКИ НАДЕЖНОСТИ СПЕЦИАЛИЗИРОВАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ
Специальность 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата технических наук
005050585
1 4 МАР 2013
Санкт-Петербург - 2013
005050585
Работа выполнена в Федеральном государственном бюджетном учреждении науки Санкт-Петербургском институте информатики и автоматизации Российской академии наук (СПИИРАН)
Научный руководитель: кандидат технических наук,
доктор экономических наук, профессор Верзилин Дмитрий Николаевич
Официальные оппоненты:
доктор технических наук, профессор, заведующий кафедрой вычислительных систем и информатики федерального государственного бюджетного образовательного учреждения высшего профессионального образования Государственного университета морского и речного флота имени
адмирала С.О.Макарова Марлей Владимир Евгеньевич
доктор технических наук, доцент, профессор кафедры компьютерной математики и программирования федерального государственного автономного образовательного учреждения высшего профессионального образования Санкт-Петербургского государственного университета
аэрокосмического приборостроения Бураков Вадим Витальевич
Ведущая организация:
Государственное образовательное учреждение высшего профессионального образования Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, г. Санкт-Петербург (СПб НИУ ИТМО)
Защита состоится «02» апреля 2013 г. в 16:00 на заседании диссертационного совета Д.002.199.01 при Федеральном государственном бюджетном учреждении науки Санкт-Петербургском институте информатики и автоматизации Российской академии наук по адресу: 199178, Санкт-Петербург, В.О., 14 линия, 39.
С диссертацией можно ознакомиться в библиотеке Федерального государственного бюджетного учреждения науки Санкт-Петербургском институте информатики и автоматизации Российской академии наук.
Автореферат разослан «1» марта 2013 г. Ученый секретарь
диссертационного совета Д.002.199.01
к.т.н.
Нестерук Филипп Геннадьевич
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы исследования. Анализ надежности программного обеспечения (ПО) систем обработки информации - сложная комплексная проблема, решение которой базируется на методах, получивших развитие в последние сорок лет. Эти методы опираются как на фундаментальные результаты теории надежности технических систем, так и на специальные модели процессов исправления программных ошибок. В настоящее время можно вполне обоснованно говорить о существовании теории надежности программного обеспечения. Вместе с тем, необходимы дополнительные исследования, направленные на реализацию системного подхода к анализу надежности программного обеспечения на этапах тестирования, опытной эксплуатации и сопровождения.
В частности, требуют решения следующие проблемы: анализ и оценка снижения интенсивности отказов в результате исправления программных ошибок и изменения условий эксплуатации компонентов системы обработки информации; использование статистических данных об отказах программного обеспечения в изменившихся условиях его эксплуатации и после исправления отдельных ошибок; учет влияния особенностей эксплуатации копий программного обеспечения на интенсивность отказов системы обработки информации; объединение статистических данных о программных сбоях при эксплуатации копий программного обеспечения в различных условиях на этапе сопровождения при редких сбоях.
Приведенные положения подтверждают актуальность исследований, направленных на устранение пробелов в теории надежности программного обеспечения и в ее реализации на практике.
Цель работы - обоснование мероприятий по повышению надежности автоматизированных систем обработки информации на основе разработки и реализации новых математико-статистических моделей и методов оценки характеристик надежности специального программного обеспечения на этапах его тестирования, опытной эксплуатации и сопровождения.
Задачи исследования:
- провести анализ требований к качеству программного обеспечения систем обработки информации, определить основные характеристики качества и надежности специализированного программного обеспечения, оценка и анализ которых позволяет обосновать мероприятия по повышению надежности автоматизированных систем обработки информации;
- разработать метод оценки характеристик надежности программного обеспечения для этапа тестирования систем обработки информации, позволяющий оценивать время, необходимое для завершения тестирования;
- построить модель оценки надежности программного обеспечения системы обработки информации на этапе опытной эксплуатации, обосновывающую использование статистических данных об отказах программного обеспечения в изменившихся условиях его эксплуатации и после исправления отдельных ошибок;
- разработать методику оценки характеристик надежности программного обеспечения, предоставляющую возможность учитывать влияние особенностей
эксплуатации копий программного обеспечения на интенсивность отказов системы обработки информации;
- разработать методику оценки надежности программного обеспечения при редких отказах, характерных для этапа сопровождения систем обработки информации;
- апробировать и верифицировать разработанные модели и методы оценки надежности программного обеспечения в системе обработки персональных данных Федерального медико-биологического агентства.
Методы исследования. При выполнении диссертационного исследования использовались методы системного анализа, методы теории программирования, методы математического и имитационного моделирования, методы математической статистики, методы дескриптивной статистики, дисперсионного анализа.
Объект исследования - процесс функционирования автоматизированной системы обработки информации.
Предмет исследования - математико-статистические модели, методы и методики оценки надежности специализированного программного обеспечения автоматизированных систем обработки информации.
Новые научные результаты, полученные лично автором и выдвигаемые для публичной защиты:
1. Комбинированный метод оценки характеристик надежности программного обеспечения систем обработки информации на этапе тестирования.
2. Байесовская модель надежности программного обеспечения, основанная на реализации повторных вероятностных распределений количества отказов программного обеспечения на последовательных интервалах времени различной длины и сопряженных распределений среднего количества отказов на этих интервалах.
3. Методика определения вероятностных характеристик отказов программного обеспечения на этапе опытной эксплуатации, предусматривающая построение последовательности интервалов времени и оптимальных, с точки зрения минимизации байесовского риска, вероятностных распределений среднего числа отказов, средней интенсивности отказов на построенных интервалах и среднего времени между отказами для текущего состояния программного обеспечения..
4. Методика объединения статистических данных о функционировании программного обеспечения модулей системы обработки информации с редкими отказами при сопровождении программных систем.
Научпая новизна работы состоит в следующем:
1. Предложен комбинированный метод оценки характеристик надежности программного обеспечения на этапе тестирования. В отличие от стандартного метода позволяет получить более точную оценку параметров модели надежности, за счет внесения и выявления искусственных ошибок в тексте программы. Метод позволяет оценить время, необходимое для завершения тестирования.
2. Предложена байесовская модель оценки надежности программного обеспечения и методика определения вероятностных характеристик отказов про-
граммного обеспечения на этапе опытной эксплуатации. В отличие от известных подходов к байесовскому оцениванию надежности, для подсчета количества отказов используется последовательность интервалов времени различной длительности и повторные вероятностные распределения числа отказов на интервалах. Используемый подход позволяет исключить дополнительные модельные допущения о зависимости параметров вероятностного распределения интенсивности отказов от времени. Оценивается влияние особенностей эксплуатации копий программного обеспечения на интенсивность отказов системы обработки информации. Обеспечивается использование статистических данных об отказах программного обеспечения в изменившихся условиях его эксплуатации и после исправления отдельных ошибок.
3. Предложена методика объединения статистических данных о функционировании программного обеспечения модулей системы обработки информации с редкими отказами на этапе сопровождения. Применение методики позволяет установить влияние условий эксплуатации на интенсивность отказов и получить более точные оценки характеристик надежности на этапе сопровождения.
Разработанные модели, методы и методики предоставляют решение актуальной научно-технической задачи обоснования мероприятий по повышению надежности автоматизированных систем обработки информации на основе разработки и реализации новых математико-статистических моделей и методов оценки характеристик надежности специального программного обеспечения на этапах его тестирования, опытной эксплуатации и сопровождения.
Обоснованность и достоверность научных положений, основных выводов и результатов диссертации обеспечивается за счет всестороннего анализа состояния исследований в данной области, подтверждается корректностью предложенных решений, а также апробацией основных теоретических положений диссертации в печатных трудах и докладах на всероссийских и международных научных конференциях, положительными итогами практического использования результатов диссертации в различных отечественных организациях.
Практическая ценность исследования заключается в разработке, апробации и верификации моделей, методов и методик анализа надежности специализированного программного обеспечения систем обработки информации. Комбинированный метод оценки характеристик надежности программного обеспечения на этапе тестирования позволяет получить более точную оценку параметров модели надежности, за счет внесения и выявления искусственных ошибок в тексте программы. Точность прогноза среднего времени наработки на отказ для текущего состояния программного обеспечения по данным экспериментальных исследований улучшена на 20%. Предложенный метод позволяет оценивать время, необходимое для завершения тестирования программного обеспечения, для требуемого уровня надежности ПО.
Использование разработанных байесовской модели оценки надежности программного обеспечения и методики определения вероятностных характеристик отказов программного обеспечения на этапе опытной эксплуатации позволяет ко-
личественно оценить влияние таких особенностей эксплуатации копий программного обеспечения, как квалификация пользователей, характеристики аппаратного обеспечения, частоту запросов данных, на интенсивность отказов системы обработки информации. Полученные оценки позволили обосновать мероприятия, направленные на повышение надежности автоматизированной системы обработки информации.
Применение предложенного алгоритма объединения статистических данных о функционировании программного обеспечения модулей системы обработки информации с редкими отказами на этапе сопровождения позволяет установить влияние условий эксплуатации на интенсивность отказов и повысить точность оценок характеристик надежности (по данным экспериментальных исследований на 15-20%).
Реализация результатов работы. Разработанный автором комбинированный метод оценки характеристик надежности программного обеспечения на этапе тестирования использован при отладке Системы защиты персональных данных Федерального медико-биологического агентства Российской Федерации (ФМБА России). Реализация указанного метода позволила сократить сроки тестирования системы на 10% по сравнению с плановыми.
Байесовская модель оценки надежности программного обеспечения и методика определения вероятностных характеристик отказов программного обеспечения, представленные в диссертационной работе использованы на этапе опытной эксплуатации системы «Документооборот» ФГУП «Научно-исследовательский центр информационных технологий экстремальных проблем». Применение указанных разработок позволило обосновать мероприятия по повышению надежности системы.
Байесовская модель оценки надежности программного обеспечения и методика определения вероятностных характеристик отказов программного обеспечения использованы в учебном процессе кафедры мониторинга и прогнозирования информационных угроз Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики позволило при подготовке магистров по направлению 090900 - Информационная безопасность по магистерской программе: Моделирование и прогнозирование информационных угроз. Реализация теоретических положений диссертации позволила повысить проблемность обучения и его направленность на формирование профессиональных компетенций выпускников.
Публикации и апробация работы. По теме диссертации опубликовано 8 научных работ, из них - 3 статьи в журналах, включенных в перечень ВАК Министерства образования и науки РФ. Основные положения, результаты исследований и выводы, содержащиеся в диссертационной работе, обсуждались в широком кругу специалистов, ученых и разработчиков систем обработки информации в ФГУП «Научно-исследовательский центр информационных технологий экстремальных проблем», на Международной научной школе «Моделирование и анализ безопасности и риска в сложных системах» (МАБР-2010), Санкт-
Петербург, 6-10 июля, 2010 г.; на Четвертой Всероссийской научно-практической конференции «Имитационное моделирование. Теория и практика» (ИММОД-2009), Санкт-Петербург 21-23 октября 2009 г., на научной сессии МИФИ-2008, Москва, 2008.
Структура и объем диссертации. Диссертационная работа состоит из введения, трех глав, заключения, списка литературы, включающего 143 наименований. Текст диссертации изложен на 145 страницах, включая 34 таблицы и 29 рисунков.
СОДЕРЖАНИЕ РАБОТЫ
Во введепии обоснована актуальность темы диссертационного исследования, изложены его цель и задачи. Сформулированы новые научные результаты, полученные лично автором и выдвигаемые для публичной защиты, обоснована научная новизна и практическая ценность исследования.
В первой главе выполнен обзор требований к обеспечению качества систем обработки информации, проанализированы стандарты качества программного обеспечения, основные показатели надежности программных средств, проанализированы методы оценки надежности программного обеспечения систем обработки информации.
Рассмотрены и проанализированы требования отечественных и зарубежных нормативно-методических документов в области качества программного обеспечения. Применение международных и российских стандартов, регламентирующие жизненный цикл программных средств и баз данных, является основой обеспечения качества систем обработки информации, однако требуется определить наиболее информативные характеристики качества программного обеспечения, оценки которых позволяют обосновать мероприятия по повышению надежности автоматизированных систем обработки информации.
Действующий в настоящее время международный стандарт 1БОЯЕС ГО1Б 25010:2010(Е) определяет восемь общих характеристик качества программного обеспечения, конкретизируемых тридцатью тремя частными характеристиками. Иерархия характеристик качества приведена на рис. 1.
Значительное количество рассматриваемых характеристик может претерпевать изменение в процессе опытной эксплуатации программного обеспечения. Как правило, по мере устранения программных ошибок и накопления опыта персонала, использующего программное обеспечение, надежность возрастает. На рис. 1 вся совокупность частных характеристик качества ПО разделена на 4 группы. К первой группе отнесены характеристики, подлежащие непосредственной оценке на основе методов, предлагаемых в настоящем исследовании: доступность, защита от ошибок пользователя. Ко второй группе отнесены характеристики, которые оцениваются косвенно: завершенность, восстанавливаемость, осваиваемость, тестируемость. В третью группу входят характеристики, оказывающие влияние на процесс изменения надежности: анализируемость, конфиденциальность, целостность, возможность трассировки событий. К четвертой группе относятся характеристики, исследование которых находится за рамками
работы. Зависимость характеристик проявляется в том, что значения одних характеристик оказывают влияние на процесс изменения значений других характеристик. Например, для повышения надежности программного обеспечения при его опытной эксплуатации значимы такие характеристики, как анализируемость, модульность, тестируемость, возможность трассировки.
Характеристики качества ПО
общие
Надежность Удобство экс- Функцио- Сопровож- Мобиль- Эффек- Совмес- Защи-
плуатации нальная даемость ность тивность тимость щенность
пригод-
ность
частные
✓ завер- •/ адекват- полнота •/ анали- адапти- ✓ вре- ✓ со- ■/ кон-
шенность ность пра- зируемость эуемость мяем- зместное фиденци-
У доступ- V привлека- вильность У моди- S на- кость лспользо- альность
ность тельность функ- фицируе- страивае- ✓ ре- зание •/ цело-
■/ отказо- ^ управляе- циональная мость иость сурсоем- S ком- стность
устойчивость мость адекват- модуль- S замено- кость тпекси- ■/ воз-
^ восста- защита ность ность способность S про- руемость можность
навливае- от ошибок возмож- изводи- трасси-
мость пользователя ность реин- тельность оовки
✓ осваивае- жиниринга событий
мость ^ тести- под-
узнавае- руемость линность
мость •/ дока-
^ доступ- зуемость
ность для лю- отбытий
дей с ограни-
ченными воз-
можностями
Рис. 1. Иерархия характеристик качества программного обеспечения по стандарту ISO 25010, 2011
В контексте настоящего исследования наибольший интерес представляет надежность, как общая характеристика качества, а также частные характеристики качества, оказывающие влияние на надежность.
Проведен выбор и моделирование показателей надёжности программного обеспечения при редких отказах. Рассмотрена ситуация редких отказах программного обеспечения, при которой среднее время между отказами может быть сопоставимо с продолжительностью наблюдения и даже существенно превышать ее. При редких отказах точечные оценки математического ожидания продолжительности безотказной работы программного обеспечения, полученные в резуль-
тате серии наблюдений, как отношение времени наблюдения к числу отказов, будут претерпевать значительные колебания. Более того, в случае, если за весть период наблюдения не зафиксировано ни одного отказа, то точечная оценка математического ожидания времени между отказами лишена смысла. Поэтому вместо точечных оценок математического ожидания времени между отказами целесообразно использовать доверительные интервалы. В рассматриваемой ситуации не применимы формулы расчета доверительных интервалов, основные на предположении о нормальности исследуемой случайной величины.
Постановка задачи о построении доверительных интервалов сводится к следующей. В соответствии с принятыми в теории надежности ПО подходами считаем, что время между отказами подчиняется экспоненциальному закону распределения, а количество отказов в течение заданного интервала наблюдений - закону Пуассона. Параметром экспоненциального распределения является интенсивность отказов - величина, обратная к математическому ожиданию времени между отказами. Достаточно оценить доверительный интервал для интенсивности отказов.
Пусть Т - время наблюдения, с! - количество отказов, а - коэффициент доверия, Хв и - соответственно верхняя и нижняя границы доверительного интервала. При сделанных предположениях границы интервалов выражаются через параметр распределения Пуассона Ду(г), а именно, _ ^1-д/2№ , _ 4а/2(<*-1)
в — ^ > н —---•
Величины Ду (г) определяются из уравнения:
т.е. вместо у и г нужно подставить соответствующие значения. В случае, если й = О, X« не определена. Можно сказать только, что интенсивность отказов не меньше 0. При этом Хв определена. В этом случае Д0 95(0) к 2,996, интенсивность отказов не превышает 3/Т.
Проведен анализ информационной базы оценки надёжности при редких отказах программного обеспечения системы обработки информации.
Установлено, что программное обеспечение современных отказоустойчивых систем обработки информации обладает рядом особенностей, которые делают невозможным непосредственное применение известных моделей надежности программного обеспечения. К этим особенностям следует отнести:
- логически и физически распределенный характер средств, на которых установлено данное программное обеспечение;
- отсутствие показателей, учитывающих взаимосвязь отдельных модулей;
- недостаточное количество информации по характеристикам надежности отдельных программных модулей;
- в связи с тем, что ПО функционирует на ответственных объектах и, вследствие этого, его отказы чрезвычайно редки, обработка имеющейся статистики с приемлемой точностью представляет собой отдельную непростую задачу;
- большинство используемых моделей надежности программного обеспечения позволяют получить характеристики систем без учета времени восстановления после отказа. В рассматриваемом случае такой подход принципиально невозможен. После проявления программной ошибки программное обеспечение должно быть восстановлено и время этого восстановления, иногда достаточно существенное, должно быть учтено при определении показателей надежности.
Вторая глава посвящена разработке моделей и методов оценки надежности специализированного программного обеспечения систем обработки информации для этапов тестирования, опытной эксплуатации и сопровождения, для которых характеристики надежности, а также возможности и способы их улучшения существенно различаются.
Этап тестирования характеризуется низкой надежностью программного обеспечения; возможностью пошагового выполнения программного кода, искусственного внесения ошибок; необходимостью оценивания ресурсов, требующихся для завершения тестирования.
Постановка задачи оценивания характеристик надежности ПО на этапе тестирования. Исходные данные: f;, i=l,..,n - последовательность интервалов времени между моментами обнаружения i-1 и г-ой ошибки
Используемая модель надежности: F(t) = 1 - e~(E~n)l<t, где F(t) - функция распределения среднего времени до момента обнаружения следующей ошибки; Е - количество ошибок до начала тестирования; п - количество выявленных ошибок; К - коэффициент Джелинского-Моранды; t - время.
Требуется: определить параметры модели Е, К; оценить среднее время между отказами для текущего состояния ПО; оценить время завершения тестирования для заданной интенсивности отказов Я.
Разработан комбинированный метод оценки характеристик надежности ПО, основанный на совместном использовании моделей Джелинского-Моранды и Милса. Определение параметров модели стандартным методом предусматривает решение системы уравнений:
г п "
hrrrl«-''-0
i=1 i=1 1 n
^ i=1 i=1
Предлагается уточнять параметр E по результатам обнаружения искусст-
s-i
венно внесенных ошибок: Е « — , где S - количество внесенных ошибок, I -
v
количество выявленных собственных ошибок, v - количество выявленных внесенных ошибок. Параметр К определяется из соотношения:
f" SI «У1
K = n\^tr{— + S + l)-Xi-tt •
\i=i v /=1 У
Предложенный метод верифицирован при проведении тестирования программного обеспечения системы обработки персональных данных ФМБА России. Оценивалось время, необходимое для выявления заданного количества ошибок. Результаты экспериментального исследования приведены на рис. 2.
ного количества ошибок
Среднеквадратическое отклонение оценок от результатов наблюдений для предлагаемого метода составило 0,25, для стандартного - 0,32.
Среднее время между отказами I для текущего состояния ПО определялось из соотношения Г = 1/(Е — п) ■ К).
В ходе экспериментальных исследований последовательно уточнялась оценка времени завершения тестирования для текущей интенсивности отказов ПО. На рис. 3. показана эмпирическая зависимость числа п(С) выявленных ошибок от общего времени t тестирования.
Время Г завершения тестирования определялось из условий: п(Т) = аТ3 + ЬТ2 + сТ + а, (Е - п(Т)) • К = Л,
где п(г) - зависимость количества выявленных собственных ошибок от времени, Я - заданная интенсивность отказов.
На этапе опытной эксплуатации проводится комплексирование программного обеспечения, организация его использования на различных объектах и в различных условиях. На этом этапе повышение надежности в значительной степени обеспечивается за счет совершенствования эксплуатации программного обеспечения. Требуется оценить влияние факторов эксплуатации ПО (квалификация персонала, объем данных, состояние аппаратного комплекса и др.) на интенсивность отказов.
п(1)=0,Ю82г - 1,77т' +10,971 ■ 0,9931
Нгт Ц.ЧЧ4Н
Рис. 3. Эмпирическая зависимость числа выявленных ошибок от общего времени тестирования
Предложенный подход к оценке надежности программного обеспечения на этапе опытной эксплуатации, основан на теории байесовского оценивания, не требует применения дополнительных моделей устранения ошибок и позволяет последовательно уточнять характеристики надежности по мере изменения условий эксплуатации.
Постановка задачи оценки характеристик надежности ПО на этапе опытной эксплуатации. Исходные данные: г,- , 1=1,..,п - последовательность интервалов времени между моментами обнаружения 1-1 и г'-ой ошибки.
Используемая модель надежности: Л^, Л/2,..., Ык - случайные величины - количество отказов на интервалах времени [0, г^), С2),..., [¿(¿-о., . Интервалы выбираются так, чтобы ЛГ1; И2,..., Ык были одинаково распределены:
АП
= п) = — ехр(—Л), где А - случайная величина - среднее количество
отказов на интервалах.
Требуется: определить последовательность интервалов
[О«*!.)» [^Дг)» ■■■> [*к-1Дк)> оценить вероятностное распределение Л, определить расхождение времени между отказами для текущего состояния ПО как смесь распределений.
Процедура определения последовательности интервалов подробно изложена в главе 3 при описании методики оценки характеристик надежности ПО на этапе опытной эксплуатации и рассмотрена ниже.
Оценивание вероятностного распределения среднего числа отказов на интервалах осуществлялось в предположении, что N1, Ы2, ■■■, Nk есть повторная выборка из распределения Пуассона с неизвестным значением среднего Л, т.е. рассматривается к серий отказов программного обеспечения.
Априорное распределение Л определялось как гамма-распределение с параметрами а, р. Апостериорное распределение Л при Ni = nti = 1 ,...,к (т.е. при условии, что на к интервалах наблюдений фиксировались отказы в количестве
= ...,к соответственно) - как гамма-распределение с параметрами (а + 1?=1П,)и (Р + к).
Распределение времени между отказами определялось как смесь экспоненциального и гамма-распределения:
Г+°° ва Ва Г+со (B + v')a
J о Г(а) (/? +y)aJ0 Г(а)
ара
где а = а0 + £f=1 щ , ¡3 = ро + kS - параметры гамма-распределения; а0, /?0 - априорные значения параметров; к - количество интервалов наблюдения; 8 -длина последнего интервала; п(- - количество отказов на -м интервале; /(у) -плотность распределения времени между отказами.
Справедлив предельный переход:
lim/?-+- (/?+y)«+i = Яе - при Я = — = const.
Этап сопровождения характеризуется редкими отказами ПО, большим количеством одновременно функционирующих экземпляров ПО, различными условиями эксплуатации экземпляров ПО.
Постановка задачи оценки характеристик надежности ПО на этапе сопровождения. Исходные данные: г,, i-l,..,n - последовательность интервалов времени между моментами обнаружения i-1 и г-ой ошибки.
Требуется определить математическое ожидание среднего времени наработки на отказ, значимость различий между значениями среднего времени наработки на отказ для однотипных модулей; повысить точность оценки математического ожидания среднего времени наработки на отказ для объединенных статистических данных.
Оценивается возможность объединения статистических данных об отказах однотипных модулей ПО на основе проверки статистической значимости расхождения между двумя величинами среднего времени наработки на отказ:
Р(й > г0) = 10,5 - Ф (£)|. где „я = Jr0 = h - t2 > О,
П], п2 - объемы выборок; г0 - разность между сравниваемыми средними значениями времени наработки на отказ; tlt t2 - средние значения времени наработки на отказ для сравниваемых серий наблюдений; D - дисперсия среднего времени наработки на отказ.
Предлагается проверять возможность объединения статистических данных по следующей схеме:
1) проверяются наблюдения для всех однотипных программных модулей; если для модуля ни разу не фиксировались отказы, то модуль исключается из рассмотрения;
2) для всех модулей, где возможен расчет среднего времени наработки на отказ, проводятся необходимые вычисления; формируются средние значения времени между отказами для каждого модуля;
3) полученные средние значения времени наработки на отказ сортируются по убыванию;
4) в полученном списке определяется статистическая значимость расхождений между данными модулями;
5) если статистическая значимость расхождения ниже заданного уровня, то осуществляется попарное объединение смежных серий наблюдений;
6) в противном случае объединение не производится;
7) проводится расчет среднего времени наработки на отказ в объединенных выборках;
8) шаги 5-7 повторяются, пока не произойдет максимально возможное объединение, при этом может быть несколько ветвей объединения;
9) для полученных объединенных выборок вычисляются необходимые параметры: оценки математического ожидания, дисперсии и величины доверительного интервала для среднего времени наработки на отказ.
Третья глава посвящена практическому использованию моделей и методов оценки надежности специализированного программного обеспечения системы обработки информации. Проанализирована структура программного обеспечения системы обработки персональных данных Федерального медико-биологического агентства, разработана методика и проведена оценка вероятностных характеристик отказов программного обеспечения системы на этапе опытной эксплуатации, реализована методика оценки надёжности системы при редких отказах на этапе сопровождения, приведены результаты тестирования и отладки программного обеспечения.
Автоматизированная система обработки персональных данных «Кадры» ФМБА России введена в эксплуатацию в 2010 году. В соответствии с законом о защите персональных данных №152-ФЗ и рекомендациями Федеральной службы по техническому и экспортному контролю система защищена комплексом ViPNet Custom. Программное обеспечение, разработанное ФГУП «Научно-исследовательский центр информационных технологий экстремальных проблем», представляет собой комплекс из веб-приложений, системы управления базами данных (СУБД), системы резервного копирования. СУБД функционирует на двух серверах, связанных технологией отказоустойчивого кластера Microsoft. Веб-интерфейс развернут на двух серверах для распределения нагрузки. Приложения написаны на языке ASP.NET, и С#.
Обобщенная структура программного обеспечения системы обработки персональных данных ФМБА России представлена на рис. 4. Функционируют следующие модули ПО: IS - модуль информационной системы для работы с базой данных вносимых персоналий; DB - модуль для передачи данных между центрами обработки данных (ЦОД); DB2012 - модуль отображения графической информации; IS_DEBUG - модуль сбора информации об ошибках, текущей производительности системы, скорости соединения, скорости обмена данными, и про-
чей служебной информации; STAT - модуль сбора, отображения и анализа статистических данных о введенных персоналиях.
is
.... СУВД -
L СУЩ
IS DEBUG
DB2012
STAT
Интерфейс пользователя
Интерфейс пользоеателя
1
■ ПО канала
■ ПО канала 21
j ПО канала!
Интерфейс | пользоеателя |
! IS DEBUG И
DB2012
Резервное I копирование
СУВД
лад
Рис. 4. Обобщенная структура программного обеспечения системы обработки персональных данных ФМБА России
Основное предназначение системы - сбор и хранение данных о персонале подведомственных организаций ФМБА России. База данных задействована в системе принятия решений при возникновении чрезвычайных ситуаций (ЧС). На основании данных принимаются решения о готовности лечебно-профилактических учреждений к работе с пострадавшими, готовность мобильных бригад, находящихся в непосредственной близости к очагу ЧС. Таким образом, исследуемая система обработки данных относится к критической инфраструктуре, что предъявляет повышенные требования к ее надежности.
Во всех подведомственных учреждениях ФМБА России (427 учреждений) развернуты локальные центры обработки данных (ЛЦОД). Локальный центр обработки данных функционирует на одном сервере, используется часть модулей. Система эксплуатируется локально для хранения и обработки данных для каждого учреждения. Осуществляется передача данных между головным и локальными центрами обработки данных.
При оценивании надежности распределенной системы обработки данных использованы следующие положения:
- программные модули, обеспечивающие работу каждого из каналов передачи данных, как в главном центре обработки данных, так и в каждом из локальных центров обработки данных дублируют работу друг друга;
-программные модули СУБД также дублируют друг друга, выход из строя одного из этих модулей не вызовет отказа всей системы;
- программное обеспечение всей системы обработки информации в целом с точки зрения надежности представляют собой последовательное соединение, т.е.
потеря работоспособности ПО в головном или на любом локальном центре обработки данных (ЦОД) фиксируется как отказ всей системы.
Первоначально система разворачивалась на 8 объектах, которые выбирались в соответствии с количеством обрабатываемой на них информации, т. е. в этих выбранных объектах были такие, которые обрабатывают наибольшее количество информации, наименьшее и среднее, чтобы определить влияние объемов обрабатываемых данных на надежность системы. Экспериментальные исследования проводились на этапах тестирования ПО системы обработки данных, опытной (на 8 объектах) эксплуатации и на этапе сопровождения системы.
Особенности реализации предложенных моделей, методов и методик определяют условия их потенциальной применимости для других систем обработки данных: на этапе тестирования установливаются требования к характеристикам надежности, контролируется общее время тестирования; на этапе опытной эксплуатации основное внимание уделяется влиянию условий эксплуатации компонентов ПО на различных объектах на надежность системы, а также обоснованию мероприятий по повышению надежности; на этапе сопровождения отказы ПО являются редкими, выявляются случаи статистически значимых различий в интенсивности отказов тиражируемых компонентов ПО, эксплуатирующихся на различных объектах.
На этапе тестирования по предложенной методике постоянно уточнялись оценки времени, необходимого для завершения тестирования. В конечном итоге, реализация методики позволила сократить сроки тестирования системы на 10% по сравнению с плановыми. Для оценки вероятностных характеристик отказов программного обеспечения рассматриваемой системы разработана методика определения вероятностных характеристик отказов программного обеспечения системы обработки информации на этапе опытной эксплуатации и проведена ее верификация.
Разработана процедура группировки наблюдений, содержащих сведения об интервалах времени между отказами программного обеспечения. Процедура обеспечивает формирование серий последовательных наблюдений, однородных по вероятностным характеристикам. Процедура основана на ретроспективном анализе работы по выявлению ошибок программного обеспечения и ошибочных действий персонала и применении дисперсионного анализа к данным о числе отказов на заданных интервалах времени. В результате применения процедуры определяются серии отказов и интервала времени такие, что вероятностные распределения числа отказов на интервалах совпадают.
Разработана оригинальная методика определения вероятностных характеристик отказов программного обеспечения, обеспечивающая построение оптимальных, с точки зрения минимизации байесовского риска, вероятностных распределений среднего числа отказов и средней интенсивности отказов на заданных интервалах времени и прогнозного распределения времени между отказами для текущих условий эксплуатации программного обеспечения. Последнее распределение определяется в виде смеси экспоненциального распределения и гамма-распределения.
Методика включает несколько этапов.
На подготовительном этапе продолжительность безотказной работы выражается в сутках и корректируется с учетом длительности рабочего времени. Время между отказами, выраженное в часах умножается на 7 и делится на количество рабочих часов за неделю. При определении времени прошедшего до первого в текущих сутках сбоя учитываются только рабочие часы.
На первом этапе определяются серии последовательных отказов, для которых условия применения программного обеспечения принимаются постоянными. Устанавливается длина временных интервалов для каждой серии такая, что распределения среднего числа отказов на всех интервалах (для разных серий) совпадают. При условии, что интервалы [0, сД [tlt t2),..., [tk_1( tk) уже определены, а на интервале [tx_1( ts) условия эксплуатации ПО изменились и оставались неизменными до некоторого времени tp такого, что tk < tp, при этом интервалы времени [is,is+i), [is+i, is+2). —, [t/c-i, tk) имеют одинаковую длину. Необходимо принять решение о том, оставить ли длины интервалов [ts, ts+1), [ts+1, ts+2),..., [tfc_1( tk) неизменными или изменить их с учетом новых условий эксплуатации ПО. Решение об изменении длин интервалов принимается в случае статистической значимости различий между числом отказов на интервалах [0, t-J, [ti, t2),..., [ts_1( ts) и на интервалах [ts, ts+1), [ts+1, ts+2)i — > [tfc-i> tk)-
На втором этапе осуществляется построение зависимости: приведенное время -накопленное число отказов. Вместо текущего времени рассчитывается приведенное время с учетом различия длин временных интервалов, построенных для различных серий. Проверяется близость построенной зависимости к линейной функции. В случае значимых расхождений необходима коррекция длин интервалов.
На третьем этапе устанавливаются параметры апостериорных гамма-распределений среднего числа отказов и средней интенсивности отказов на заданных интервалах времени (интервалы сформированы на втором шаге). Рассчитывается уровень байесовского риска.
На четвертом этапе определяется прогнозное распределение времени между отказами для текущих условий применения ПО. Методика может применяться последовательно, по мере поступления наблюдений либо после получения нескольких серий наблюдений. Методика верифицирована на примере статистических данных о 178 отказах модуля интерфейса пользователей системы обработки персональных данных ФМБА России. В результате применения методики оценена динамика надежности программного обеспечения при проведении мероприятий по вводу системы в эксплуатацию и обосновать мероприятия, направленные на повышение надежности.
Ниже на рис. 5 приведены плотности распределения средней интенсивности отказов по итогам нескольких серий наблюдений. Менее ассиметричные распределения с меньшей дисперсией и меньшей модой соответствуют итогам большего числа серий наблюдений.
На рис. 6 показаны результаты сравнительного анализа эксплуатации программных модулей на двух объектах.
Средняя интенсивность отказов
Рис. 5. Плотности распределения средней интенсивности отказов
3,6
к
2 3,4 я-
= 1,1
I 1
| о, в
| 0,5 О 0,4 х 0,2
150
Время, сутки
Рис. 6. Интенсивности отказов модулей программного обеспечения на двух объектах
В начале опытной эксплуатации модуля на втором объекте наблюдались статистически значимые различия в интенсивностях отказов программного обеспечения на первом и втором объекте. Это различие было объяснено недостаточной квалификацией персонала второго объекта.
Реализована методика оценки надежности специализированного программного обеспечения системы обработки информации на этапе сопровождения. Предусмотрены различные режимы обработки статистической информации об ошибках и сбоях ПО. Первый режим, вычисление параметров надёжности для системы в целом, соответствует анализу статистических данных без учета территориальной локализации, т.е. в предположении, что каждый отказ, зафиксированный в журнале, приводит к отказу системы в целом. Второй режим, вычисление параметров надёжности по каждому объекту в отдельности, позволяет рассчитать надёжность для какого-то из объектов, т.е. обрабатываются только те статистические данные об отказах, которые соответствуют отдельному объекту. Третий режим, соответствует оцениванию характеристик надёжности при редких отказах на основе объединения статистических данных для однотипных модулей.
ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ РАБОТЫ
1. Значительное количество характеристик качества программного обеспечения систем обработки информации может претерпевать изменение в процессе опытной эксплуатации систем. Как правило, по мере устранения программных ошибок и накопления опыта персонала, использующего программное обеспечение, надежность возрастает. Стандартизация характеристик качества программного обеспечения преследует две цели: учет основных аспектов качества и разработка набора независимых друг от друга характеристик. Зависимость характеристик проявляется в том, что значения одних характеристик оказывают влияние на процесс изменения значений других характеристик.
2. Характеристики надежности, возможности и способы их улучшения существенно различаются на этапах тестирования, опытной эксплуатации и сопровождения системы обработки информации, поэтому необходима разработка моделей и методов оценки надежности специализированного программного обеспечения для каждого из перечисленных этапов. На этапе тестирования существует возможность проведения экспериментов с разрабатываемым программным обеспечением: пошаговое выполнение программного кода, искусственное внесение дополнительных ошибок. На этом этапе надежность программного обеспечения первоначально не высока, существует резерв для быстрого ее повышения. На этапе опытной эксплуатации много внимания уделяется комплексированию программного обеспечения и организации его использования на различных объектах и в различных условиях. На этом этапе повышение надежности в значительной степени обеспечивается за счет совершенствования эксплуатации программного обеспечения. На этапе сопровождения для некоторых компонентов программного обеспечения отказы возможны, но наблюдаются крайне редко, поэтому возникает проблема построения репрезентативной выборки статистических данных достаточного, для статистического анализа, объема.
3. Для оценки надежности программного обеспечения системы обработки информации на этапе тестирования целесообразно использовать разработанный комбинированный метод, основанный на использовании моделей Джелинского-Моранды и Миллса, обеспечивающий повышение точности характеристик надежности.
4. Байесовский подход к оценке надежности программного обеспечения позволяет отказаться от допущения, что характеристики надежности являются функциями количества неисправленных ошибок, иными словами, что различные ошибки вносят одинаковый вклад в текущий уровень отказов. В соответствии с теорией байесовского оценивания предполагается, что вероятностное распределение оцениваемой характеристики надежности программного обеспечения зависит от параметра, интерпретируемого как случайная величина.
5. Для оценки надежности программного обеспечения системы обработки информации на этапе опытной эксплуатации разработан оригинальный подход к моделированию надежности, основанный на байесовском оценивании вероятностных распределений среднего количества отказов и средней интенсивности от-
казов на заданных интервалах времени и позволяющий минимизировать байесовский риск ошибочного оценивания.
Разработанна оригинальная методика определения вероятностных характеристик отказов программного обеспечения обеспечивает построение оптимальных, с точки зрения минимизации байесовского риска, вероятностных распределений среднего числа отказов и средней интенсивности отказов на заданных интервалах времени и прогнозного распределения времени между отказами для текущих условий эксплуатации программного обеспечения.
6. При редких отказах среднее время между отказами сопоставимо с продолжительностью наблюдения или существенно превышает ее.. В этом случае точечные оценки математического ожидания продолжительности безотказной работы программного обеспечения, полученные в результате серии наблюдений, как отношение времени наблюдения к числу отказов, будут претерпевать значительные колебания. Более того, в случае, если за весть период наблюдения не зафиксировано ни одного отказа, то точечная оценка математического ожидания времени между отказами лишена смысла. Поэтому вместо точечных оценок математического ожидания времени между отказами целесообразно использовать доверительные интервалы. В рассматриваемой ситуации не применимы формулы расчета доверительных интервалов, основные на предположении о нормальности исследуемой случайной величины. Предложен и обоснован метод вычисления доверительных интервалов для времени между отказами программного обеспечения при редких отказах.
7. При редких отказах программного обеспечения на этапе сопровождения системы обработки информации целесообразно использовать разработанную методику оценки надежности на основе объединения статистических данных. Для увеличения объема статистической базы исследования целесообразно объединять результаты наблюдений для различных объектов. Если условия функционирования объектов могут различаться и влиять на характеристики серий наблюдений, то возникает проблема построения решающего правила, по которому возможно объединение серий. То есть, при объединении серий наблюдений возникает задача построения максимальной по объему серии такой, что между входящими в ее состав исходными сериями отсутствуют статистически значимые различия. В некоторых случаях возможно построение нескольких пересекающихся или непересекающихся объединенных серий наблюдений.
Полученные результаты соответствуют п.1 «Модели, методы и алгоритмы проектирования и анализа программ и программных систем, их эквивалентных преобразований, верификации и тестирования» и п. 10« Оценка качества, стандартизация и сопровождение программных систем» паспорта специальности 05.13.11 - «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей» (редакция от 2011 года).
ОСНОВНЫЕ ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ
В рецензируемых журналах из перечня ВАК:
1. Титов А. В. Методика оценки надежности встроенных программных средств при редких отказах // Известия вузов. Приборостроение. 2010. №10. СПб.: Изд-во СПбГУ ИТМО, 2010. С. 38-42.
2. Титов A.B. Харьковой A.A. Чуканов В.О. Модели надежности программного обеспечения ответственного назначения // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета: Серия «Информатика. Телекоммуникации. Управление». СПб.: Изд-во СПбГПУ, 2011. №2 (120). С.123-126.
3. Титов A.B. Методические положения оценивания вероятностных характеристик процессов функционирования организационно-технических систем // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета: Серия «Информатика. Телекоммуникации. Управление». СПб.: Изд-во СПбГПУ, 2012. №2 (145). С.131-136.
В других изданиях:
4. Титов A.B. Оценка граничных показателей надёжности программного обеспечения по малой информации // Научная сессия МИФИ-2008: Сборник научных трудов. Том 12. М.: Изд-во МИФИ, 2008, С. 113-114.
5. Верзилин Д.Н., Максимова Т.Г., Титов A.B. Проблемы моделирования массовых событий в социуме на основе фрагментарных данных // Материалы (сборник докладов) Четвертой Всероссийской научно-практической конференции «Имитационное моделирование. Теория и практика » (ИММОД-2009), Санкт-Петербург 21-23 октября 2009 г. Т.1. С.98-104.
6. Харьковой A.A., Титов A.B. Особенности обеспечения функциональной безопасности при разработке медицинских информационных систем // Медицина экстремальных ситуаций. Выпуск 1 (31). М.: ФМБА, 2010. С.51-56.
7. Харьковой A.A., Титов A.B. Прогнозирование событий с использованием скрытых полумарковских моделей // Моделирование и анализ массовых событий в экономике и социуме, сб. науч. тр. / ГОУ ВПО СПбТЭИ; под общ. ред. проф. Д.Н.Верзилина, проф. Т.Г.Максимовой. СПб.: Изд-во «ЛЕМА», 2010. С.43-45.
8. Харьковой A.A., Титов A.B. Прогнозирование отказов с использованием скрытых марковских моделей // Моделирование и анализ безопасности и риска в сложных системах: Труды Международной научной школы МАБР-2010 (СПб., 610 июля, 2010 г.). СПб.: ГУАП, 2010. С.555-561.
Автореферат диссертации
Титов Алексей Владимирович
МОДЕЛИ И МЕТОДЫ ОЦЕНКИ НАДЕЖНОСТИ СПЕЦИАЛИЗИРОВАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ
Текст автореферата размещен на сайтах: Высшей аттестационной комиссии Министерства образования и науки Российской
Федерации
http://vak2.ed.gov.ru/cata1ogue
Федерального государственного бюджетного учреждения науки Санкт-Петербургского института информатики и автоматизации Российской академии наук (СПИИРАН) http://www.spiiras.nw.ni/DissSovet/Teniplates/PhDSchedule.htni
Подписано в печать 25.02.2013. Формат 60x84 1/16. Бумага офсетная. Гарнитура Times. Печать офсетная Тир. 100 экз. Уч.-изд.л. 1,3. Усл.пл. 1,0. Зак. № 3001.
Отпечатано в типографии «Издательство "J1EMA"» 199004, Россия, Санкт-Петербург, В.О., Средний пр., 24, тел./факс 323-67-74 E-mail: izd lema@maii.ru Internet: http://www.lemaprint.ru
-
Похожие работы
- Математическое и программное обеспечение повышения живучести управляющих модулей систем реального времени
- Повышение надежности программного обеспечения информационно-измерительных и управляющих систем безопасности ядерных радиационно-опасных объектов
- Обеспечение надежности автоматизированных информационных систем на основе сетевой кластеризации серверов
- Развитие методов оценки и прогноза качества и надежности программного обеспечения на основе нечеткой математики
- Многоатрибутивное формирование N-вариантных программных структур мультиверсионных систем управления
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность