metrology-lab2a-gilb

Практическая работа №2а — метрики Джилба

Дисциплина «Метрология, стандартизация и сертификация в информационных технологиях». Язык анализируемой программы — Python, парсер написан на TypeScript (графический интерфейс в браузере).

Материал Файл
Отчёт (PDF) Метрология_ЛР2а_Отчет.pdf
Отчёт (DOCX) Метрология_ЛР2а_Отчет.docx
Схема алгоритма (ГОСТ 19.701-90) scheme/Схема_алгоритма.png, исходник для draw.io — scheme/Схема_алгоритма.drawio
Анализируемая программа sample/process_matrix.py
Парсер parser/ — исходники в parser/src
Парсер онлайн https://nikitaharkavy.github.io/metrology-lab2a-gilb/parser/

Схема алгоритма

Результат

Метрика Значение
Абсолютная сложность CL 20
Общее число операторов N 49
Относительная сложность cl = CL / N 20 / 49 = 0,4082
Максимальный уровень вложенности CLI 5

Правила подсчёта

CL — число условных операторов:

Селектор match, else и case _ условиями не являются.

N — число операторов:

Не считаются else, case, except, finally, объявления def/class и строки документации.

CLI — максимальный уровень вложенности условного оператора:

Это согласуется с методичкой: оператор выбора с n ветвями даёт n − 1 условий с вложенностью n − 2.