AssAnalyzer Analysis

Run with AssAnalyzer on


Summary

[summary] [Assemblies] [cycles] [explanations]
Assembly NameTotal ClassesAbstract ClassesNamespacesLevelAbstractnessEfferentAfferentInstabilityDistance
mscorlib18073440.190300.81
Mono_Http1320.15201.000.15
Mono_Data710.14101.000.14
Mono_Security229210.09110.500.41

Assemblies

[summary] [Assemblies] [cycles] [explanations]

mscorlib

Level: Afferent Couplings: 3Efferent Couplings: 0Abstractness: 0.19Instability: 0Distance: 0.81
Uses AssembliesUsed by AssembliesCycles With
NoneMono_Http
Mono_Data
Mono_Security
None

Mono_Http

Level: Afferent Couplings: 0Efferent Couplings: 2Abstractness: 0.15Instability: 1.00Distance: 0.15
Uses AssembliesUsed by AssembliesCycles With
mscorlib
Mono_Security
NoneNone

Mono_Data

Level: Afferent Couplings: 0Efferent Couplings: 1Abstractness: 0.14Instability: 1.00Distance: 0.14
Uses AssembliesUsed by AssembliesCycles With
mscorlib
NoneNone

Mono_Security

Level: Afferent Couplings: 1Efferent Couplings: 1Abstractness: 0.09Instability: 0.50Distance: 0.41
Uses AssembliesUsed by AssembliesCycles With
mscorlib
Mono_Http
None

Cycles

[summary] [Assemblies] [cycles] [explanations]

mscorlib has cycles with

None

Mono_Http has cycles with

None

Mono_Data has cycles with

None

Mono_Security has cycles with

None


Explanations

[summary] [Assemblies] [cycles] [explanations]

The following explanations are for quick reference. More detailed information can be found in the AssAnalyzer documentation.

Number of Classes

The number of concrete and abstract classes (and interfaces) in the Assembly is an indicator of the extensibility of the Assembly.

Number of Packages

The number of packages in the Assembly.

Level

The Level represents where in the hierarchy a Assembly file lives. Level 1 Assembly are at the bottom. Level 2 depend on at least one Level 1. Level 3 depend on at least one Level 2. The Level of the Assembly, used in conjunction with Instability, gives an indication of the Assemblies resilience to change.

Afferent Couplings

The number of other Assemblies that depend upon classes within the Assembly is an indicator of the Assembly's responsibility.

Efferent Couplings

The number of other Assemblies that the classes in the Assembly depend upon is an indicator of the Assembly's independence.

Abstractness

The ratio of the number of abstract classes (and interfaces) in the analyzed Assembly to the total number of classes in the analyzed Assembly.

The range for this metric is 0 to 1, with A=0 indicating a completely concrete Assembly and A=1 indicating a completely abstract Assembly.

Instability

The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the assembly's resilience to change.

The range for this metric is 0 to 1, with I=0 indicating a completely stable Assembly and I=1 indicating a completely instable Assembly.

Distance

The perpendicular distance of a Assembly from the idealized line A + I = 1. This metric is an indicator of the Assembly's balance between abstractness and stability.

A Assembly squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal Assemblies are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0).

The range for this metric is 0 to 1, with D=0 indicating a Assembly that is coincident with the main sequence and D=1 indicating a Assembly that is as far from the main sequence as possible.