Analysed by SourceGraph (version 0.7.0.7) using Graphalyze (version 0.14.1.1)
Sunday 22 November, 2015
Please note that the source-code analysis in this document is not necessarily perfect: SourceGraph is not a refactoring tool, and it's usage of Classes is still premature.
Implicitly exported entities refer to class methods that are instantiated but defined elsewhere, or entities whose names start with an underscore . Note that even for Main modules, these implicit exports are included.
All graph visualisations link to larger SVG versions of the same graph.
Here is the current module grouping of functions:
Here is a proposed alternate module grouping:
Using the Chinese Whispers algorithm:
The core of software is calculated by recursively removing roots and leaves of the call graph; as such, it can be considered as the section where all the "real work" is done.
Visualises how far away from the exported root entities an entity is.
The overall cyclomatic complexity is: 115
For more information on cyclomatic complexity, please see: Wikipedia: Cyclomatic Complexity
These functions are those that are inaccessible:
Thentos.Adhocracy3.Backend.Api.Simple.fromA3UserNoPass, Thentos.Adhocracy3.Backend.Api.Simple.fromA3UserWithPass, Thentos.Adhocracy3.Backend.Api.Simple.fromPath, Thentos.Adhocracy3.Backend.Api.Simple.mContentType, Thentos.Adhocracy3.Backend.Api.Simple.mData, Thentos.Adhocracy3.Backend.Api.Simple.mPath, Thentos.Adhocracy3.Types.a3errors
The functions are split up into 3 components. You may wish to consider splitting the code up into multiple libraries.
The code has the following cross-module chains:
Thentos.Adhocracy3.main -> Thentos.Adhocracy3.Backend.Api.Simple.runBackend
These chains can all be compressed down to a single function.
The cyclomatic complexity of the imports is: 2
For more information on cyclomatic complexity, please see: Wikipedia: Cyclomatic Complexity
The imports have the following chains:
Thentos.Adhocracy3 -> Thentos.Adhocracy3.Backend.Api.Simple
These chains can all be compressed down to a single module.
The core of a module is calculated by recursively removing roots and leaves of the call graph; as such, it can be considered as the section where all the "real work" is done.
Visualises how far away from the exported root entities an entity is.
The cyclomatic complexity of Thentos.Adhocracy3.Backend.Api.Simple is: 85.
For more information on cyclomatic complexity, please see: Wikipedia: Cyclomatic Complexity
The module Thentos.Adhocracy3.Backend.Api.Simple has 3 components. You may wish to consider splitting it up.
Visualises how far away from the exported root entities an entity is.
The cyclomatic complexity of Thentos.Adhocracy3.Backend.Core is: 5.
For more information on cyclomatic complexity, please see: Wikipedia: Cyclomatic Complexity
Visualises how far away from the exported root entities an entity is.
The cyclomatic complexity of Thentos.Adhocracy3.Types is: 5.
For more information on cyclomatic complexity, please see: Wikipedia: Cyclomatic Complexity
The module Thentos.Adhocracy3.Types has 2 components. You may wish to consider splitting it up.