Надёжность систем автоматизации
5. Надежность программного обеспечения АСУ ТП
Одной из основных частей АСУ ТП является программное обеспечение (ПО), представляющее собой совокупность взаимосвязанных и автономных программ, описаний, инструкций программиста и пользователя, тестов и т.п.
Основным ядром ПО являются его программы, которые обеспечивают: нормальное функционирование УВМ и значительной части ТСА, переработку информации о состоянии ТОУ, определение регулирующих и управляющих воздействий, взаимодействие АСУ и управленческого персонала и другие функции. Качество работы всей АСУ ТП существенно зависит от качества ПО, под которым условно понимают совокупность таких разнородных свойств как корректность, быстродействие, стоимость, и, особенно, надежность.
Надежность ПО - есть свойство программного обеспечения своевременно выполнять в заранее указанных условиях эксплуатации вперед установленные функции.
В самом общем случае основную функцию ПО АСУТП можно рассматривать как своевременное получение некоторого результата или решения у при переработке входной информации х из множества Х.
Под х понимается контрольная информация от ТОУ, сигналы о состоянии технологического оборудования и ТСА, команды управленческого персонала и вышестоящих АСУ и т.п. Результат у зависит как от случайного х Х, так и от свойств ПО, носящих во многом стохастический характер. Поэтому установление каких-либо диапазонов изменения у и тем более границ допустимых или разумных результатов У оказывается в этом случае невозможным. Вследствие этого становится затруднительной строгая качественная оценка принадлежности данного у множеству «разумных» результатов У.
Решение о выполнении или невыполнении функций ПО вынужден принимать пользователь и, в меньшей степени разработчик программы или программист. Таким образом, надежность - это свойство программ обеспечивать «разумные» по мнению пользователя и программиста решения при переработке входной информации х из условного множества Х и нормальном функционировании УВМ.
Надежность устанавливается по результатам работы ПО, т.е. при динамической проверке всех программ на множестве входной информации. Некорректное ПО заведомо ненадежно, однако и корректное ПО может быть ненадежным.
Рассмотренное определение надежности ПО базируется на понятии отказ программы, под которым понимается событие, заключающееся в появлении «неразумного» результата у Y при х Х и нормальной работе УВМ и ТСА.
Отказы ПО делятся на случайные и неслучайные.
Неслучайные отказы ПО обусловлены действием так называемых компьютерных вирусов.
Случайные отказы ПО наблюдаются в случайные моменты времени работы УВМ или процессора. По своим последствиям эти отказы классифицируются на случайные сбои программ и устойчивые отказы ПО.
Под сбоем ПО понимают случайное событие, заключающееся в появлении «неразумного» результата у Y и исчезающее при последующих прогонах (запусках) программ.
Сбой ПО - это самоустраняющийся (перемежающийся) отказ программы, возникающий при некоторых, возможно случайных, состояниях УВМ и информации х Х, наблюдаемый пользователем в случайные моменты времени и исчезающий без вмешательства программиста.
Устойчивый отказ ПО наблюдается в случайный момент процессорного времени в форме «неразумного» результата у Y при х Х в нормальном функционировании УВМ.