litceysel.ru
добавить свой файл
  1 2 3

3.Заключение

  1. На основании изучения современных методов разработки качественного (прежде всего надежного, Кг > 0,999) ПО, делается вывод о необходимости использования принципов экстремального программирования для разработки высоконадежного ПО в условиях ограниченных ресурсов.


  2. Изучены существующие модели надежности ПО и методы разработки надежного ПО. На основе сделанного обзора можно констатировать: отсутствует общее решение проблемы надежности ПО и есть много частных решений не учитывающие такие существенные факторы как интенсивность внесения и устранения ошибок в программе, время разработки ПО. При этом влияние на надежность ПО объема и сложности текста программ в настоящее время непрерывно уменьшается. Таким образом ни одну из существующих моделей нельзя считать достаточной для оценки надежности ПО малого и среднего объема (до 100 тысяч строк) из-за неопределенности их входных параметров – таких как начальное количество ошибок в ПО, количество ветвлений, циклов и т.п.

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

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

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


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

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

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

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


  1. Рассмотрены характеристики процесса размножения и гибели ошибок в ПО на различных этапах ЖЦ. Получены основные зависимости распределения ошибок по этапам ЖЦ для наиболее характерного случая.

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

Количество ошибок при увеличении времени кодирования постепенно уменьшается. Следовательно, если временные ресурсы позволяют (а объем работ велик), то можно сократить время тестирования за счет увеличения времени кодирования. На практике обычно именно так и поступают.


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

Для повышения надежности ПО необходимо управлять двумя основными составляющими, влияющими на надежность ПО: прежде всего – повышать интенсивность тестирования или использования; и повышать количество программистов и/или эффективность их работы. При этом необходимо определить в условиях ограниченности ресурсов и, учитывая уникальность разработки (часто ПО разрабатывается для РОО в единственном экземпляре и для единственного уникального РОО), как долго нужно тестировать ПО или проводить опытную эксплуатацию ПО для достижения требуемой надежности ПО. Дается оценка времени достижения требуемого уровня надежности ПО при заданном количестве программистов и их эффективности работы. Вероятностный подход к надежности позволил дать ответ на вопрос одной из самых сложных проблем при тестировании: "Когда нужно заканчивать тестирование, чтобы удовлетворить требованиям по надежности к ПО?".
  1. Основной практический результат работы: для нахождения оптимального соотношения характеристик разработки и сопровождения ПО разработана, основанная на предложенной модели ПО, методология моделирования поведения надежности ПО во времени – программа моделирования на основе метода Монте-Карло. На ее основе разработаны рекомендации для повышения надежности ПО. Сочетание двух подходов – марковской модели надежности ПО и прогнозирования при помощи метода Монте-Карло – позволяет более точно и более всесторонне оценить характеристики надежности ПО. В частности, это позволяет найти начальное количество ошибок в ПО.


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

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

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

Показано, что программу моделирования можно использовать также для изучения поведения надежности ПО, исходя из полученного ранее опыта о потоке рождения и исправления ошибок. Также эту программу можно использовать для решения оптимизационных задач (например, поиска оптимальных ресурсов для достижения заданного уровня надежности, оптимальной интенсивности тестирования при заданных характеристиках клиент-сервера и количестве программистов).
  1. Предложенный метод исследования (сочетания новой модели надежности ПО и программы моделирования надежности ПО) был опробован при разработке и эксплуатации ПО радиационно-опасных объектов (автоматизированной системы контроля радиационной обстановки (АСКРО) Волгодонской АЭС, при разработке АСКРО НИЦ «СНИИП», при разработке и эксплуатации системного программного обеспечения программно-технических средств верхнего уровня систем внутриреакторного контроля и систем контроля и управления АЭС Козлодуй (Болгария), Моховце (Словакия), Тяньвань (Китай), Волгодонской, Калининской, Балаковской (Россия), при разработке системы диагностики программно-технических средств «ПАМИР»). Результаты моделирования и модели были сравнены с результатами накопленного опыта при разработке и эксплуатации вышеперечисленного ПО. Полученные результаты хорошо согласуются с опытом и практикой.


Например, предложенный метод позволил оценить необходимое время опытной эксплуатации ПО АСКРО для достижения нужного уровня надежности ПО и передачи его в промышленную эксплуатацию. Задавая требуемую по техническим условиям надежность ПО равной 0,999, было получено время тестирования (около одного года), необходимое для достижения такой надежности. И действительно, на практике за найденное время удалось достичь нужного уровня устойчивой работы ПО. Без применения этого подхода обосновать такое время опытной эксплуатации при заданных ресурсах было бы затруднительно.

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

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

Опубликованные работы по основным положениям диссертации


  1. Зорин А.В., Федотов А.А., Митин В.И., Калинушкин А.Е., Мусихин А.М., Ханджян А.О. Программно-технические средства и комплексы "ПАМИР". // Ядерные измерительно-информационные технологии. – 2000. - №2 – С. 25-35.
  2. Рыжов Н.В., Зорин А.В., Книжник А.С., Тихонов А.А., Ханджян А.О., Чебышов С.Б. АСКРО в защитной зоне и зоне наблюдения Ростовской АЭС // Материалы Всероссийской научно-практическая конференция "Состояние и развитие Единой государственной автоматизированной системы контроля радиационной обстановки на территории Российской Федерации". - 23-25 мая 2001. - г. Обнинск.


  3. Елохин А.П., Ханджян А.О. О погрешности расчетных оценок радиационных характеристик окружающей среды при аварии на АЭС и адаптации к работе на РоАЭС. // Материалы Всероссийской научно-практическая конференция "Состояние и развитие Единой государственной автоматизированной системы контроля радиационной обстановки на территории Российской Федерации". - 23-25 мая 2001. - г. Обнинск.

  4. Зорин А.В., Попов В.В., Федотов П.А., Ханджян А.О. СОВРЕМЕННЫЕ ПРОГРАММНО-ТЕХНИЧЕСКИЕ СРЕДСТВА ВЕРХНЕГО УРОВНЯ ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМ ДЛЯ АЭС В ПРОЕКТЕ АСКРО ВОЛГОДОНСКОЙ АЭС // Материалы молодежной научно-технической конференции "Методы и средства ядерных измерительно-информационных систем " к 50-летию НИЦ "СНИИП". - 11-12 апреля 2002 г.

  5. Тихонов А.А., Зорин А.В., Попов В.В., Федотов П.А., Ханджян А.О. Методы построения программно-технические средства верхнего уровня АСКРО // Тезисы третьей МНТК "Безопасность, экономика и эффективность атомной энергетики" – М. - 18-19 апреля 2002.

  6. Друзягин А.В., Зорин А.В., Книжник А.С., Петров В.И., Рыжов Н.В., Тихонов А.А., Ханджян А.О., Чебышов С.Б. Автоматизированная система радиационного контроля Волгодонской АЭС // Ядерные измерительно-информационные технологии. - 2002. - №1. – С.37-48.

  7. Зорин А.В., Федотов А.А., Федотов П.А., Ханджян А.О. Программно-технические средства верхнего уровня для АЭС // Ядерные измерительно-информационные технологии. – 2002. - №1. – С.65-70.

  8. Зорин А.В., Попов В.В., Федотов П.А., Ханджян А.О. Современные программно-технические средства верхнего уровня информационно-измерительных систем для АЭС в проекте АСКРО Волгодонской АЭС //Ядерные измерительно-информационные технологии. – 2002. – №3 – С.25-35.
  9. Ханджян А.О. Модель и моделирование надежности программного обеспечения как системы массового обслуживания //Техника и технология. – 2005. – №2(8). - С. 76 – 85.


  10. Ханджян А.О. Анализ современного состояния разработки надежного программного обеспечения // Естественные и технические науки. – 2005. - №2. – С. 220 – 227.

  11. Ханджян А.О. Модель надежности программного обеспечения как системы массового обслуживания //Объединенный научный журнал. - 2005. - №7(135) март. – С. 63 – 71.

  12. Бодров А.А., Бодров Д.А., Ретюнский Е.В., Ханджян А.О. Специальное программное обеспечение «Мигрант-1» Центрального Банка Данных учета иностранных граждан ФМС России - проблемы информатизации // Сборник трудов XV Международной научной конференции «Информатизация и информационная безопасность правоохранительных органов». - Академия Управления МВД России. - 23-24 мая 2006 г. – С. 245 – 248.

  13. Ханджян А.О. Повышение надежности программного обеспечения ядерных радиационно-опасных объектов // Ядерные измерительно-информационные технологии. – М., 2006. - №3. – 10 стр. (принято в печать).

  14. Бодров А.А., Ханджян А.О. Обзор современного состояния разработки надежного программного обеспечения и модель надежности ПО // Новые промышленные технологии. – М.: ЦНИЛОТ, 2006. - №6. – 10 стр. (принято в печать).





<< предыдущая страница