aws-deepracer / aws-deepracer-systems-pkg
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 144 units with 1,764 lines of code in units (82.6% of code).
    • 0 very complex units (0 lines of code)
    • 0 complex units (0 lines of code)
    • 10 medium complex units (592 lines of code)
    • 12 simple units (344 lines of code)
    • 122 very simple units (828 lines of code)
0% | 0% | 33% | 19% | 46%
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% | 0% | 33% | 19% | 46%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module0% | 0% | 49% | 19% | 31%
deepracer_systems_pkg/deepracer_systems_pkg/software_update_module0% | 0% | 33% | 14% | 51%
deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module0% | 0% | 31% | 36% | 32%
deepracer_systems_pkg/deepracer_systems_pkg/otg_module0% | 0% | 20% | 19% | 59%
deepracer_systems_pkg/deepracer_systems_pkg0% | 0% | 0% | 0% | 100%
deepracer_systems_pkg/deepracer_systems_pkg/deepracer_systems_scripts_module0% | 0% | 0% | 0% | 100%
deepracer_systems_pkg/launch0% | 0% | 0% | 0% | 100%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
def report_state()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/network_monitor_node.py
51 22 2
def install_thread()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_install_state.py
107 20 1
def __init__()
in deepracer_systems_pkg/deepracer_systems_pkg/software_update_module/software_update_node.py
105 20 1
def transfer_models()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_loader_node.py
71 17 2
def __init__()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_loader_node.py
68 15 1
def __init__()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/network_monitor_node.py
62 12 1
def enable_otg()
in deepracer_systems_pkg/deepracer_systems_pkg/otg_module/otg_control_node.py
20 11 1
def load_lidar_configuration()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_metadata_file_utils.py
18 11 2
def parse_assignment()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/wifi_config_utils.py
17 11 1
def execute_update()
in deepracer_systems_pkg/deepracer_systems_pkg/software_update_module/software_update_node.py
73 11 2
def connect_wifi_using_config()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/network_monitor_node.py
52 10 3
def usb_update_scan()
in deepracer_systems_pkg/deepracer_systems_pkg/software_update_module/software_update_node.py
54 10 2
def __init__()
in deepracer_systems_pkg/deepracer_systems_pkg/otg_module/otg_control_node.py
19 8 1
def get_available_wifi_networks()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/wifi_config_utils.py
24 8 0
def connect_wifi()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/wifi_config_utils.py
31 8 2
def get_list_of_archives()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_loader_node.py
21 7 2
def get_installed()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_loader_node.py
16 7 1
def verify_model_ready()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_loader_node.py
32 7 2
def update_configuration()
in deepracer_systems_pkg/deepracer_systems_pkg/network_monitor_module/network_monitor_node.py
40 7 2
def get_sensors()
in deepracer_systems_pkg/deepracer_systems_pkg/model_loader_module/model_metadata_file_utils.py
16 6 1