Автоматизация оценки надежности программного обеспечения для систем управления технологическими процессами

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 27.05.2018
Размер файла 73,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

УДК 519.6, 004.89

Автоматизация оценки надежности программного обеспечения для систем управления технологическими процессами

Ю.М. Соломенцев, С.А. Шептунов,

Н.В. Суханова, И.С. Кабак

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

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

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

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

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

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

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

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

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

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

- провести анализ известных средств повышения надежности автоматизированных систем управления;

- разработать структуру автоматизированной системы для мониторинга надежности программного обеспечения;

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

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

- повышение надежности элементов системы;

- резервирование элементов.

Для программного обеспечения автоматизированных систем управления эти методы не применяют по следующим причинам:

- повышение надежности элементов программного обеспечения означает увеличение объема и продолжительности их тестирования;

- резервирование элементов программного обеспечения не используется, так как оно существенно увеличивает затраты и сроки разработки.

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

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

Автоматизированная система мониторинга надежности ПО работает в составе операционной системы реального времени (ОС РВ) и выполняет следующие действия:

1) запуск ПО, контроль его работоспособности, обнаружение отказа, останов ПО, его повторный запуск;

2) расчет наработки до отказа, формирование выборки значений времени наработки до отказа, которое определяют по формуле

,

где toi - наработка до i-го отказа; tfi - время обнаружения i-го отказа; tsi - время запуска ПО; i- количество обнаруженных отказов ПО;

3) оценка текущего уровня надежности ПО на основе выборки значений времени наработки до отказа и расчет интенсивности отказов h(t), где t - текущее время;

4) прогноз надежности ПО на основе выборки значений времени наработки до отказа, расчет интенсивности отказов h(t+dt), где t - текущее время, dt - интервал прогнозирования;

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

Рис. 1. Структура автоматизированной системы для мониторинга надежности ПО

Для прогнозирования, оценки и контроля надежности используется модель на базе нейронной сети специального вида [2-4]. Нейронная сеть предварительно обучается по выборке значений времени наработки до отказа. В процессе работы проводится дополнительное обучение ИНС, с учетом полученных новых значений времени наработки до отказа.

Способ оценки интенсивности отказов ПО приведен на рис. 2. Показатель надежности оценивается с заданной точностью относительно целевого уровня h, указанного в техническом задании на систему. Требуется определить время отладки t, за которое система достигнет требуемого уровня надежности h(t). Аналитические, статистические и модели на базе нейронных сетей позволяют получить приближенную оценку для показателя надежности h(t).

Рис. 2. Оценка интенсивности отказов ПО: 1- без использования моделей для оценки надежности; 2 - с использованием аналитических и статистических моделей для оценки надежности; 3 - с использованием модели для оценки и прогнозирования надежности на базе искусственной нейронной сети

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

В момент времени отладки t3 интенсивность отказов ПО равна значению h1, которое существенно выше целевого уровня h, т. е. h1>h (рис. 2). Необходимо получить оценку интервала времени Дt, за который интенсивность отказов ПО достигнет уровня h, установленного в техническом задании. Без использования моделей оценки надежности невозможно получить достаточно точную оценку интервала времени Дt. Время отладки увеличивается, и разработчик несет дополнительные затраты.

Возможны следующие ситуации, когда проект разработки АСУ ТП оказывается под угрозой срыва из-за низкого качества ПО:

1) срок сдачи ПО АСУ ТП уже прошел, а система все еще не готова к вводу в эксплуатацию из-за наличия в ПО скрытых, невыявленных ошибок;

2) в процессе работы АСУ ТП выявляются ошибки в ПО, которые требуют существенной переработки кода и или структуры ПО.

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

Для оценки и прогнозирования надежности была разработана модель на базе обученной искусственной нейронной сети [5-6]:

(1)

где H(t) - оценка интенсивности отказов ПО; ai, bi - параметры модели; t - время отладки; N - число компонентов ПО.

Модель (1) была реализована с использованием больших искусственных нейронных сетей (ИНС). Перед использованием ИНС необходимо обучить. Для обучения ИНС используется информация об отказах программного обеспечения.

Применение разработанной прогнозирующей модели для оценки надежности на базе искусственной нейронной сети [5; 6] позволяет сократить время отладки до значения t3 за счет рационального и обоснованного распределения общего времени отладки между отдельными компонентами ПО. В результате получен выигрыш по времени отладки ПО, который составляет

.

Улучшение показателя надежности по сравнению с традиционным способом равно величине

.

Итак, разработана структура автоматизированной системы для мониторинга надежности программного обеспечения. Для оценки и прогнозирования надежности ПО разработана модель на базе обученной искусственной нейронной сети [5; 6], которая позволяет существенно сократить время отладки за счет рационального и обоснованного распределения общего времени отладки между отдельными компонентами ПО.

автоматизированный программный надежность

Список литературы

1. Надежность технических систем: справочник / Ю.К. Беляев, В.А. Богатырев, В.В. Болотин [и др.]; под ред. И. А. Ушакова. - М.: Радио и связь, 1985. - 608 с.

2. Нейронная сеть: пат. на полез. модель № 66831/ Кабак И.С., Суханова Н.В. - Бюл. изобрет. и полез. моделей; приоритет 02.04.07. - 3 с.

3. Доменная нейронная сеть: пат. на полез. модель № 72084 / Кабак И.С/, Суханова Н.В. - Бюл. изобрет. и полез. моделей; приоритет 03.12.07. -3 c.

4. Многослойная модульная вычислительная система: пат. на изобрет. №2398281 / Соломенцев Ю.М., Шептунов С.А/, Кабак И.С., Суханова Н.В. - Бюл. изобрет. и полез. моделей; приоритет 07.11.08. - 5 c.

5. Кабак И.С. Оценка надежности программного обеспечения по его математической модели / И.С.Кабак, Г.Н. Рапопорт // Проблемы создания гибких автоматизированных производств / под. ред. И.М. Макарова, К.В. Фролова, П.Н. Белянина. - М.: Наука, 1987. - С. 236-245.

6. Кабак И.С. Повышение надежности программного обеспечения системы управления / И.С. Кабак, Н.В. Суханова //Электронный журнал BC/NW. - 2008. - №2 (13).

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.