Главная страница  Анализ эмпирических данных 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [ 31 ] 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

Компоненты проекта

Тип ошибок

3 3

а О) S S 3 к и о.

са (и сз

и г 2J

н CJ о с о

Е-ООО

Ошибки вывода

33,3

25,0

данных

Е-200

Ошибки в спецпфика-

14,3

100,0

Щ1ЯХ выходных фор-

матов

Е-300

Данные выводятся в

22,3

25,0

неверном формате

Е-500

Вывод отсутствует или

85,7

11,1

25,0

неполон

Е-600

Недостаточное поле

33,3

вывода для размеще-

ния данных

F-000

Ош.ибки сопр.пжений

25,9

68,8

33,3

F-300

Ошибочный аргумент

11,1

50.0

подпрограммы

F-500

Ошибки сопряжения

25,9

16.7

программ с базой

данных

F-600

Ошибки в пользова-

11,1

12,5

тельских интерфей-

F-700

Ошибки межпрограмм-

18,6

ных сопряженпй

F-000

Ошибки определения

21,1

41,9

33,3

0

данных

F-100

Данные или нх размер-

47,4

41,9

66,7

50.0

ность определены не-

верно

F-300

Ошибки в указании

10,4

расположения дан-

F-400

Неверно осуществляет-

15,8

13,0

50,0

ся приращение зна-

чений указателей

данных



Тип ошибок

Компоненты проекта

а я §£

CD. 1= Й

= о 5&Я

Sol г 3 п

к к fx

в ig

с 3 о X

еч а

л Ф R

о с о

1< и OJ <0 OJ Р*

н-000

Ошибки в базе данных

59,5

25,0

33,3

Н-100

Отсутствует иницииро-

29,4

66,7

вание данных

Н-200

Начальные значения

64,7

35,1

50,0

данных ошибочны

J-000

Прочие ошибки

J-100

Превышение выделен-

18,2

ного времени работы

J-200

Превышение отведен-

ного объема памяти

J-500

Проектное решение или

27,2

18,2

10,5

программная реали-

зация неэффективны

J-600

Ошибки, лежащие в

22,0

18,2

54,6

57,9

основе изменений по

запросу пользовате-

ля или разработчика

J-700

Проект не соответ-

27,2

27,2

31,6

ствует специфика-

циям

J-900

Программное обеспе-

чение не соответ-

ствует стандартам

верки условий. Для всех рассмотренных в исследовании типов ошибок этот результат представляется самым важным. Вторым по значимости типом ошибок для всех проектов являются неверная логика (неправильные результаты логических операций) и нарушения последовательности логических действий; они составляли от 14,9 до 45% всех логических ошибок. Как ни удивительно, но бесконечные циклы и другие ошибки, связанные с циклами, были достаточно редкими и составляли всего лишь 5,2% для логических ошибок Проекта 3 и еще меньше для других проектов.

Для всех проектов преобладающими категориями в классах ошибок ввода и вывода данных являлись



Одно из основных 5прощений перечня категорий ошибок ,в Проекте 5 касалось как раз ошибок сопряжения.

неправильные форматы данных и искаженные или не соответствующие спецификациям выходные данные. Довольно часто встречались также случаи неполного вывода и вывода не тех элементов данных.

Ошибки манипулирования данными, следующие по общему их количеству за логическими ошибками, преобладали в операциях инициализации и обновления данных. Эти две категории ошибок составляли от 65,7 до 77,3% от общего числа ошибок данного класса для Проекта 3 и Проекта 4 и от 26,3%, в имитационных программах до 82,3% в операционной системе Проекта 5. Ошибки инициализации флажков оказались серьезной проблемой для всех исследуемых проектов.

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

3.2.2. Особенности выявления ошибок на различных этапах разработки

Все ошибки, анализу которых посвящено настоящее исследование, были выявлены либо в результате формального тестирования, либо (как в случае Проекта 3 и Проекта 4) в ходе эксплуатации программ. Под формальным тестированием понимается тестирование, проводимое после того, как отдельные разработчики завершили проверку и отладку своих программ. Этап формального тестирования является одним из этапов разработки программного обеспечения и позволяет установить, удалось или нет достичь поставленных целей, таких, например, как целостности и единства системных интерфейсов, соответствия программ спецификациям, возможности функционирования программ в соответствующей операционной среде.



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [ 31 ] 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

© 2000 - 2018 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования.