RegionMap
data class RegionMap(val regions: List<Region> = emptyList(), val edges: List<RegionEdge> = emptyList(), val source: RegionSource = RegionSource.PATH_PREFIX, val modularity: Double = 0.0)(source)
The project collapsed to regions and the flows between them.
Parameters
regions
Regions, largest first.
edges
Aggregated inter-region dependencies, heaviest first.
source
Where the grouping came from.
modularity
Newman modularity Q of the partition, roughly [-0.5, 1]. Above about 0.3 means the groups genuinely correspond to how the modules depend on each other.
Near or below zero is not automatically a problem: a layered architecture is designed so that most edges cross a boundary - features depend on core, core depends on model - so a layer partition legitimately scores low. Read it as "are these groups also dependency clusters?", which is a different question from "are these groups correct?".
Constructors
Link copied to clipboard
constructor(regions: List<Region> = emptyList(), edges: List<RegionEdge> = emptyList(), source: RegionSource = RegionSource.PATH_PREFIX, modularity: Double = 0.0)