Overly Complex Files (CBRI) is one of the source-code metrics Understand computes across 17+ languages — browse them in the GUI, export and track them, or script them with the Python API.
Overly Complex Files (CBRI)
API ID: CBRIOverlyComplexFilesLanguages: Any
Targets: Architectures, Project
The number of files exceeding more than 3 complexity thresholds
CBR-Insight is a program that grades project quality. (Ludwig, Jeremy, Devin Cline, and Aaron Novstrup. "A case study using CBR-insight to visualize source code quality." 2020 IEEE Aerospace Conference. IEEE, 2020.). It defines 5 metric thresholds for files:
- Lines of Code (LOC, CBRIUsefulLOC) > 200
- Number of Methods (WMC-Unweighted, CBRIMaxWMC) > 12
- Sum Cyclomatic Complexity (WMC-McCabe, CBRIMaxWMCM) > 100
- Response For Class (RFC, CBRIMaxRFC) > 30
- Coupling Between Objects (CBO, CBRIMaxCBO) > 8
This metric counts the number of files whose number of exceeded complexity thresholds ( CBRIThresholdViolations) is greater than 3. For the percentage, use CBRIOverlyComplexFilesPercent.
See also the Project Quality solution.