aws-deepracer / aws-deepracer-offroad-sample-project
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 174 units with 2,892 lines of code in units (70.4% of code).
    • 0 very complex units (0 lines of code)
    • 0 complex units (0 lines of code)
    • 10 medium complex units (537 lines of code)
    • 19 simple units (518 lines of code)
    • 145 very simple units (1,837 lines of code)
0% | 0% | 18% | 17% | 63%
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% | 19% | 21% | 58%
cpp0% | 0% | 14% | 4% | 80%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
deepracer_offroad_ws/webserver_pkg/webserver_pkg0% | 0% | 17% | 25% | 56%
deepracer_offroad_ws/qr_detection_pkg/qr_detection_pkg0% | 0% | 44% | 18% | 36%
deepracer_offroad_ws/ctrl_pkg/src0% | 0% | 14% | 4% | 80%
deepracer_offroad_ws/deepracer_offroad_navigation_pkg/deepracer_offroad_navigation_pkg0% | 0% | 18% | 12% | 68%
deepracer_offroad_ws/deepracer_offroad_launcher/launch0% | 0% | 0% | 0% | 100%
deepracer_offroad_ws/qr_detection_pkg/launch0% | 0% | 0% | 0% | 100%
deepracer_offroad_ws/webserver_pkg/launch0% | 0% | 0% | 0% | 100%
deepracer_offroad_ws/deepracer_offroad_navigation_pkg/launch0% | 0% | 0% | 0% | 100%
deepracer_offroad_ws/ctrl_pkg/launch0% | 0% | 0% | 0% | 100%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
def api_load_model()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
106 19 2
def api_list_models()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
73 17 0
def publish_qr_detection_visualization()
in deepracer_offroad_ws/qr_detection_pkg/qr_detection_pkg/qr_detection_node.py
86 14 5
def validate_action_space()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
25 14 2
def get_valid_detection_delta()
in deepracer_offroad_ws/qr_detection_pkg/qr_detection_pkg/qr_detection_node.py
41 13 2
def parse_qr_json()
in deepracer_offroad_ws/qr_detection_pkg/qr_detection_pkg/qr_detection_node.py
17 12 2
def verify_sensor_connection()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
26 12 2
def plan_action()
in deepracer_offroad_ws/deepracer_offroad_navigation_pkg/deepracer_offroad_navigation_pkg/deepracer_offroad_navigation_node.py
32 12 2
def load_lidar_configuration()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
39 11 2
bool AutoDriveCtrl::loadModelReq()
in deepracer_offroad_ws/ctrl_pkg/src/ctrl_state.cpp
92 11 13
def set_led_color()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/led_api.py
33 10 0
def call_service_sync()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/utility.py
32 9 4
def ssh_reset()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/ssh_api.py
35 9 0
void CalibrationCtrl::setCalibration()
in deepracer_offroad_ws/ctrl_pkg/src/ctrl_state.cpp
27 9 2
def api_manual_drive()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/vehicle_control.py
22 8 0
def api_get_calibration()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/calibration.py
28 8 1
def model_file_upload()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/models.py
27 8 0
def get_rescaled_manual_speed()
in deepracer_offroad_ws/deepracer_offroad_navigation_pkg/deepracer_offroad_navigation_pkg/deepracer_offroad_navigation_node.py
21 8 3
def get_rescaled_manual_speed()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/vehicle_control.py
18 7 2
def api_set_drive_mode()
in deepracer_offroad_ws/webserver_pkg/webserver_pkg/vehicle_control.py
26 7 0