GoogleCloudPlatform / spanner-migration-tool
Components

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.

Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

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
Component Sizes (Lines of Code)
The "primary" logical decomposition has 22 components.
  • 370 files, 49,362 LOC (100.0% vs. main code).
  • "ui" is biggest, containing 34.77% of LOC.
  • "logger" is smallest, containing 0.06% of LOC.


ui17161 LOC (34%) 176 files
sources8354 LOC (16%) 36 files
webv26904 LOC (13%) 42 files
assessment3563 LOC (7%) 17 files
internal2316 LOC (4%) 11 files
accessors1792 LOC (3%) 36 files
conversion1659 LOC (3%) 11 files
streaming1334 LOC (2%) 4 files
common1209 LOC (2%) 8 files
cmd1078 LOC (2%) 7 files
profiles904 LOC (1%) 3 files
spanner789 LOC (1%) 2 files
proto589 LOC (1%) 2 files
reverse_replication469 LOC (<1%) 1 file
expressions_api260 LOC (<1%) 2 files
dao257 LOC (<1%) 2 files
import_data246 LOC (<1%) 2 files
testing170 LOC (<1%) 2 files
performance143 LOC (<1%) 3 files
schema100 LOC (<1%) 1 file
ROOT37 LOC (<1%) 1 file
logger28 LOC (<1%) 1 file
Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
webv2134 commits (20%)
ui115 commits (17%)
sources114 commits (17%)
conversion99 commits (15%)
internal96 commits (14%)
common70 commits (10%)
cmd64 commits (9%)
ROOT60 commits (9%)
streaming60 commits (9%)
spanner50 commits (7%)
profiles28 commits (4%)
assessment22 commits (3%)
schema18 commits (2%)
accessors14 commits (2%)
reverse_replication10 commits (1%)
testing7 commits (1%)
expressions_api5 commits (<1%)
performance3 commits (<1%)
proto3 commits (<1%)
import_data2 commits (<1%)
logger2 commits (<1%)
dao1 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2025 2024 2023 2022 2021 2020
sources
33
86
141
72
57
ui
22
97
403
468
webv2
15
87
201
124
assessment
89
accessors
5
63
conversion
6
51
29
26
24
internal
8
33
59
25
16
18
cmd
10
30
35
58
11
common
3
30
37
27
2
streaming
23
36
11
spanner
4
8
16
8
9
6
reverse_replication
10
schema
2
4
2
2
3
5
expressions_api
1
5
profiles
6
15
27
import_data
3
testing
3
1
1
2
ROOT
2
6
9
16
27
dao
2
logger
1
1
performance
2
6
proto
4
2


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G assessment assessment assessment--assessment 19 sources sources sources--sources 12 webv2 webv2 sources--webv2 7 ui ui sources--ui 4 spanner spanner sources--spanner 6 cmd cmd sources--cmd 6 schema schema sources--schema 3 webv2--webv2 8 webv2--ui 7 webv2--spanner 5 webv2--schema 3 internal internal internal--assessment 2 internal--sources 7 internal--webv2 6 internal--internal 5 internal--ui 3 internal--spanner 5 internal--cmd 4 accessors accessors internal--accessors 2 internal--schema 3 common common common--sources 7 common--webv2 4 common--internal 6 common--spanner 4 common--accessors 3 expressions_api expressions_api common--expressions_api 4 common--schema 3 ui--ui 6 ui--cmd 2 cmd--assessment 5 cmd--webv2 3 cmd--common 4 cmd--accessors 4 conversion conversion conversion--sources 5 conversion--webv2 5 conversion--internal 5 conversion--common 5 conversion--spanner 3 conversion--cmd 5 conversion--conversion 5 conversion--accessors 3 accessors--accessors 4 expressions_api--sources 3 expressions_api--webv2 3 expressions_api--internal 4 expressions_api--spanner 3 expressions_api--conversion 4 expressions_api--schema 2 schema--spanner 3 schema--conversion 3


2025-05-04 15:17