SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

Siegfried Pammer

SharpDevelop 4.2: Code Quality Analysis - Dependency Matrix

In SharpDevelop 4.2 Beta we added a new feature which was partially developed by Tomas Linhart during GSoC 2010. Because it was never finished it took us some time to complete it after GSoC. One of the biggest changes after GSoC was the rewrite of the core engine. The engine now uses the new NRefactory 5 Type System in combination with Mono.Cecil.

It is nearly done now, only little changes to the UI will be made until the final release of SharpDevelop 4.2.

To launch the addin, simply select Analysis > Analyze Code Quality from the main menu. First you have to select a set of assemblies from the file system. After the analyzer completes the matrix above will be shown. The colours are  quite simple:

  • Green: left uses top
  • Blue: left is used by top
  • Turquoise: left uses and is used by top

The numbers in the cells tell you how many dependencies there are from left to top or vice versa.

For example this code:

string M(string a) { return a.ToLower(); }

It has three usages of the type System.String and one usage of the method System.String.ToLower.

But in our matrix we show only one dependency on System.String, otherwise the numbers would be too noisy. This shows that there is one class from mscorlib involved in the method M.

This is only a preview and I hope it is useful to you. If you have any suggestions or find bugs, please feel free to post a comment below or on the forums.

 

Comments

 

netcrawler said:

This is a beautiful graph, but how are we supposed to use it? is there a documentation somewhere? are we supposed to reduce the numbers? or the number of non-null cells?

Thank you in advance!

May 8, 2012 12:22 AM
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.