cdklabs / cdk-nag
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

  • A software system can have one or more logical decompositions.
  • A logical decomposition can be defined in two ways in Sokrates.
  • First approach is based on the folders structure. Components are mapped to folders at defined folder depth relative to the source code root.
  • Second approach is based on explicit definition of each component. In such explicit definitions, components are explicitly named and their files are selected based on explicitly defined path and content filters.
  • A logical decomposition is considered invalid if a file is selected into two or more components.This constraint is introduced in order to facilitate measuring of dependencies among components.
  • Files not assigned to any component are put into a special "Unclassified" component.
Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

  • primary (44 components)

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure (relative to the source code root), with automatically defined folder depth to have at least 10 components.

Bubble Chart | Tree Map
Components
The "primary" logical decomposition has 44 components.
  • 233 files, 10,992 lines of code (85.3% vs. main code).
  • "src/packs" is biggest, containing 41.02% of code.
  • "src/rules/timestream" is smallest, containing 0.17% of code.


src/packs4509 LOC (34%) 5 files
src/rules/s3465 LOC (3%) 11 files
src/rules/rds463 LOC (3%) 14 files
src/rules/ec2455 LOC (3%) 13 files
src/rules/elb387 LOC (3%) 12 files
src/rules/redshift372 LOC (2%) 14 files
src366 LOC (2%) 4 files
src/rules/opensearch307 LOC (2%) 10 files
src/rules/iam299 LOC (2%) 9 files
src/rules/apigw293 LOC (2%) 9 files
src/rules/dynamodb217 LOC (1%) 5 files
src/rules/cloudfront213 LOC (1%) 6 files
src/rules/elasticache175 LOC (1%) 7 files
src/rules/elasticbeanstalk164 LOC (1%) 5 files
src/rules/cognito147 LOC (1%) 6 files
src/rules/vpc145 LOC (1%) 6 files
src/rules/autoscaling144 LOC (1%) 6 files
src/rules/codebuild129 LOC (1%) 6 files
src/rules/secretsmanager126 LOC (<1%) 3 files
src/rules/neptune126 LOC (<1%) 6 files
src/rules/documentdb124 LOC (<1%) 6 files
src/rules/msk116 LOC (<1%) 4 files
src/rules/kinesis114 LOC (<1%) 5 files
src/rules/ecs114 LOC (<1%) 4 files
src/rules/mediastore110 LOC (<1%) 6 files
src/rules/sagemaker86 LOC (<1%) 5 files
src/rules/lambda77 LOC (<1%) 4 files
src/rules/athena74 LOC (<1%) 2 files
src/rules/cloudwatch73 LOC (<1%) 4 files
src/rules/efs71 LOC (<1%) 3 files
src/rules/emr67 LOC (<1%) 4 files
src/rules/cloudtrail63 LOC (<1%) 4 files
src/rules/stepfunctions58 LOC (<1%) 3 files
src/rules/waf50 LOC (<1%) 2 files
src/rules/ecr45 LOC (<1%) 2 files
src/rules41 LOC (<1%) 1 files
src/rules/sqs40 LOC (<1%) 3 files
src/rules/appsync30 LOC (<1%) 2 files
src/rules/quicksight26 LOC (<1%) 2 files
src/rules/kms26 LOC (<1%) 2 files
src/rules/dms23 LOC (<1%) 2 files
src/rules/cloud923 LOC (<1%) 2 files
src/rules/sns20 LOC (<1%) 2 files
src/rules/timestream19 LOC (<1%) 2 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-02-01 02:00