microsoft / Static-Module-Verifier
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 148 units with 3,252 lines of code in units (61.1% of code).
    • 5 very long units (977 lines of code)
    • 5 long units (341 lines of code)
    • 29 medium size units (909 lines of code)
    • 44 small units (655 lines of code)
    • 65 very small units (370 lines of code)
30% | 10% | 27% | 20% | 11%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
cs30% | 10% | 27% | 20% | 11%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
StaticModuleVerifier97% | 0% | 0% | 0% | 2%
SmvInterceptorWrapper83% | 0% | 5% | 10% | 0%
SmvLibrary12% | 18% | 36% | 14% | 17%
SmvCloudWorker46% | 25% | 22% | 5% | 0%
SmvInterceptor0% | 0% | 51% | 38% | 10%
SmvCmdlets0% | 0% | 32% | 67% | 0%
SMVActionsTable0% | 0% | 0% | 60% | 39%
SmvLineCounter0% | 0% | 0% | 30% | 69%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
static int Main()
in SmvInterceptorWrapper/Program.cs
317 44 1
static int Main()
in StaticModuleVerifier/Program.cs
198 33 1
180 29 4
static bool ProcessArgs()
in StaticModuleVerifier/Program.cs
143 27 1
public override void Run()
in SmvCloudWorker/WorkerRole.cs
139 19 0
public CloudSMVActionScheduler()
in SmvLibrary/CloudSMVActionScheduler.cs
90 14 1
public override bool OnStart()
in SmvCloudWorker/WorkerRole.cs
75 6 0
private void ActionComplete()
in SmvLibrary/MasterSMVActionScheduler.cs
65 10 3
private void ActionComplete()
in SmvLibrary/CloudSMVActionScheduler.cs
60 7 1
51 10 1
static string Transform()
in SmvLibrary/Utility.cs
46 3 1
public static bool ValidateXmlFile()
in SmvLibrary/Utility.cs
45 11 2
private static int LaunchAndWait()
in SmvInterceptor/SmvInterceptor.cs
44 2 3
private bool SetSmvVersion()
in SmvCloudWorker/WorkerRole.cs
43 7 1
public void AddAction()
in SmvLibrary/CloudSMVActionScheduler.cs
40 3 3
private void completionThreadFunction()
in SmvLibrary/JobObject.cs
40 6 0
39 4 0
38 3 6
38 4 6
private static void ModifyEnvironment()
in SmvInterceptor/SmvInterceptor.cs
36 12 2