5.3.4. Другой взгляд на надежность программного обеспечения

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

1) Число ошибок в программе – величина «ненаблюдаемая», наблюдаются не сами ошибки, а результат их проявления.

2) Неверное срабатывание программы может быть следствием не одной, а сразу нескольких ошибок.

3) Ошибки могут компенсировать друг друга, так что после исправления какой-то одной ошибки программа может начать «работать хуже».

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

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

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

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