aws-samples / amazon-documentdb-samples
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 27 units with 484 lines of code in units (49.6% of code).
    • 1 very long units (182 lines of code)
    • 0 long units (0 lines of code)
    • 1 medium size units (24 lines of code)
    • 16 small units (219 lines of code)
    • 9 very small units (59 lines of code)
37% | 0% | 4% | 45% | 12%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
ts100% | 0% | 0% | 0% | 0%
js0% | 0% | 7% | 72% | 19%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
awsconfig-docdb/lib100% | 0% | 0% | 0% | 0%
awsconfig-docdb/lib/functions/instances-homogeneous-rule0% | 0% | 24% | 66% | 10%
awsconfig-docdb/lib/functions/cluster-parameter-group-rule0% | 0% | 0% | 73% | 26%
awsconfig-docdb/lib/functions/cluster-backup-retention-rule0% | 0% | 0% | 73% | 26%
appsync-docdb0% | 0% | 0% | 65% | 34%
awsconfig-docdb/lib/functions/cluster-parameter-group-remediation0% | 0% | 0% | 100% | 0%
awsconfig-docdb/lib/functions/cluster-deletion-protection-remediation0% | 0% | 0% | 100% | 0%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
constructor()
in blogs/awsconfig-docdb/lib/amazon-documentdb-aws-config-stack.ts
182 3 3
async function evaluateChangeNotificationCompliance()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
24 7 2
async function getConfigurationItem()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
17 3 1
async function getConfigurationItem()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-rule/index.js
17 3 1
async function getConfigurationItem()
in blogs/awsconfig-docdb/lib/functions/cluster-backup-retention-rule/index.js
17 3 1
async function connectToDB()
in blogs/appsync-docdb/index.js
17 1 0
function isApplicable()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
14 6 2
function isApplicable()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-rule/index.js
14 6 2
function isApplicable()
in blogs/awsconfig-docdb/lib/functions/cluster-backup-retention-rule/index.js
14 6 2
async function getDbClusterIdentifier()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-remediation/index.js
13 3 1
function convertApiConfiguration()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
13 3 1
function convertApiConfiguration()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-rule/index.js
13 3 1
function convertApiConfiguration()
in blogs/awsconfig-docdb/lib/functions/cluster-backup-retention-rule/index.js
13 3 1
async function getDbClusterIdentifier()
in blogs/awsconfig-docdb/lib/functions/cluster-deletion-protection-remediation/index.js
13 3 1
async function getConfiguration()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
11 2 3
async function getClusterInstances()
in blogs/awsconfig-docdb/lib/functions/instances-homogeneous-rule/index.js
11 1 1
async function getConfiguration()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-rule/index.js
11 2 3
async function getConfiguration()
in blogs/awsconfig-docdb/lib/functions/cluster-backup-retention-rule/index.js
11 2 3
async function evaluateChangeNotificationCompliance()
in blogs/awsconfig-docdb/lib/functions/cluster-parameter-group-rule/index.js
10 2 2
async function evaluateChangeNotificationCompliance()
in blogs/awsconfig-docdb/lib/functions/cluster-backup-retention-rule/index.js
10 2 2