Лабы по МПО / lore / lab1
.doc
Метрические характеристики (по Холстеду)
Сводная таблица
Измеряемые характеристики программ |
|
Ассемблер |
Число простых (отдельных) операторов |
1 |
43 |
Число простых (отдельных) Операндов |
2 |
48 |
Общее число всех операторов в данной реализации |
N1 |
261 |
Общее число всех операндов в данной реализации |
N2 |
321 |
Словарь программы |
|
91 |
Длина программы |
N |
582
|
Оценки характеристик программы |
|
Ассемблер |
Эталонная длина программы |
^N |
501,4076
|
Реальный объем программы |
V |
3787,5365
|
Потенциальный объем программы |
*V |
15,509 |
Граничный объем программы |
**V |
25.8496 |
Уровень программы |
L |
0,0063
|
Эталонный уровень программы |
^L |
0,0070
|
Интеллектуальное содержание программы |
I |
26,3424
|
Время программирования |
T |
59772,6358
|
Ожидане времени кодирования |
^T |
54457,6730
|
Уровень используемого языка программирования |
lambda |
0,1521
|
Работа программиста |
E |
597726,3580
|
Ожидаемое число ошибок в программе |
B |
1,2625
|
Легко убедиться, что метрические характеристики программы на языке Ассемблера принципиально отличаются от двух предыдущих. Это можно объяснить низким уровнем языка Ассемблера.
5. Выводы
В результате работы был разработан алгоритм интерполяции данных методом наименьших квадратов. Алгоритм был реализован на трёх языках программирования, для каждой реализации были посчитаны метрические характеристики по Холстеду.
Программы на языках Си и Паскаль не слишком отличаются по своим метрическим характеристикам. Это объясняется схожестью данных языков программирования.
Метрические характеристики программы на языке Ассемблера значительно уступают по сравнению с программами на Паскале и Си (Уровень ошибок больше, работа по программированию и время кодирования значительно больше, сложность программы вдвое больше). Это объясняется низким уровнем языка Ассемблера.
Интеллект программы практически не зависит от языка программирования и определяется преимущественно интеллектом разработчика алгоритма.