aws / aws-sdk-go-v2
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 239,156 units with 5,254,572 lines of code in units (89.5% of code).
    • 517 very complex units (109,868 lines of code)
    • 2,370 complex units (256,912 lines of code)
    • 31,114 medium complex units (1,708,697 lines of code)
    • 54,113 simple units (1,881,573 lines of code)
    • 151,042 very simple units (1,297,522 lines of code)
2% | 4% | 32% | 35% | 24%
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
go2% | 4% | 32% | 35% | 24%
java0% | 2% | 7% | 12% | 78%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
service/ec23% | 6% | 39% | 23% | 26%
service/rds8% | 6% | 28% | 32% | 23%
service/securityhub10% | 10% | 35% | 27% | 17%
service/mediaconvert16% | 13% | 29% | 19% | 20%
service/directconnect17% | 1% | 19% | 43% | 17%
service/medialive8% | 10% | 34% | 25% | 20%
service/databasemigrationservice11% | 8% | 24% | 35% | 19%
service/ssm4% | 6% | 24% | 39% | 25%
service/sagemaker2% | 7% | 28% | 40% | 19%
service/lambda9% | 3% | 33% | 30% | 23%
service/lightsail4% | 3% | 39% | 34% | 18%
service/neptune5% | 5% | 29% | 33% | 26%
service/ecs6% | 2% | 29% | 39% | 22%
service/redshift2% | 6% | 31% | 32% | 26%
service/opsworks6% | 5% | 26% | 38% | 23%
service/glue2% | 4% | 30% | 42% | 20%
service/machinelearning12% | 0% | 27% | 39% | 20%
service/apigatewayv25% | 7% | 28% | 38% | 19%
service/elasticbeanstalk5% | 8% | 34% | 29% | 22%
service/cloudfront2% | 3% | 25% | 38% | 30%
service/elasticache3% | 8% | 30% | 32% | 25%
service/storagegateway3% | 3% | 24% | 48% | 20%
service/apigateway2% | 6% | 39% | 31% | 19%
service/docdb3% | 3% | 29% | 35% | 27%
service/autoscaling3% | 4% | 36% | 31% | 24%
service/lexmodelbuildingservice5% | 8% | 28% | 35% | 22%
service/backup3% | 5% | 33% | 36% | 21%
service/gamelift2% | 3% | 29% | 42% | 22%
service/codebuild4% | 7% | 24% | 43% | 19%
service/cloudformation2% | 10% | 33% | 31% | 22%
service/appconfig6% | 6% | 26% | 38% | 22%
service/devicefarm2% | 2% | 27% | 45% | 21%
service/migrationhubrefactorspaces6% | 11% | 33% | 26% | 21%
service/databrew3% | 6% | 24% | 44% | 20%
service/emr2% | 5% | 30% | 38% | 22%
service/drs5% | 5% | 38% | 25% | 25%
service/forecast3% | 8% | 26% | 38% | 23%
service/route532% | 3% | 26% | 38% | 28%
service/batch5% | 4% | 29% | 35% | 24%
service/nimble3% | 1% | 41% | 30% | 23%
service/pinpoint1% | 7% | 42% | 31% | 17%
service/inspector23% | 4% | 35% | 33% | 22%
service/s31% | 4% | 29% | 34% | 30%
service/cognitoidentityprovider1% | 3% | 35% | 35% | 24%
service/comprehend1% | 5% | 32% | 38% | 21%
service/glacier4% | 2% | 33% | 32% | 27%
service/macie22% | 4% | 43% | 26% | 22%
service/efs4% | 2% | 34% | 29% | 28%
service/auditmanager2% | 7% | 24% | 44% | 20%
service/appstream2% | 3% | 28% | 44% | 21%
service/transcribe3% | 4% | 29% | 40% | 22%
service/robomaker2% | 10% | 29% | 34% | 23%
internal/protocoltest<1% | 5% | 26% | 40% | 26%
service/costexplorer2% | 5% | 35% | 39% | 16%
service/lexmodelsv21% | 8% | 37% | 32% | 20%
service/s3control1% | 1% | 29% | 36% | 31%
service/imagebuilder1% | 5% | 41% | 28% | 22%
service/applicationinsights4% | 2% | 21% | 48% | 23%
service/opsworkscm5% | 1% | 21% | 46% | 25%
service/amplify2% | 4% | 31% | 41% | 20%
service/iotwireless1% | 1% | 42% | 29% | 25%
service/mediatailor2% | 9% | 26% | 38% | 22%
service/iot<1% | 5% | 37% | 34% | 22%
service/sms2% | 3% | 34% | 38% | 20%
service/dynamodb1% | 3% | 31% | 35% | 27%
service/codedeploy1% | 4% | 24% | 37% | 32%
service/opensearch1% | 5% | 31% | 39% | 22%
service/cloudwatch1% | 6% | 35% | 31% | 24%
service/cloudtrail2% | 6% | 25% | 36% | 29%
service/xray2% | 5% | 31% | 41% | 19%
service/inspector2% | 2% | 33% | 36% | 25%
service/secretsmanager3% | <1% | 30% | 37% | 27%
service/elasticsearchservice1% | 4% | 31% | 39% | 22%
service/proton1% | 6% | 36% | 34% | 20%
service/translate4% | 1% | 29% | 37% | 26%
service/emrcontainers4% | 1% | 26% | 43% | 25%
service/fsx1% | 6% | 29% | 36% | 26%
service/licensemanager1% | 4% | 39% | 32% | 21%
service/swf1% | 5% | 37% | 32% | 23%
service/elasticloadbalancingv21% | 3% | 33% | 34% | 26%
service/acm3% | 0% | 24% | 39% | 32%
service/mwaa4% | 0% | 26% | 38% | 30%
service/lookoutequipment2% | 5% | 36% | 30% | 24%
service/mturk1% | 2% | 25% | 47% | 22%
service/memorydb1% | 1% | 28% | 42% | 26%
service/directoryservice<1% | 3% | 36% | 35% | 24%
service/kms1% | 1% | 35% | 33% | 28%
service/sesv2<1% | 2% | 29% | 40% | 26%
service/mq2% | 6% | 34% | 34% | 22%
service/pinpointemail1% | 2% | 29% | 40% | 26%
service/sfn1% | 4% | 30% | 37% | 25%
service/grafana3% | 1% | 36% | 32% | 25%
service/wellarchitected1% | 4% | 41% | 30% | 22%
service/redshiftdata3% | 9% | 22% | 41% | 24%
service/elastictranscoder1% | 8% | 37% | 31% | 21%
service/cloudhsm2% | 1% | 22% | 49% | 23%
service/route53domains1% | 1% | 27% | 42% | 25%
service/iotsitewise<1% | 4% | 34% | 33% | 27%
service/customerprofiles1% | 8% | 34% | 33% | 21%
service/eks1% | 3% | 34% | 36% | 23%
service/servicecatalog<1% | 2% | 27% | 48% | 21%
service/kinesisanalyticsv21% | <1% | 36% | 35% | 26%
service/detective2% | 0% | 22% | 41% | 32%
service/snowball1% | 4% | 28% | 42% | 23%
service/guardduty<1% | 3% | 28% | 45% | 22%
service/signer2% | 6% | 34% | 32% | 24%
service/firehose1% | 8% | 35% | 32% | 22%
service/personalize<1% | 11% | 25% | 42% | 20%
service/savingsplans3% | 6% | 23% | 34% | 31%
service/servicequotas1% | 2% | 31% | 36% | 26%
service/configservice<1% | 3% | 26% | 44% | 25%
service/textract2% | 1% | 42% | 27% | 25%
service/migrationhubstrategy1% | 6% | 28% | 38% | 24%
service/ecr<1% | 2% | 31% | 40% | 24%
service/applicationdiscoveryservice1% | 5% | 33% | 33% | 25%
service/rdsdata3% | 7% | 25% | 38% | 24%
service/acmpca1% | 2% | 29% | 33% | 32%
service/quicksight<1% | 4% | 46% | 28% | 20%
service/frauddetector<1% | 4% | 36% | 38% | 19%
service/braket2% | 4% | 27% | 34% | 30%
service/evidently1% | 5% | 30% | 40% | 23%
service/workdocs<1% | 3% | 36% | 32% | 26%
service/mediapackage1% | 10% | 37% | 28% | 22%
service/managedblockchain1% | 5% | 31% | 35% | 26%
service/dax1% | 1% | 29% | 39% | 28%
service/polly2% | 1% | 20% | 39% | 35%
service/appflow<1% | 11% | 24% | 36% | 26%
service/kafka<1% | 4% | 38% | 34% | 21%
service/alexaforbusiness<1% | 1% | 25% | 49% | 21%
service/transfer<1% | 1% | 38% | 34% | 24%
service/codecommit0% | 5% | 25% | 36% | 31%
service/iam0% | 4% | 41% | 26% | 27%
service/kendra0% | 6% | 38% | 31% | 24%
service/mgn0% | 13% | 29% | 31% | 25%
service/greengrass0% | 5% | 30% | 41% | 22%
service/dataexchange0% | 13% | 31% | 31% | 23%
service/cloudwatchevents0% | 7% | 29% | 40% | 23%
service/eventbridge0% | 7% | 29% | 40% | 23%
service/panorama0% | 10% | 32% | 35% | 21%
service/networkmanager0% | 4% | 39% | 35% | 20%
service/chime0% | 2% | 41% | 32% | 24%
service/location0% | 6% | 37% | 30% | 24%
service/workmail0% | 5% | 27% | 43% | 24%
service/cloudsearch0% | 10% | 39% | 28% | 21%
service/rekognition0% | 4% | 44% | 31% | 20%
service/connect0% | 2% | 40% | 32% | 25%
service/resiliencehub0% | 7% | 38% | 29% | 24%
service/comprehendmedical0% | 10% | 27% | 40% | 21%
service/devopsguru0% | 8% | 34% | 35% | 22%
service/mediaconnect0% | 7% | 36% | 34% | 21%
service/appmesh0% | 4% | 34% | 38% | 22%
service/route53resolver0% | 4% | 33% | 38% | 23%
service/lookoutmetrics0% | 7% | 36% | 31% | 24%
service/iotevents0% | 6% | 35% | 32% | 24%
service/voiceid0% | 9% | 33% | 30% | 25%
service/fms0% | 7% | 35% | 35% | 21%
service/transcribestreaming0% | 23% | 18% | 26% | 31%
service/serverlessapplicationrepository0% | 13% | 33% | 26% | 25%
service/datasync0% | 5% | 24% | 47% | 22%
service/computeoptimizer0% | 8% | 40% | 29% | 21%
service/iottwinmaker0% | 6% | 30% | 35% | 27%
service/wafv20% | 3% | 32% | 41% | 23%
service/finspacedata0% | 9% | 31% | 33% | 25%
service/outposts0% | 7% | 27% | 40% | 23%
service/lookoutvision0% | 6% | 38% | 30% | 25%
service/workspaces0% | 2% | 28% | 45% | 22%
service/ram0% | 5% | 33% | 31% | 29%
service/applicationautoscaling0% | 10% | 24% | 40% | 25%
service/accessanalyzer0% | 4% | 35% | 33% | 26%
service/wisdom0% | 4% | 25% | 45% | 24%
service/cloudwatchlogs0% | 3% | 28% | 41% | 25%
service/codegurureviewer0% | 7% | 33% | 32% | 26%
service/iotanalytics0% | 3% | 39% | 31% | 25%
service/codepipeline0% | 2% | 29% | 40% | 27%
service/apprunner0% | 5% | 27% | 43% | 23%
service/servicecatalogappregistry0% | 6% | 23% | 45% | 23%
service/iotdeviceadvisor0% | 9% | 23% | 42% | 24%
service/schemas0% | 4% | 44% | 26% | 24%
service/clouddirectory0% | 1% | 35% | 33% | 28%
service/servicediscovery0% | 4% | 22% | 43% | 29%
service/snowdevicemanagement0% | 8% | 32% | 33% | 25%
service/greengrassv20% | 3% | 37% | 33% | 25%
service/codeartifact0% | 3% | 37% | 36% | 22%
service/organizations0% | 2% | 36% | 32% | 29%
service/amplifybackend0% | 3% | 34% | 43% | 19%
service/ssmcontacts0% | 3% | 37% | 33% | 25%
service/autoscalingplans0% | 9% | 24% | 39% | 26%
service/health0% | 6% | 25% | 44% | 23%
service/globalaccelerator0% | 2% | 27% | 43% | 27%
service/ssmincidents0% | 3% | 35% | 29% | 30%
service/workspacesweb0% | 2% | 39% | 33% | 24%
service/amplifyuibuilder0% | 5% | 31% | 39% | 24%
service/appsync0% | 2% | 35% | 38% | 23%
service/qldb0% | 5% | 26% | 43% | 25%
service/groundstation0% | 3% | 32% | 43% | 21%
service/budgets0% | 3% | 34% | 38% | 23%
service/athena0% | 2% | 26% | 48% | 22%
service/ivs0% | 3% | 29% | 39% | 27%
service/chimesdkmessaging0% | 2% | 43% | 31% | 22%
service/codestar0% | 4% | 24% | 42% | 28%
service/cloudhsmv20% | 5% | 32% | 35% | 26%
service/timestreamquery0% | 4% | 33% | 34% | 27%
service/networkfirewall0% | 2% | 33% | 40% | 23%
service/kafkaconnect0% | 4% | 38% | 30% | 26%
service/shield0% | 2% | 29% | 46% | 21%
service/healthlake0% | 5% | 25% | 42% | 27%
service/worklink0% | 2% | 37% | 27% | 31%
service/dynamodbstreams0% | 10% | 23% | 39% | 27%
service/cognitosync0% | 3% | 34% | 35% | 26%
service/fis0% | 4% | 24% | 46% | 24%
service/iotthingsgraph0% | 2% | 27% | 45% | 25%
service/codeguruprofiler0% | 2% | 29% | 44% | 23%
service/elasticloadbalancing0% | 1% | 32% | 36% | 28%
service/mediapackagevod0% | 3% | 40% | 32% | 23%
service/lexruntimeservice0% | 6% | 34% | 31% | 27%
service/cognitoidentity0% | 2% | 36% | 33% | 27%
service/ses0% | <1% | 39% | 33% | 25%
service/sts0% | 5% | 31% | 33% | 29%
service/kinesis0% | 1% | 30% | 36% | 31%
codegen/smithy-aws-go-codegen0% | 2% | 7% | 12% | 78%
service/iotjobsdataplane0% | 8% | 24% | 33% | 32%
service/iotfleethub0% | 6% | 18% | 38% | 35%
internal/awsutil0% | 49% | 29% | 13% | 7%
service/kinesisanalytics0% | 1% | 29% | 40% | 27%
service/kinesisvideo0% | 2% | 27% | 34% | 34%
service/iotsecuretunneling0% | 5% | 20% | 44% | 29%
service/rum0% | 3% | 30% | 33% | 32%
service/lexruntimev20% | 2% | 33% | 31% | 31%
service/dlm0% | 3% | 32% | 35% | 28%
service/timestreamwrite0% | 2% | 30% | 37% | 29%
service/marketplacecatalog0% | 4% | 29% | 33% | 32%
service/ioteventsdata0% | 2% | 27% | 42% | 27%
service/applicationcostprofiler0% | 6% | 17% | 45% | 31%
service/appintegrations0% | 2% | 34% | 34% | 28%
service/amp0% | 2% | 42% | 26% | 29%
service/ssooidc0% | 6% | 34% | 18% | 39%
service/route53recoverycontrolconfig0% | 1% | 34% | 36% | 27%
service/cloudsearchdomain0% | 6% | 31% | 37% | 24%
service/synthetics0% | 2% | 30% | 39% | 27%
internal/ini0% | 10% | 16% | 26% | 45%
internal/repotools0% | 30% | 36% | 3% | 29%
service/finspace0% | 3% | 24% | 39% | 32%
service/cloudcontrol0% | 2% | 22% | 39% | 35%
service/ebs0% | 3% | 36% | 27% | 32%
service/s3outposts0% | 6% | 14% | 40% | 38%
service/support0% | 1% | 29% | 45% | 23%
service/costandusagereportservice0% | 5% | 16% | 44% | 33%
service/codestarnotifications0% | 2% | 21% | 40% | 36%
service/chimesdkidentity0% | 1% | 43% | 29% | 26%
service/ssoadmin0% | <1% | 36% | 38% | 23%
service/sqs0% | 1% | 34% | 33% | 30%
service/mobile0% | 2% | 35% | 33% | 28%
service/ecrpublic0% | <1% | 28% | 43% | 26%
service/cloud90% | 1% | 37% | 33% | 27%
service/connectparticipant0% | 2% | 25% | 35% | 36%
service/connectcontactlens0% | 5% | 15% | 40% | 37%
service/iot1clickdevicesservice0% | 1% | 28% | 41% | 28%
service/sagemakera2iruntime0% | 3% | 18% | 39% | 37%
service/chimesdkmeetings0% | 1% | 31% | 34% | 32%
service/iot1clickprojects0% | 1% | 27% | 40% | 30%
service/migrationhub0% | 1% | 35% | 36% | 27%
service/mediastoredata0% | 3% | 19% | 40% | 36%
service/codestarconnections0% | 1% | 22% | 48% | 27%
service/wafregional0% | 0% | 33% | 42% | 23%
service/waf0% | 0% | 34% | 42% | 23%
service/sns0% | 0% | 37% | 32% | 30%
service/lakeformation0% | 0% | 33% | 37% | 28%
service/route53recoveryreadiness0% | 0% | 41% | 35% | 23%
service/honeycode0% | 0% | 37% | 35% | 27%
service/resourcegroups0% | 0% | 37% | 34% | 28%
service/datapipeline0% | 0% | 26% | 45% | 27%
service/backupgateway0% | 0% | 25% | 48% | 25%
service/mediastore0% | 0% | 20% | 52% | 27%
service/pi0% | 0% | 29% | 46% | 23%
service/resourcegroupstaggingapi0% | 0% | 27% | 42% | 29%
service/rbin0% | 0% | 30% | 38% | 31%
service/iotdataplane0% | 0% | 30% | 31% | 38%
service/identitystore0% | 0% | 38% | 26% | 34%
service/macie0% | 0% | 26% | 38% | 34%
service/pinpointsmsvoice0% | 0% | 23% | 41% | 35%
service/marketplacemetering0% | 0% | 22% | 38% | 39%
service/route53recoverycluster0% | 0% | 33% | 25% | 41%
service/qldbsession0% | 0% | 36% | 23% | 39%
feature/dynamodb0% | 0% | 29% | 18% | 51%
service/kinesisvideoarchivedmedia0% | 0% | 22% | 36% | 41%
service/elasticinference0% | 0% | 22% | 44% | 32%
feature/dynamodbstreams0% | 0% | 49% | 17% | 33%
service/migrationhubconfig0% | 0% | 27% | 35% | 37%
service/sagemakerfeaturestoreruntime0% | 0% | 22% | 41% | 36%
service/pricing0% | 0% | 24% | 37% | 37%
service/sso0% | 0% | 21% | 42% | 35%
service/account0% | 0% | 21% | 33% | 45%
service/ec2instanceconnect0% | 0% | 18% | 34% | 47%
service/sagemakerruntime0% | 0% | 21% | 32% | 46%
service/personalizeruntime0% | 0% | 23% | 39% | 37%
service/apigatewaymanagementapi0% | 0% | 20% | 38% | 41%
service/marketplaceentitlementservice0% | 0% | 22% | 33% | 43%
service/kinesisvideosignaling0% | 0% | 15% | 41% | 43%
service/personalizeevents0% | 0% | 14% | 33% | 51%
service/appconfigdata0% | 0% | 14% | 41% | 43%
internal/codegen0% | 0% | 26% | 23% | 50%
service/forecastquery0% | 0% | 14% | 40% | 45%
service/sagemakeredge0% | 0% | 15% | 39% | 45%
config0% | 0% | 6% | 24% | 69%
service/marketplacecommerceanalytics0% | 0% | 10% | 49% | 39%
service/workmailmessageflow0% | 0% | 9% | 37% | 52%
service/kinesisvideomedia0% | 0% | 9% | 32% | 57%
aws/protocol0% | 0% | 9% | 17% | 73%
feature/s30% | 0% | 7% | 19% | 72%
aws/retry0% | 0% | 24% | 6% | 69%
aws/signer0% | 0% | 7% | 26% | 65%
service/internal0% | 0% | 4% | 25% | 70%
internal/awstesting0% | 0% | 12% | 12% | 74%
feature/ec20% | 0% | 0% | 18% | 81%
internal/endpoints0% | 0% | 0% | 43% | 56%
example/service0% | 0% | 0% | 92% | 7%
credentials/processcreds0% | 0% | 0% | 57% | 42%
credentials/stscreds0% | 0% | 0% | 40% | 60%
aws/middleware0% | 0% | 0% | 10% | 89%
feature/rds0% | 0% | 0% | 100% | 0%
aws0% | 0% | 0% | 4% | 95%
credentials/ssocreds0% | 0% | 0% | 19% | 80%
aws/defaults0% | 0% | 0% | 31% | 68%
feature/cloudfront0% | 0% | 0% | 5% | 94%
aws/transport0% | 0% | 0% | 0% | 100%
credentials/endpointcreds0% | 0% | 0% | 0% | 100%
credentials/ec2rolecreds0% | 0% | 0% | 0% | 100%
aws/ratelimit0% | 0% | 0% | 0% | 100%
internal/sync0% | 0% | 0% | 0% | 100%
internal/sdk0% | 0% | 0% | 0% | 100%
internal/configsources0% | 0% | 0% | 0% | 100%
aws/arn0% | 0% | 0% | 0% | 100%
credentials0% | 0% | 0% | 0% | 100%
config/codegen0% | 0% | 0% | 0% | 100%
internal/rand0% | 0% | 0% | 0% | 100%
internal/shareddefaults0% | 0% | 0% | 0% | 100%
internal/timeconv0% | 0% | 0% | 0% | 100%
internal/strings0% | 0% | 0% | 0% | 100%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
879 234 2
841 221 2
406 196 2
575 191 2
454 170 2
func awsAwsquery_deserializeDocumentDBInstance()
in service/neptune/deserializers.go
640 170 2
func awsRestjson1_deserializeDocumentM2tsSettings()
in service/medialive/deserializers.go
476 167 2
func awsAwsquery_deserializeDocumentCluster()
in service/redshift/deserializers.go
570 156 2
func awsEc2query_deserializeDocumentInstance()
in service/ec2/deserializers.go
568 156 2
func awsAwsjson11_deserializeDocumentObservation()
in service/applicationinsights/deserializers.go
439 154 2
func awsRestjson1_deserializeDocumentH264Settings()
in service/medialive/deserializers.go
424 147 2
func awsRestjson1_deserializeDocumentH264Settings()
in service/mediaconvert/deserializers.go
416 144 2
func awsRestjson1_deserializeDocumentM2tsSettings()
in service/mediaconvert/deserializers.go
420 144 2
func awsRestjson1_deserializeDocumentH265Settings()
in service/mediaconvert/deserializers.go
412 143 2
func awsRestjson1_deserializeDocumentHlsGroupSettings()
in service/medialive/deserializers.go
382 138 2
func awsAwsjson11_deserializeDocumentOracleSettings()
in service/databasemigrationservice/deserializers.go
374 133 2
func awsAwsquery_deserializeDocumentDBCluster()
in service/neptune/deserializers.go
509 133 2
func awsRestjson1_deserializeDocumentResourceDetails()
in service/securityhub/deserializers.go
274 130 2
func awsAwsjson11_deserializeDocumentS3Settings()
in service/databasemigrationservice/deserializers.go
358 127 2
func awsRestjson1_serializeDocumentResourceDetails()
in service/securityhub/serializers.go
377 125 2