awslabs / aws-cloudformation-templates
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.
  • 140 files, 22,735 lines of code (67.7% vs. main code).
  • "aws/services/ECS" is biggest, containing 9.22% of code.
  • "aws/solutions/EC2DomainJoin" is smallest, containing 0.06% of code.


aws/services/ECS2097 LOC (6%) 9 files
aws/services/ElasticLoadBalancing1915 LOC (5%) 4 files
aws/services/CloudFormation1437 LOC (4%) 26 files
aws/services/AutoScaling1416 LOC (4%) 3 files
aws/solutions/OperatingSystems1058 LOC (3%) 5 files
aws/solutions/lambda-backed-cloudformation-custom-resources1047 LOC (3%) 11 files
aws/solutions/CloudFormationEndpointSignals970 LOC (2%) 4 files
aws/solutions/VPCPeering862 LOC (2%) 6 files
aws/services/VPC825 LOC (2%) 2 files
aws/services/IoT818 LOC (2%) 3 files
aws/solutions/StackSetsResource781 LOC (2%) 5 files
community/codestar/python-webservice-lambda764 LOC (2%) 1 files
aws/solutions/CloudFrontCustomOriginLambda@Edge733 LOC (2%) 1 files
aws/solutions/ADConnector681 LOC (2%) 2 files
aws/solutions/PrefixListResource577 LOC (1%) 4 files
aws/services/NeptuneDB543 LOC (1%) 1 files
aws/solutions/VPCFlowLogs502 LOC (1%) 3 files
aws/services/S3443 LOC (1%) 9 files
aws/solutions/AutomateCreatingHanaBackupBucket435 LOC (1%) 1 files
community/solutions/StaticWebSiteWithPipeline425 LOC (1%) 5 files
aws/solutions/DirectoryADClients418 LOC (1%) 1 files
aws/solutions/DirectoryServiceSettings413 LOC (1%) 2 files
aws/solutions378 LOC (1%) 1 files
aws/services/ServiceCatalog339 LOC (1%) 2 files
community/codestar/custom-ci-cd-pipeline275 LOC (<1%) 1 files
aws/solutions/ManagedAD272 LOC (<1%) 1 files
aws/services/RDS244 LOC (<1%) 4 files
aws/solutions/LambaStaticIP237 LOC (<1%) 1 files
aws/services/EC2206 LOC (<1%) 3 files
aws/solutions/S3CrossAccountReplicationWithKMS198 LOC (<1%) 2 files
aws/services/Config189 LOC (<1%) 1 files
aws/solutions/PersistAZMapping147 LOC (<1%) 1 files
community/solutions144 LOC (<1%) 1 files
aws/services/DirectoryService142 LOC (<1%) 1 files
aws/services/DynamoDB118 LOC (<1%) 2 files
aws/solutions/TaggingRootVolumesInEC2118 LOC (<1%) 1 files
community/services/Lambda94 LOC (<1%) 3 files
community/services/RDS88 LOC (<1%) 1 files
aws/services/Cloud987 LOC (<1%) 1 files
community/custom_resources/python_custom_resource_helper87 LOC (<1%) 1 files
aws/services/IAM74 LOC (<1%) 1 files
aws/solutions/S3AccessLogs74 LOC (<1%) 1 files
aws/solutions/Fetch-AMI-From-Parameter-Store51 LOC (<1%) 1 files
aws/solutions/EC2DomainJoin13 LOC (<1%) 1 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-31 18:06