aws / aws-sam-cli
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 (53 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 53 components.
  • 345 files, 25,960 lines of code (32.0% vs. main code).
  • "samcli/lib/providers" is biggest, containing 6.96% of code.
  • "installer" is smallest, containing 0% of code.


samcli/lib/providers1807 LOC (2%) 12 files
samcli/lib/sync1659 LOC (2%) 18 files
samcli/lib/build1549 LOC (1%) 7 files
samcli/commands/local1549 LOC (1%) 26 files
samcli/lib/utils1461 LOC (1%) 29 files
samcli/lib/package1252 LOC (1%) 13 files
samcli/commands/deploy1199 LOC (1%) 9 files
ROOT1068 LOC (1%) 16 files
samcli/local/docker957 LOC (1%) 9 files
samcli/commands/init855 LOC (1%) 5 files
samcli/lib/iac840 LOC (1%) 10 files
samcli/commands/_utils838 LOC (1%) 10 files
samcli/cli792 LOC (<1%) 8 files
samcli/commands/pipeline766 LOC (<1%) 10 files
samcli/lib/intrinsic_resolver717 LOC (<1%) 5 files
samcli/lib/bootstrap663 LOC (<1%) 10 files
samcli/lib/observability656 LOC (<1%) 12 files
samcli/lib/init593 LOC (<1%) 23 files
samcli/lib/pipeline585 LOC (<1%) 5 files
samcli/local/apigw545 LOC (<1%) 4 files
samcli/commands/build539 LOC (<1%) 5 files
samcli/lib/deploy453 LOC (<1%) 3 files
samcli/local/lambdafn416 LOC (<1%) 6 files
samcli/commands/package389 LOC (<1%) 4 files
samcli/lib/cookiecutter351 LOC (<1%) 8 files
samcli/commands/delete337 LOC (<1%) 4 files
samcli/commands/sync314 LOC (<1%) 2 files
samcli/lib/schemas303 LOC (<1%) 8 files
samcli/commands/logs301 LOC (<1%) 5 files
samcli/lib/telemetry286 LOC (<1%) 4 files
samcli/local/events280 LOC (<1%) 2 files
samcli/lib/samlib219 LOC (<1%) 4 files
samcli/local/lambda_service180 LOC (<1%) 3 files
samcli/commands/validate168 LOC (<1%) 5 files
samcli/local/common147 LOC (<1%) 2 files
samcli/lib/config122 LOC (<1%) 4 files
samcli/commands/traces101 LOC (<1%) 4 files
samcli/lib/cli_validation88 LOC (<1%) 2 files
samcli/commands/publish83 LOC (<1%) 2 files
samcli/local/layers76 LOC (<1%) 2 files
samcli/lib/warnings65 LOC (<1%) 2 files
samcli/lib/docker65 LOC (<1%) 2 files
samcli/local/services60 LOC (<1%) 2 files
samcli/lib/delete60 LOC (<1%) 2 files
samcli/lib/generated_sample_events58 LOC (<1%) 2 files
samcli54 LOC (<1%) 3 files
installer/pyinstaller49 LOC (<1%) 4 files
samcli/commands19 LOC (<1%) 2 files
samcli/commands/bootstrap19 LOC (<1%) 2 files
samcli/settings4 LOC (<1%) 1 files
samcli/local1 LOC (<1%) 1 files
samcli/lib1 LOC (<1%) 1 files
installer1 LOC (<1%) 1 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-31 09:07