Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Static Dependencies
Dependencies among components are static code dependencies among files in different components.
  • Analyzed system has 18 links (arrows) between components.
  • The number on the arrow represents the number of files from referring component that depend on files in referred component.
  • These 18 links contain 307 dependencies.
flowchart TB
    n0["ROOT"]
    n1["astyanax-examples"]
    n2["astyanax-test"]
    n3["astyanax-core"]
    n4["astyanax-cassandra"]
    n5["astyanax-queue"]
    n6["astyanax-contrib"]
    n7["astyanax-thrift"]
    n8["astyanax-recipes"]
    n9["astyanax-cql"]
    n10["astyanax-entity-mapper"]
    n7 -->|"46"| n4
    n9 -->|"43"| n4
    n9 -->|"36"| n3
    n7 -->|"35"| n3
    n4 -->|"29"| n3
    n8 -->|"21"| n4
    n8 -->|"18"| n3
    n10 -->|"14"| n4
    n6 -->|"11"| n3
    n10 -->|"11"| n3
    n6 -->|"10"| n4
    n7 -->|"9"| n9
    n5 -->|"7"| n3
    n5 -->|"7"| n4
    n5 -->|"4"| n8
    n6 -->|"3"| n9
    n10 -->|"2"| n8
    n6 -->|"1"| n7
    classDef default fill:#808080,stroke:#ffffff,color:#000000;
    classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
    class n0,n1,n2,n3,n4,n5,n6,n7,n8,n9,n10 highlighted;
    linkStyle 0 stroke:#00688bFF,stroke-width:10px
    linkStyle 1 stroke:#00688bED,stroke-width:9px
    linkStyle 2 stroke:#00688bC9,stroke-width:7px
    linkStyle 3 stroke:#00688bC9,stroke-width:7px
    linkStyle 4 stroke:#00688bB7,stroke-width:6px
    linkStyle 5 stroke:#00688b93,stroke-width:4px
    linkStyle 6 stroke:#00688b82,stroke-width:3px
    linkStyle 7 stroke:#00688b82,stroke-width:3px
    linkStyle 8 stroke:#00688b70,stroke-width:2px
    linkStyle 9 stroke:#00688b70,stroke-width:2px
    linkStyle 10 stroke:#00688b70,stroke-width:2px
    linkStyle 11 stroke:#00688b5E,stroke-width:1px
    linkStyle 12 stroke:#00688b5E,stroke-width:1px
    linkStyle 13 stroke:#00688b5E,stroke-width:1px
    linkStyle 14 stroke:#00688b4C,stroke-width:1px
    linkStyle 15 stroke:#00688b4C,stroke-width:1px
    linkStyle 16 stroke:#00688b4C,stroke-width:1px
    linkStyle 17 stroke:#00688b4C,stroke-width:1px




Explore: 2D force graph | 3D force graph

Show more details about dependencies...
From Component
 --> To Component
From Component
(files with dependencies)
Details
astyanax-thrift
  --> astyanax-cassandra
46 files, 6140 LOC (99%)
46 source files
astyanax-cql
  --> astyanax-cassandra
43 files, 7537 LOC (84%)
43 source files
astyanax-cql
  --> astyanax-core
36 files, 6096 LOC (68%)
36 source files
astyanax-thrift
  --> astyanax-core
35 files, 5278 LOC (85%)
35 source files
astyanax-cassandra
  --> astyanax-core
29 files, 2371 LOC (28%)
29 source files
astyanax-recipes
  --> astyanax-cassandra
21 files, 2435 LOC (85%)
21 source files
astyanax-recipes
  --> astyanax-core
18 files, 2468 LOC (86%)
18 source files
astyanax-entity-mapper
  --> astyanax-cassandra
14 files, 2007 LOC (93%)
14 source files
astyanax-contrib
  --> astyanax-core
11 files, 1608 LOC (82%)
11 source files
astyanax-entity-mapper
  --> astyanax-core
11 files, 1841 LOC (85%)
11 source files
astyanax-contrib
  --> astyanax-cassandra
10 files, 1534 LOC (78%)
10 source files
astyanax-thrift
  --> astyanax-cql
9 files, 1086 LOC (17%)
9 source files
astyanax-queue
  --> astyanax-core
7 files, 1609 LOC (59%)
7 source files
astyanax-queue
  --> astyanax-cassandra
7 files, 1609 LOC (59%)
7 source files
astyanax-queue
  --> astyanax-recipes
4 files, 643 LOC (23%)
4 source files
astyanax-contrib
  --> astyanax-cql
3 files, 570 LOC (29%)
3 source files
astyanax-entity-mapper
  --> astyanax-recipes
2 files, 841 LOC (39%)
2 source files
astyanax-contrib
  --> astyanax-thrift
1 file, 152 LOC (7%)
1 source file
About This Analysis

Static code dependencies refer to the relationships between different modules, libraries, or components in a software system that are established at compile-time rather than at runtime. These dependencies are determined by the code itself, meaning that one module directly references another through imports, includes, or explicit references in the code. Examples include:

  • Library and Module Imports
  • Class Dependencies (Inheritance & Composition)
  • Function and Method Calls
  • Dependency Injection Without Runtime Resolution
Learn more...
  • To learn more about good practices on componentization and dependencies, Sokrates recommends the following resources:


2026-10-07 19:04