Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Уровень автоматизации программирования

Поиск

 

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

, (3)

где В – количество ошибок после реализации программы на языке программирования; Е – интеллектуальные усилия при программировании; V – объем программы; 3000 – критический уровень работы по составлению программы.

Появление в языках программирования средств семантического контроля программы (пользовательские типы данных и операторов) потребовало измерения эффективности этих средств. Основным понятием при решении этой задачи является дефект программы.

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

Следует отметить, что дефект программы может быть и не обнаружен при выполнении программы на определённом множестве исходных данных. Поэтому вводится понятие множества всех потенциальных дефектов D и числа этих дефектов d.

Выдвигается гипотеза, согласно которой количество ошибок в программе прямо пропорционально d. Тогда для какого-либо средства статистического семантического контроля можно вычислить показатель его эффективности:

(4)

где R1 – количество ошибок в программе, полученное без использования этого средства; R2 – количество ошибок в программе, полученное с использованием данного средства; d1 – количество дефектов в программе, полученное без использования этого средства; d2 – количество дефектов в программе, полученное с использованием данного средства.

Теперь необходимо количественно оценить d1 и d2. При оценке количества возможных дефектов, возникающих в тексте программы, оцениваются все случаи замены операторов, операндов и типов, приводящие к изменению смысла алгоритма.

Количество дефектов для средств контроля типов данных определится как:

dтип = dт + dN1 + dN2 (5)

где dт – количество дефектов от возможной замены типов; N1 – количество дефектов от возможной кодов операндов; N2 – количество дефектов от возможной кодов операторов.

Таким образом, взяв за основу сравнения полное отсутствие контроля типов данных, эффективность средства контроля типов данных можно оценить по формуле

 

(28)

 

где - число типов данных в программе; N1 – общее число операторов в программе; N2 – общее число операндов в программе; η1 – словарь операторов; η2 – словарь операндов.

Более корректным будет при использовании данной метрики для оценки количества дефектов от возможной замены типов данных dт применять функцию не количества типов, различаемых более развитым средством семантического контроля, а количества разновидностей операндов неконкретного типа. Оно оценивается как разность объема словаря операндов и количества различаемых данным средством программирования типов данных. Тогда оценка эффективности примет вид:

(6)

где ТБ – количество типов данных, контролируемых базовым средством программирования; ТК – количество типов данных, контролируемых дополнительным и базовым средством семантического контроля.

 

Задание

Для одной из своих программ рассчитать:

1) Уровень языка, (l);

2) Количество ошибок после реализации программы на языке программирования (В);

3) Количество дефектов для средств контроля типов данных (dтип);

4) эффективность средства контроля типов данных ().

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Что является оценкой языка программирования?

2. Как определить уровень автоматизации программирования? Что является дефектом программы?

3. От чего зависит эффективность контроля типов данных?

4. Как вы понимаете термины семантический контроль и уровень языка? Как на их основе можно оценить уровень языка программирования?

ЛИТЕРАТУРА

1. Изосимов А.В., Рыжко А.Л. Метрическая оценка качества программ. – М.: Издательство МАИ, 1989.

2. Холстед М. Начала науки программирования. - М.: Финансы и статистика, 1981.

 

ПРИЛОЖЕНИЕ 1. СТАТИСТИЧЕСКИЕ ТАБЛИЦЫ

Таблица П.1.1

Значения распределения Стьюдента

 

n Доверительная вероятность Р
0,90 0,95 0,98 0,99 0,999
  6,31 12,71 31,82 63,68 636,62
  2,92 4,30 6,97 9,93 31,60
  2,35 3,18 4,54 5,84 12,92
  2,13 2,78 3,75 4,60 8,61
  2,02 2,57 3,37 4,06 6,87
  1,94 2,45 3,14 3,71 5,96
  1,90 2,37 3,00 3,50 5,41
  1,86 2,31 2,90 3,36 5,04
  1,83 2,26 2,82 3,25 4,78
  1,81 2,23 2,76 3,17 4,59
  1,80 2,20 2,72 3,11 4,44
  1,78 2,18 2,68 3,06 4,32
  1,77 2,16 2,65 3,01 4,22
  1,76 2,15 2,62 2,98 4,14
  1,75 2,13 2,60 2,95 4,07
  1,75 2,12 2,58 2,92 4,02
  1,74 2,11 2,57 2,90 3,97
  1,73 2,10 2,55 2,88 3,92
  1,73 2,09 2,54 2,86 3,88
1,65 1,96 2,33 2,58 3,29

Таблица П.1.2

Значения c2 в зависимости от r и p

 

 

Вероятность Р
0,99 0,95 0,90 0,80 0,50 0,20 0,10 0,05 0,02 0,01
  0,00 0,004 0,016 0,064 0,455 1,642 2,71 3,84 5,41 6,64
  0,02 0,103 0,211 0,446 1,386 3,22 4,60 5,99 7,82 9,21
  0,115 0,352 0,584 1,005 2,37 4,64 6,25 7,82 9,84 11,34
  0,297 0,711 1,064 1,649 3,36 5,99 7,78 9,49 11,67 13,28
  0,554 1,145 1,610 2,34 4,35 7,29 9,24 11,07 13,39 15,09
  0,872 1,635 2,20 3,07 5,35 8,56 10,64 12,59 15,03 16,81
  1,239 2,17 2,83 3,82 6,35 9,80 12,02 14,07 16,62 18,48
  1,646 3,49 3,49 4,59 7,34 11,03 13,36 15,51 18,17 20,1
  2,09 3,32 4,17 5,38 8,34 12,24 14,68 16,92 19,68 21,7
  2,56 3,94 4,86 6,18 9,34 13,44 15,99 18,31 21,2 23,2
  3,57 5,23 6,30 7,81 11,34 15,81 18,55 21,0 24,1 26,2
  4,66 6,57 7,79 9,47 13,34 18,15 21,06 23,7 26,9 29,1
  5,81 7,96 9,31 11,15 15,34 20,5 23,54 26,3 29,6 32,0
  7,02 9,39 10,86 12,86 14,44 22,8 26,0 28,9 32,3 34,8
  8,26 10,85 12,44 14,58 19,34 25,0 28,41 31,4 35,0 37,6
  9,54 12,34 14,04 16,31 21,3 27,3 30,8 33,9 37,7 40,3
  10,86 13,85 15,66 18,06 23,3 29,6 33,2 36,4 40,3 43,0
  12,20 15,38 17,29 19,82 25,3 31,8 35,6 38,9 42,9 45,6
  13,56 16,93 18,94 21,6 27,3 34,0 37,9 41,3 45,4 48,3
  14,95 18,49 20,6 23,4 29,3 36,2 40,26 43,8 48,0 50,9

 

 


Таблица П.1.3

Значения функции Лапласа

 

                   
0,0 0,0000 0,0040 0,0080 0,0120 0,0160 0,0199 0,0239 0,0279 0,0319 0,0359
0,1                    
0,2                    
0,3                    
0,4                    
0,5                    
0,6                    
0,7                    
0,8                    
0,9                    
1,0                    
1,1                    
1,2                    
1,3                    
1,4                    
1,5                    
1,6                    
1,7                    
1,8                    
1,9                    
2,0                    
2,1                    
2,2                    
2,3                    
2,4                    
2,5                    
2,6                    
2,7                    
2,8                    
2,9                    
3,0                    
3,5                    
4,0                    

 

 

Таблица П.1.4.

Квантили распределения величины d

 

 
  0,7409 0,8899 0,7153 0,9073 0,6675 0,9359
  0,7452 0,8733 0,7236 0,8884 0,6829 0,9137
  0,495 0,8631 0,7304 0,8768 0,6950 0,9001
  0,7530 0,8570 0,7360 0,8686 0,7040 0,8901
  0,7559 0,8511 0,7404 0,8625 0,7110 0,8827
  0,7583 0,8468 0,7440 0,8578 0,7167 0,8769
  0,7604 0,8436 0,7470 0,8540 0,7216 0,8722
  0,7621 0,8409 0,7496 0,8508 0,7256 0,8682
  0,7636 0,8385 0,7518 0,8481 0,7291 0,8648

 

 

Таблица П.1.5.

Значения вероятности Р для вычисления величины

 

при
1% 2% 5%
    0,98 0,98 0,96
11 - 14   0,99 0,98 0,97
15 - 20   0,99 0,99 0,98
21 - 22   0,98 0,97 0,96
    0,98 0,98 0,96
24 - 27   0,98 0,98 0,97
28 - 32   0,99 0,98 0,97
33 - 35   0,99 0,98 0,98
36 - 45   0,99 0,99 0,98

 

ПРИЛОЖЕНИЕ 2. ОБРАЗЕЦ ВЫПОЛНЕНИЯ И ОФОРМЛЕНИЯ ЛАБОРАТОРНОЙ РАБОТЫ

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

Марийский государственный технический университет

Кафедра ИВС

 

Лабораторная работа № 2



Поделиться:


Последнее изменение этой страницы: 2016-12-28; просмотров: 729; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.225.195.4 (0.008 с.)