WWW.DISSERS.RU

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

загрузка...
   Добро пожаловать!

Pages:     | 1 | 2 ||

29 запросов

Число элементарных изменений

595 измененных функций

Число обучающих примеров

512 обучающих примеров

Всего, по запросам, в исходном коде были изменены 595 функций. Вследствие объединения изменений (в случае, если два изменения функции совпадают по всем выбранным параметрам, такое изменение объединяется в одно – при этом число отказов, которое получается вследствие «сводного изменения» равно среднему арифметическому отказов объединенных изменений), число обучающих примеров для нейросети изменения составило в итоге 512.

Всего было обучено 15 нейросетей изменений, разделенных на три класса:

  1. Трехслойная нейросеть со стандартными входами. Первый слой – 4 нейрона, второй – 4 нейрона, 3 – 1 нейрон.
  2. Двухслойная нейросеть со стандартными входами. Первый слой – 4 нейрона, второй – 1 нейрон.
  3. Двухслойная нейросеть со стандартными и одним дополнительным входом. Первый слой – 5 нейронов, второй – 1 нейрон.

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

Таблица 3

Характеристики тестирующей выборки

Характеристика

Значение

Число рассматриваемых патчей

1 патч к тиражной сборке

Число реализованных запросов

75 запросов

Число отвергнутых запросов

11 запросов

Тестирование моделей с первым классом нейросетей – трехслойных, со стандартными входами, показало результаты, приведенные на рис. 5.

Здесь налицо два серьезных недостатка:

  • большой разброс в результатах прогнозирования – одна нейросеть спрогнозировала 17 отказов в системе, другая – 2. Ориентироваться в такой ситуации практически невозможно – модель не поможет, а только запутает человека;
  • отсутствие более-менее правильных оценок во всех нейросетях – ни одна из них не спрогнозировала правильное число отказов – 11. Ближе всего к этой оценке число в 8 отказов, однако, такое качество прогнозирования, естественно, неудовлетворительно.

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

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

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

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

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

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

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

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

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

Рис. 4. Распределение отказов по функциональным блокам

Применения ПК «RelCalc» в процессе разработки тиражных банковских программных систем приведет к следующим положительным эффектам:

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

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

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

  1. На основании проведенного анализа существующих моделей надежности ПО и исследований в области банковского ПО сделаны выводы о необходимости разработки новых подходов к моделированию оценки надежности банковского тиражного ПО.
  2. Предложена методика прогнозирования характеристик надежности банковского тиражного программного обеспечения, позволяющая развивать и совершенствовать теорию надежности программного обеспечения.
  3. Разработана модель прогнозирования характеристик надежности банковских тиражных программных систем на основе нейросетевых технологий, обладающая свойствами адаптивности, детализации, конкретизации. Благодаря этим качествам, модель не только позволяет оценить число отказов в очередной сборке тиражной программной системы еще до ее сборки, но и правильно распределить усилия тестировщиков, направив их на тестирование тех функциональных блоков, в которых ожидается наибольшее число отказов.
  4. Применение в качестве ядра модели нейросети, позволило существенно повысить степень автоматизации оценки показателей надежности банковского тиражного программного обеспечения, за счет, в основном, отсутствия необходимости вычислять взаимные зависимости параметров модели.
  5. Разработан программный комплекс «Reliability Calculator», позволяющий автоматизировать все этапы применения модели для прогнозирования числа отказов в очередной сборке тиражной программной системы.
  6. Исследованы возможности применения нейросетей различной мощности для решения поставленной задачи. Проведены исследования быстродействия различных алгоритмов обучения нейросети, в результате которых выбран наиболее подходящий.
  7. На основании результатов практического применения программного комплекса и модели, сделаны выводы о корректности модели и разработанного программного комплекса.

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

  1. Никольский С.О. Анализ применимости моделей надежности к тиражному программному обеспечению / С.О. Никольский, В.К. Гулаков // Проблемы информатики в образовании, управлении, экономике и технике: сборник статей IV всероссийской научно-технической конференции / Под редакцией д.т.н., проф. В.М. Линькова. – Пенза, 2004.
  2. Никольский С.О. Модель надежности тиражного программного обеспечения / С.О. Никольский, В.К. Гулаков // Вестник Брянского Государственного Технического Университета. – № 4 (4), 2004. – Брянск. с. 90-94.
  3. Никольский С.О. Проблемы организации трассировки в сложных программных системах / С.О. Никольский, В.К. Гулаков // Качество инженерного образования: материалы 2-й международной научно-методической конференции. – Брянск, 2005.
  4. Никольский С.О. Модель надежности программного обеспечения на основе интеллектуальных технологий / С.О. Никольский, В.К. Гулаков // Вестник компьютерных и информационных технологий. – № 7 (13), 2005 –М: Машиностроение. с. 43-48.
  5. Никольский С.О. Программный комплекс для моделирования надежности тиражного программного обеспечения с использованием нейросетей / С.О. Никольский // Информационные технологии, энергетика и экономика: сб. трудов III межрег. науч.-техн. конф. студентов и аспирантов. – Смоленск, 2006.
  6. Никольский С.О. Моделирование надежности тиражного программного обеспечения (reliability modeling for circulation software) / С.О. Никольский // Вестник Белгородского университета потребительской кооперации. – №2 (17), 2006. – Белгород. с. 203-207

Никольский Святослав Олегович

Моделирование оценки характеристик надежности банковских тиражных программных систем на основе нейросетевых технологий

Автореферат

Лицензия №020381 от 24.04.97. Подписано в печать 22.11.06. Формат 60х84 1/16. Бумага офсетная. Офсетная печать. Печ.л. ___. Уч.-изд. л.1. Т.100 экз. Заказ 607. Бесплатно

Брянский государственный технический университет,

241035, г. Брянск, бульвар 50-летия Октября, 7.

Лаборатория оперативной полиграфии БГТУ, ул. Институтская, 16.

Pages:     | 1 | 2 ||






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