Определение понятия «ошибка в программе»

К вопросу о классификации программных ошибок

Березкин Д.В.

Определение понятия «ошибка в программе». 1

Классификация ошибок по месту их возникновения. 2

Классификация ошибок с точки зрения тестировщика. 12

Классификация ошибок по степени их критичности. 13

Классификация ошибок в зависимости от их места в жизненном цикле программного изделия 14

Классификация программных ошибок (багов) с точки зрения субъективного восприятия их программистами. 15

Некоторые выводы.. 16

Литература. 16

В качестве введения рассмотрим определения понятия «ошибка». Начнем с наиболее общего трактования этого понятия применительно к некоторым техническим системам.

По определению стандарта ISO 9241-13 [1] ошибка это – несоответствие между целями пользователя и ответом системы.

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

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

Определение понятия «ошибка в программе»

В самом общем случае под ошибкой понимается какой-то сбой в программе на этапе ее выполнения.

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

Майерс дает такое нестрогое определение: «Если программа не делает того, чего пользователь от нее вполне обосновано ожидает, значит налицо программная ошибка» [3].

Автор работы [4] настаивает на субъективном характере программных ошибок: «Не существует ни абсолютного определения ошибок, ни точного критерия наличия их в программе. Можно лишь сказать, насколько программа не справляется со своей задачей, - это исключительно субъективная характеристика».

Канер с соавторами [5] указывают, что определение ошибок как расхождение между программой и ее спецификацией - не верно. Они исходят из того, что даже точно соответствующая спецификации программа содержит ошибки в том случае, если есть ошибки и в самой спецификации.

В книге [6] приводится такое определение программных ошибок: "Говоря простыми словами, программная ошибка - не что иное, как изъян в разработке программного продукта, который вызывает несоответствие ожидаемых результатов выполнения программного продукта и фактически полученных результатов. Дефект может возникнуть на стадии кодирования, на стадии формулирования требований или на стадии проектирования, либо же его причина может крыться в некорректной конфигурации или данных. Дефектом может быть также что-то другое, что не соответствует ожиданиям заказчика и что может быть, а может и не быть определено в спецификации программного продукта".


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: