Надежность ПО и излишнее срабатывание
Приморская-Сестрорецкая железная дорога

Надежность ПО и излишнее срабатывание

 

За последнее время я ознакомился с несколькими работами, посвященными «надежности программного обеспечения».

Первую [1] я просто прочитал и включил в список литературы по надежности цифровых устройств релейной защиты [3], а на вторую [2] написал рецензию [4].

Между собой эти работы объединяет рисунок, воспроизведенный ниже, где повторены подрисуночные подписи из этих работ.

Интенсивность отказов программного обеспечения и аппаратной части системы РЗА. (Рисунок 4 из [2])

Вид функции интенсивности отказов для ПО и аппаратной части.

(Рисунок 1 из [1])

 

Первое, что вызывает вопрос после ознакомления с рисунком, подрисуночными подписями к нему и текстом статей – появление у ПО неизвестной до сих пор характеристики - интенсивности отказов.

В этих работах отмечено, что особенность «надежности программного обеспечения заключается в том, что оно (ПО – примеч. моё) не изнашивается, надежность ПО со временем лишь увеличивается при наличии системы исправления ошибок».

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

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

        Здесь будет нелишним задать вопрос, как будет изменяться график в том случае, когда в ПО будут выявлены все ошибки, например, в момент времени t1?

Неясно так же, как изменяется график для ПО, имеющего ошибки, не влияющие на его работу?

Кстати, термин «интенсивность» отказов ПО отсутствует в терминологических стандартах [5, 6], а требование надежности в этих документах сформулировано только для программного средства.

В стандарте [6] надежность программного средства определена как его способность сохранять заданный уровень пригодности в заданных условиях в течение заданного интервала времени.

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

        В других публикациях, например, в [8] предлагают различать понятия «ошибка» и «отказ». Применительно к надежности ПО, ошибка - это погрешность или искажение кода программы, неумышленно внесенные в нее в процессе разработки, которые в ходе функционирования этой программы могут вызвать отказ или снижение эффективности функционирования.

Под отказом автор [8] предлагает понимать событие, заключающееся в нарушении работоспособности объекта, как это предусмотрено в стандарте [7] для ТС.

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

В конечном итоге в работе [2] надежность ПО предложено определять логико-вероятностным методом, опираясь на данные о надежности логических элементов.

На мой взгляд в дальнейших рассуждениях допущена принципиальная ошибка -  высказано два ошибочных предположения:

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

- надежность ПО является составляющей частью всех функций релейной защиты.

После этого автор работы [2] сводит отказ в выполнении логических операций к одну из трёх видов отказов релейной защиты.

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

В расчетной схеме «излишнее срабатывание», в отличие от двух других расчетных схем, исключен исполнительный элемент, что вызывает вполне естественный вопрос – как же происходит «излишнее срабатывание» без исполнительного элемента?

В конце публикации [2] автор предлагает надежность ПО оценивать через показатель эффективности, вводя в этот показатель коэффициенты неготовности, связь которых с надежностью ПО никак не пояснена.

        Более того, предложенный автором интегральный показатель эффективности содержит такие показатели как «средняя наработка на отказ», «поток повреждений» и другие. О связи этих показателей с надежностью ПО в статье так же нет никаких пояснений.

        Кроме этого, принципиальная ошибка допущена при выделении трёх видов отказов: «ложное срабатывание» [11], «отказ в срабатывании», «излишнее срабатывание» [12].

        Почему-то всё это напоминает формулы надежности [13], предлагаемые другими специалистами.

 

Литература

1. Типикина А.П., Певцова Л.С. Оценка программной надежности микропроцессорных релейных защит // [Электронный ресурс], режим доступа: http://naukovedenie.ru/PDF/74TVN215.pdf (Интернет-журнал «Науковедение» ISSN 2223-5167 http://naukovedenie.ru/)

2. Трофимов А.С. Метод оценки надежности цифровой релейной защиты энергосистем. // Релейщик, №3, 2016, С. 29

3. Захаров О.Г. Библиография работ по надежности цифровых устройств релейной защиты // [Электронный ресурс], режим доступа: http://rza.org.ua/blog/a-64.html

4. Оцениваем надежность ЦРЗА? // [Электронный ресурс], режим доступа: http://rza.org.ua/blog/a-320.html

5. ГОСТ Р ИСО/МЭК 9126-93 Информационная технология. Оценка программной продукции. Характеристики качества и руководства

по их применению // [Электронный ресурс], режим доступа: http://docs.cntd.ru/document/1200009076

6. ГОСТ 28806-90. Качество программных средств. Термины и определения. // [Электронный ресурс], режим доступа: http://www.gosthelp.ru/gost/gost10605.html

7. ГОСТ 27.002 – 2009. Надежность в технике. Термины и определения.

// [Электронный ресурс], режим доступа: http://guap.ru/guap/standart/kach/gost_r_27_002-2009.pdf

8. Дроботун Е. Б. Надежность программного обеспечения. Виды и критичность ошибок // [Электронный ресурс], режим доступа: http://www.ivtn.ru/2009/pdf/d09_04.pdf

9. Надежность программного обеспечения // [Электронный ресурс], режим доступа: http://www.tehprog.ru/index.php_page=lecture13.html

10. ГОСТ 19871-90. Обеспечение систем обработки информации программное. Термины и определения. // [Электронный ресурс], режим доступа: http://docs.cntd.ru/document/gost-19781-90

11. Захаров О.Г. Ложное срабатывание // [Электронный ресурс], режим доступа: http://www.energoboard.ru/articles/3040-lognoe-srabativanie.html

12. Захаров О.Г. Ложное или излишнее срабатывание? // [Электронный ресурс], режим доступа: http://rza.org.ua/blog/a-66.html

13. Захаров О.Г. Формулы надежности // [Электронный ресурс], режим доступа: http://rza.org.ua/article/read/Formuly-nadezhnosti.html

 

 


Яндекс.Метрика счетчик посещений


© ЗАХАРОВ О.Г. 2016::: 2017




МОИ САЙТЫ
2013 2014 2015 2016
2010 2011 2012
2003 2004 2005 2007 2008 2009
1970-1992 1992-1996