aws-samples / aws-cdk-healthlake-knowledge-analyzer
Conditional Complexity

The distribution of complexity of units (measured with McCabe index).

Intro
  • Conditional complexity (also called cyclomatic complexity) is a term used to measure the complexity of software. The term refers to the number of possible paths through a program function. A higher value ofter means higher maintenance and testing costs (infosecinstitute.com).
  • Conditional complexity is calculated by counting all conditions in the program that can affect the execution path (e.g. if statement, loops, switches, and/or operators, try and catch blocks...).
  • Conditional complexity is measured at the unit level (methods, functions...).
  • Units are classified in four categories based on the measured McCabe index: 1-5 (simple units), 6-10 (medium complex units), 11-25 (complex units), 26+ (very complex units).
Learn more...
Conditional Complexity Overall
  • There are 2,211 units with 21,390 lines of code in units (76.0% of code).
    • 0 very complex units (0 lines of code)
    • 20 complex units (1,550 lines of code)
    • 107 medium complex units (4,535 lines of code)
    • 203 simple units (4,130 lines of code)
    • 1,881 very simple units (11,175 lines of code)
0% | 7% | 21% | 19% | 52%
Legend:
51+
26-50
11-25
6-10
1-5
Alternative Visuals
Conditional Complexity per Extension
51+
26-50
11-25
6-10
1-5
py0% | 7% | 21% | 19% | 52%
js0% | 0% | 0% | 25% | 74%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
assets/lambda_helper_neptune/python/rdflib0% | 8% | 20% | 21% | 48%
assets/lambda_helper_neptune/python0% | 3% | 26% | 11% | 58%
assets/lambda_helper_neptune/python/isodate0% | 0% | 32% | 27% | 40%
assets/lambda_helper/python0% | 0% | 11% | 12% | 76%
assets/ka-webapp/src0% | 0% | 0% | 36% | 63%
assets/ka-server-webapp0% | 0% | 0% | 4% | 95%
knowledge_analyzer0% | 0% | 0% | 0% | 100%
assets/lambda0% | 0% | 0% | 0% | 100%
assets/ka-webapp/src/store0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
def node()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/notation3.py
158 43 5
def main()
in assets/lambda_helper_neptune/python/rdflib/tools/csv2rdf.py
78 38 0
def eval()
in assets/lambda_helper_neptune/python/rdflib/paths.py
64 37 5
def __repr__()
in assets/lambda_helper_neptune/python/rdflib/extras/infixowl.py
58 36 3
def _parseNoCache()
in assets/lambda_helper_neptune/python/pyparsing.py
76 36 5
def _parse_1_1()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/pyRdfa/parse.py
130 35 5
def eq()
in assets/lambda_helper_neptune/python/rdflib/term.py
51 33 2
def convert()
in assets/lambda_helper_neptune/python/rdflib/tools/csv2rdf.py
87 31 2
def translate()
in assets/lambda_helper_neptune/python/rdflib/plugins/sparql/algebra.py
65 30 1
def manchesterSyntax()
in assets/lambda_helper_neptune/python/rdflib/extras/infixowl.py
99 30 4
def processURI()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/pyRdfa/__init__.py
150 27 3
def remove_comments()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/pyRdfa/extras/httpheader.py
59 27 2
def __init__()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/pyRdfa/termorcurie.py
120 27 4
def qname()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/notation3.py
66 27 4
def parseImpl()
in assets/lambda_helper_neptune/python/pyparsing.py
42 27 4
def acceptable_content_type()
in assets/lambda_helper_neptune/python/rdflib/plugins/parsers/pyRdfa/extras/httpheader.py
46 26 3
def triples()
in assets/lambda_helper_neptune/python/rdflib/plugins/memory.py
60 26 3
def triples()
in assets/lambda_helper_neptune/python/rdflib/plugins/stores/regexmatching.py
32 26 3
def evalPart()
in assets/lambda_helper_neptune/python/rdflib/plugins/sparql/evaluate.py
51 26 2
def create_input_source()
in assets/lambda_helper_neptune/python/rdflib/parser.py
58 26 6