AtlasArc

Hotspot Risk

Spring Boot · AtlasArc 1.0.0+d9b43417 · 2026-07-31T22:30:00Z

A diagnostic report that separates unusual dependency shape, complexity pressure, main-sequence distance, and coverage context.

Package Diagnostics Briefing

This chapter separates dependency shape, complexity pressure, and main-sequence distance into explicit diagnostic rules. Start with strict outliers where they exist; a Highest values group is a neutral fallback for orientation, not an AtlasArc problem verdict.

Eligible Packages1026
Strict diagnostic groups4
Strictly selected packages31
Highest values fallbacks0
Cycle packages4
CoverageNot loaded
Rendered as Subsystems · Boundary Risk Open

Where does boundary pressure concentrate across the visible architecture?

Configuration
Focus
project root
Curated view
Boundary Risk
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
Fan-out
Y axis
Fan-in
Size
Classes
Colour
Instability
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more outgoing boundary dependencies; up means more incoming boundary dependencies; size is total class count.
  • Colour follows instability, so red means outgoing-heavy rather than automatically wrong. Use the figure to find boundary surfaces worth inspecting in Topology or Matrix.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Fan-in
0 50 100 150 200 250 300 0 200 400 600 800 spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… context spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… logging spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo…
Fan-out
Rendered as Subsystems · Visibility Surface Open

Which subsystems expose a large public surface?

Configuration
Focus
project root
Curated view
Visibility Surface
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
Relative visibility
Y axis
Abstractness
Size
Classes
Colour
Abstractness
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more visible API surface; up and colour both follow abstractness; size is total class count.
  • This view highlights boundary shape, not direct defect risk. A top/right bubble may be a deliberate public contract area.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Abstractness (A)
0.00 0.20 0.40 0.60 0.80 1.00 0.00 0.20 0.40 0.60 0.80 1.00 spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… context spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… logging spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo…
Rel. Visibility (RV)
Rendered as Subsystems · Internal Tangles Open

Which subsystem areas contain internal cycle pressure?

Configuration
Focus
project root
Curated view
Internal Tangles
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
cycleCount
Y axis
largestCycle
Size
packageCount
Colour
Cycle status
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more fully contained package-cycle groups; up means the largest contained package cycle is larger; size is package count.
  • Only package cycles fully inside the boundary count here. Terminal-package class/file tangles remain separate Package Internals evidence in Topology. Use the cycle tables, Topology, or Matrix for concrete dependency edges and cross-boundary cycle context.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Largest cycle
0 0 0 1 1 1 0 1 2 3 4 spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo… spring-boot-build… org.springframewo…
Cycle groups
Rendered as Hotspots · Coupling Open

Which leaf packages stand out by coupling pressure?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Coupling
Encoding
Bubble
One leaf package
X axis
Fan-out
Y axis
Fan-in
Size
Lines of code
Colour
Instability
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Fan-in
0 5 10 15 20 0 100 200 300 400 config maven condition boot build bind source tools client autoconfigure bundling properties configurationproc… logback autoconfigure json zip autoconfigure context logging convert core type autoconfigure autoconfigure log4j2 json server
Fan-out
Rendered as Hotspots · Visibility Open

Which leaf packages are visible to many callers and far from the main sequence?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Visibility
Encoding
Bubble
One leaf package
X axis
Relative visibility
Y axis
Fan-in
Size
Classes
Colour
Distance from main sequence
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Fan-in
0.00 0.20 0.40 0.60 0.80 1.00 0 100 200 300 400 condition tools boot autoconfigure maven config context properties bind build autoconfigure json core autoconfigure zip autoconfigure autoconfigure jdbc source autoconfigure autoconfigure convert autoconfigure client docker autoconfigure autoconfigure bundling
Rel. Visibility (RV)
Rendered as Hotspots · Abstractness / Instability Open

Which leaf packages sit far from the main sequence?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Zone Map
Encoding
Bubble
One leaf package
X axis
Instability
Y axis
Abstractness
Size
Distance from main sequence
Colour
Distance from main sequence
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Abstractness (A)
0.00 0.20 0.40 0.60 0.80 1.00 0.00 0.20 0.40 0.60 0.80 1.00 util ssl json socket status cache container format web htmlunit buffering system validation entityclasses enversrepositories repositories customhints runtimewiring protocol util metrics autoconfigure autoconfigure livereload hibernate autoconfigure prometheus system
Instability (I)

Package Diagnostic Signals

Use these short lists to find unusual dependency shape, complexity pressure, and main-sequence distance without treating every high value as a problem. Each rule is evaluated across the prepared report scope; cycle participation is shown only as context.

Dependency hubs

Which packages carry unusually broad dependency traffic in both directions?

These packages combine a wide consumer blast radius with broad outward knowledge. Understand their role before changing a contract or moving responsibilities.

AtlasArc found 53 values clearly separated from their peers in this report scope.

Continue in AtlasArcShow me the backboneIsolate the packages with the widest consumer blast radius and inspect who relies on them.

How AtlasArc selected these rows

Strict outliers

Rule: Fan-in or Fan-out is above its upper outlier cutoff and the other degree is at or above its 75th percentile.

Population: 1026 real leaf architecture units with Fan-in and Fan-out. Result: 53 qualified; showing 10.

Cutoff: Fan-in > 4.66 (1026 eligible values); Fan-out > 18.76 (1026 eligible values)

Diagnostic evidence
Packagespring-boot-build.core.spring-boot-test.mainorg.springframework.boot.test.context
Fan-in
43
Fan-out
12
Instability
0.22
Cycle
—
Packagespring-boot-build.module.spring-boot-jdbc.mainorg.springframework.boot.jdbc.autoconfigure
Fan-in
18
Fan-out
16
Instability
0.47
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.context.properties
Fan-in
222
Fan-out
10
Instability
0.04
Cycle
—
Packagespring-boot-build.module.spring-boot-security.mainorg.springframework.boot.security.autoconfigure.actuate.web.servlet
Fan-in
11
Fan-out
13
Instability
0.54
Cycle
—
Packagespring-boot-build.module.spring-boot-micrometer-metrics.mainorg.springframework.boot.micrometer.metrics.autoconfigure
Fan-in
30
Fan-out
9
Instability
0.23
Cycle
—
Packagespring-boot-build.core.spring-boot-testcontainers.mainorg.springframework.boot.testcontainers.service.connection
Fan-in
26
Fan-out
9
Instability
0.26
Cycle
—
Packagespring-boot-build.core.spring-boot-docker-compose.mainorg.springframework.boot.docker.compose.service.connection
Fan-in
17
Fan-out
9
Instability
0.35
Cycle
—
Packagespring-boot-build.module.spring-boot-actuator-autoconfigure.mainorg.springframework.boot.actuate.autoconfigure.web.server
Fan-in
10
Fan-out
15
Instability
0.60
Cycle
—
Packagespring-boot-build.module.spring-boot-r2dbc.mainorg.springframework.boot.r2dbc.autoconfigure
Fan-in
9
Fan-out
12
Instability
0.57
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot
Fan-in
169
Fan-out
8
Instability
0.05
Cycle
Architectural

Incoming-heavy packages

Which packages are unusually depended on while relying on relatively little?

These are load-bearing packages whose contracts may affect many callers even though their own outward dependency surface stays comparatively narrow.

AtlasArc found 68 values clearly separated from their peers in this report scope.

Continue in AtlasArcShow me the backboneTrace the callers that make these packages part of the project's backbone.

How AtlasArc selected these rows

Strict outliers

Rule: Fan-in is above its upper outlier cutoff, Instability is at most 0.35, and dependency hubs are excluded.

Population: 923 real leaf architecture units with Instability. Result: 68 qualified; showing 10.

Cutoff: Fan-in > 4.66 (1026 eligible values)

Diagnostic evidence
Packagespring-boot-build.core.spring-boot-autoconfigure.mainorg.springframework.boot.autoconfigure.service.connection
Fan-in
63
Fan-out
0
Instability
0.00
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.ssl
Fan-in
63
Fan-out
0
Instability
0.00
Cycle
—
Packagespring-boot-build.module.spring-boot-actuator.mainorg.springframework.boot.actuate.endpoint
Fan-in
61
Fan-out
0
Instability
0.00
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.context.properties.bind
Fan-in
44
Fan-out
3
Instability
0.06
Cycle
Architectural
Packagespring-boot-build.module.spring-boot-health.mainorg.springframework.boot.health.contributor
Fan-in
40
Fan-out
0
Instability
0.00
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.convert
Fan-in
34
Fan-out
2
Instability
0.06
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.context.properties.source
Fan-in
32
Fan-out
2
Instability
0.06
Cycle
Architectural
Packagespring-boot-build.module.spring-boot-actuator.mainorg.springframework.boot.actuate.endpoint.web
Fan-in
31
Fan-out
3
Instability
0.09
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.web.servlet
Fan-in
27
Fan-out
0
Instability
0.00
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.util
Fan-in
22
Fan-out
0
Instability
0.00
Cycle
—

Outgoing-heavy packages

Which packages depend unusually broadly without serving many callers?

These packages know about many parts of the system. They may be healthy coordinators, or responsibilities may have accumulated in one place.

AtlasArc found 1 value clearly separated from its peers in this report scope.

Continue in AtlasArcTicking time bombsInspect the outward dependency seams and decide whether the package's responsibility is still coherent.

How AtlasArc selected these rows

Strict outliers

Rule: Fan-out is above its upper outlier cutoff, Instability is at least 0.65, and dependency hubs are excluded.

Population: 923 real leaf architecture units with Instability. Result: 1 qualified; showing 1.

Cutoff: Fan-out > 18.76 (1026 eligible values)

Diagnostic evidence
Packagespring-boot-build.module.spring-boot-webmvc.mainorg.springframework.boot.webmvc.autoconfigure.actuate.web
Fan-in
0
Fan-out
20
Instability
1.00
Cycle
—

Main-sequence outliers

Which substantial packages sit unusually far from the main sequence?

These packages combine stability and abstraction in an unusual way for this project. That is a design question to inspect, not an automatic defect.

AtlasArc found 28 values clearly separated from their peers in this report scope.

Continue in AtlasArcIdentify risky hotspotsPlace these candidates beside size, dependency reach, and other hotspot evidence before prioritizing work.

How AtlasArc selected these rows

Strict outliers

Rule: Distance is above its upper outlier cutoff and at least 0.50, with total degree or LOC at or above its positive median.

Population: 923 real leaf architecture units with Distance. Result: 28 qualified; showing 10.

Cutoff: Distance > 0.83 (923 eligible values)

Diagnostic evidence
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.system
Distance
1.00
Fan-in
8
Fan-out
0
LOC
696
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.context.metrics.buffering
Distance
1.00
Fan-in
6
Fan-out
0
LOC
376
Cycle
—
Packagespring-boot-build.cli.spring-boot-cli.mainorg.springframework.boot.cli.command.status
Distance
1.00
Fan-in
6
Fan-out
0
LOC
110
Cycle
—
Packagespring-boot-build.buildpack.spring-boot-buildpack-platform.mainorg.springframework.boot.buildpack.platform.json
Distance
1.00
Fan-in
5
Fan-out
0
LOC
387
Cycle
—
Packagespring-boot-build.module.spring-boot-webclient-test.mainorg.springframework.boot.webclient.test.autoconfigure
Distance
1.00
Fan-in
0
Fan-out
5
LOC
263
Cycle
—
Packagespring-boot-build.module.spring-boot-data-jdbc-test.mainorg.springframework.boot.data.jdbc.test.autoconfigure
Distance
1.00
Fan-in
0
Fan-out
5
LOC
231
Cycle
—
Packagespring-boot-build.module.spring-boot-data-r2dbc-test.mainorg.springframework.boot.data.r2dbc.test.autoconfigure
Distance
1.00
Fan-in
0
Fan-out
4
LOC
207
Cycle
—
Packagespring-boot-build.core.spring-boot-autoconfigure.mainorg.springframework.boot.autoconfigure.container
Distance
1.00
Fan-in
4
Fan-out
0
LOC
80
Cycle
—
Packagespring-boot-build.module.spring-boot-devtools.mainorg.springframework.boot.devtools.livereload
Distance
1.00
Fan-in
2
Fan-out
0
LOC
752
Cycle
—
Packagespring-boot-build.core.spring-boot.mainorg.springframework.boot.validation
Distance
1.00
Fan-in
2
Fan-out
0
LOC
225
Cycle
—