aws-samples / backup-recovery-with-aws-backup
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 22 units with 638 lines of code in units (16.8% of code).
    • 1 very long units (105 lines of code)
    • 2 long units (119 lines of code)
    • 10 medium size units (303 lines of code)
    • 4 small units (68 lines of code)
    • 5 very small units (43 lines of code)
16% | 18% | 47% | 10% | 6%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
py16% | 18% | 47% | 10% | 6%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
Lambda/BackupOrgPolicyManager/src30% | 18% | 41% | 4% | 5%
Lambda/TagOnRestore/src0% | 23% | 44% | 21% | 10%
ROOT0% | 0% | 100% | 0% | 0%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
def lambda_handler()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
105 21 2
def check_properties()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
65 11 1
def __get_tags_by_resource()
in Lambda/TagOnRestore/src/TagOnRestore.py
54 21 4
def create_and_attach_policies()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
50 8 6
def handle_restore_event_data()
in Lambda/TagOnRestore/src/TagOnRestore.py
38 8 2
def get_resource_tags()
in Lambda/TagOnRestore/src/TagOnRestore.py
36 7 4
def setup()
in setup_limit_to_central_vault.py
32 4 5
def __set_tags_by_resource()
in Lambda/TagOnRestore/src/TagOnRestore.py
29 9 5
def get_policy()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
29 9 3
def setup()
in setup_limit_to_org.py
24 2 3
def send()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
23 2 6
def boto3_client()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
21 2 3
def create()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
21 2 1
def handle_aws_backup_event()
in Lambda/TagOnRestore/src/TagOnRestore.py
19 5 2
def detach_policy()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
17 4 3
def handler()
in Lambda/TagOnRestore/src/lambda_handler.py
16 5 2
def parse_arn()
in Lambda/TagOnRestore/src/TagOnRestore.py
16 3 2
def __init__()
in Lambda/TagOnRestore/src/TagOnRestore.py
10 2 3
def detach_policy_from_target_list()
in Lambda/BackupOrgPolicyManager/src/BackupOrgPolicyManager.py
10 4 3
def refresh_tags_for_existing_restore_jobs()
in Lambda/TagOnRestore/src/TagOnRestore.py
9 3 2