Скачиваний:
7
Добавлен:
16.08.2023
Размер:
30.64 Кб
Скачать

Необходимые формулы

Для оценки сложности кода используем метрики сложности Холстеда и Джилба. Для расчёта метрики Холстеда используются формулы 1-7.

Длина программы:

, (1)

где - число уникальных операторов программы, включая символы-разделители, процедур и знаки операций (словарь операторов);

- число уникальных операндов программы (словарь операндов);

Объём программы:

, (2)

где N – длина программы;

n – словарь программы (число уникальных операторов и число уникальных операндов);

Оценка реализации:

, (3)

где – число n2 – число уникальных операндов программы (словарь операндов); n1– число уникальных операторов программы, включая символы- разделители, имена знаки операций (словарь операторов);

N2 – общее число операндов в программе;

Трудность понимания:

, (4)

где V – объём программы;

- оценка реализации;

Трудность кодирования:

, (5)

где – число уникальных операторов программы, включая символы- разделители, имена процедур и знаки операций (словарь операторов);

– общее число операндов в программе;

Уровень языка выражения:

, (6)

где V – объём программы;

D – трудоемкости кодирования;

Информационное содержание:

, (7)

где V – объём программы;

D – трудоёмкость кодирования;

Оптимальная модульность:

, (8)

где – число уникальных операндов программы (словарь операндов).

Расчёты

Рассчитаем параметры по выше описанным формулам:

Длина программы ;

Объём программы ;

Оценка реализации ;

Трудность понимания ;

Трудоёмкость кодирования ;

Уровень языка выражения ;

Информационное содержание ;

Оптимальная модульность ;

Для расчета метрики Джилба используются следующие параметры:

  • Значение характеристики определяется количеством используемых операторов if;

  • Значение характеристики определяется количеством используемых в программе циклов;

  • Значение характеристики определяется количеством используемых в программе модулей;

  • Количество связей между модулями ;

Для расчета метрики используются формула (9):

Отношение числа связей между модулями к числу модулей:

f = N4sv / Lmod, (9)

где – количество связей между модулями; Lmod – количество используемых в программе модулей.

Рассчитаем параметры для этой метрики:

;

; ; ;f = 0.

Заключение

Задача по расчету метрик по произвольно выбранному программному коду выполнена. Полученные значения приобретут практический смысл при необходимости сравнения данного кода с каким-то иным, либо при рефакторинге этого кода.