Метрики управления потоком (Control Flow Metric)
|
|
|
|
|
Percent Modules with Exceptions
|
5
|
PME
|
Процент модулей с исключениями
|
Average Exceptions per Modules
|
6
|
AVGEM
|
Средний процент исключений в модуле
|
Total Modules
|
8
|
TM
|
Общее число функций (модулей) компонента
|
Total LOC
|
9
|
TLOC
|
Общее число непустых строк, включая строки комментария и заголовки. Включает строки комментария и строки заголовков во всех модулях
|
Max LOC
|
10
|
MLOC
|
Максимальное число непустых строк в любом модуле
|
Ave LOC
|
11
|
AVLOC
|
Среднее число непустых строк в модуле
|
Total NCSS
|
12
|
TNCSS
|
Общее число исходных конструкций. Не включает пустые строки, строки комментария или заголовочные строки во всех модулях
|
Max NCSS
|
13
|
MNCSS
|
Максимальное число некомментированных исходных конструкций в любом модуле
|
Ave NCSS
|
14
|
AVNCSS
|
Среднее число исходных конструкций в модуле
|
Total V(G)
|
15
|
TVG
|
Общая цикломатическая сложность во всех модулях. V(G) вычисляется путем подсчета числа ключевых слов ветвления в каждом модуле
|
Max V(G)
|
16
|
MVG
|
Максимальная цикломатическая сложность в модуле
|
Ave V(G)
|
17
|
AVVG
|
Средняя цикломатическая сложность модулей в компоненте
|
Total Hal's V
|
18
|
THV
|
Общий объем по Хальстеду, вычисленный для модулей Volume = (общее число операторов + общее число операндов) / log2 (число уникальных операторов + число уникальных операндов)
|
Max Hal's V
|
19
|
MHV
|
Максимальный объем V для модуля по Хальстеду
|
Ave Hal's V
|
20
|
AVHV
|
Средний объем V модулей в компоненте системе по Хальстеду
|
Total Hal's E
|
21
|
THE
|
Общие усилия по Хальстеду для компонента. Effort = объем / 2 \ число уникальных операндов / число уникальных операторов / общее число операндов
|
Max Hal's E
|
22
|
MHE
|
Максимальное значение усилий по Хальстеду, вычисленное для модуля
|
Ave Hal's E
|
23
|
AVHE
|
Среднее значение усилий по Хальстеду для модулей в компоненте
|
Max Fan-out
|
24
|
MFO
|
Максимальное число вызовов других функций, вычисленное в модуле
|
Max Fan-in
|
25
|
MFI
|
Максимальное число вызовов данного модуля, вычисленное для компонента
|
Ave Fan-in
|
26
|
AVFI
|
Общее число вызовов других функций, деленное на число модулей в компоненте
|
Max Nesting
|
27
|
MN
|
Наивысший уровень структурной вложенности, вычисленный в компоненте через подсчет ( ``{`` )
|
Ave Nesting
|
28
|
AVN
|
Средний максимум структурной вложенности модулей в компоненте
|
Max Recursive Calls
|
29
|
MRC
|
Максимальное число рекурсивных вызовов в модуле
|
Number of Recursive Modules
|
30
|
NRM
|
Общее число модулей компонента, содержащих рекурсивные вызовы
|
Метрики потока данных (Data Flow Metrics)
|
Total Vars
|
32
|
TV
|
Общее число переменных во всех модулях
|
Total Local
|
33
|
TL
|
Общее число локальных переменных во всех модулях
|
Total Global
|
34
|
TG
|
Общее число глобальных переменных. Данное число не включает препроцессорных директив, таких как #define MAX 10+}
|
Total Unused
|
35
|
TU
|
Общее число переменных, объявленных, но не использованных во всех модулях
|
Ave. Number of Arguments
|
36
|
AVNA
|
Среднее число аргументов (или параметров), использованных во всех модулях
|
Tot Init Vars
|
37
|
TIV
|
Общий процент всех переменных, инициализированных перед использованием
|
Total Number of External Files
|
38
|
TNEF
|
Общее число файловых переменных в каждом модуле
|
Ave. Number of I/O Calls per Module
|
39
|
AVNIOC
|
Среднее число вызовов ввода-вывода, использованных в каждом модуле
|
Ave. Variable Span per Module
|
40
|
AVVSM
|
Среднее число строк между первым и последним использованием каждой переменной в модуле
|
Max. Variable Span per Module
|
41
|
MVSM
|
Максимальное число строк между первым и последним использованием каждой переменной в модуле
|
Total Percent Well-Declared Variables
|
42
|
TPWDV
|
Процент всех переменных в программе, объявленных непосредственно перед использованием.
|
Number of Preprocessor Directives
|
43
|
NPD
|
Число препроцессорных директив, найденных в компоненте
|
Типографические метрики
(Typographic Metrics)
|
Modules with Headers
|
45
|
MH
|
Процент модулей, имеющих комментированные заголовки (комментарии в начале модуля)
|
Modules with Comments
|
46
|
MC
|
Процент модулей, имеющих комментарии между заголовком и концом
|
Percent Modules with Horizontal Spacing
|
47
|
PMHS
|
Процент модулей, которые имеют встроенные горизонтальные отступы (два и более пробелов или табуляции). Отличается от абзацев
|
Percent Modules with Vertical Spacing
|
48
|
PMVS
|
Процент модулей, имеющих вертикальные отступы (пустые строки)
|
Percent Modules with Indentation
|
49
|
PMI
|
Процент модулей со структурированным расположением текста (ведущие пробелы на строке)
|
Ave. Percent Uncrowded Statements within a Module
|
50
|
AVPUS
|
Сумма чисел неуплотненных конструкций (не более одной конструкции на строку) для каждого модуля, деленная на число модулей
|
Ave. Percent Comments within a Module
|
51
|
APCM
|
Средний процент комментированных строк для всех модулей
|
Ave. Percent Meaningful Vars within a Module
|
52
|
APMV
|
Средний процент переменных, имеющих осмысленное имя (имя длиной более 4 символов)
|