views:

25

answers:

1

Does anyone know of a tool, or any solution (preferably free), to automatically generate editable assembly dependency graphs (such as Visio diagrams)?

I have found similar threads online, but the several tools recommended (.Net Reflector Graph add-in, Dependency Visualizer, GraphViz, etc) generate only image files (PNG, JPG, SVG, etc).

The solution I need to reverse engineer is composed of over 75 projects, with hundreds of dlls. Even sub-system graphs are unintelligible, so we want to tweak / edit them, find common recurrences to isolate them into separate graphs, etc. We need something that can do the bulk brainless part for us, but that allows us to take over from there.

Btw, I did find tools to generate the respective matrix representation, which is great, but we still need to have a more straight-forward view of the depths of the graphs.

Thanks in advance.

Thais

A: 

NDepend comes with an interactive and editable dependency graph coupled with a dependency matrix. By default you'll get a dependency graph of .NET assemblies and it is not restricted to assemblies of only one VS solution. NDepend is integrated in VS 2010, 2008 and 2005 and it can shows any kind of graph on your code including:

  • dependencies between assemblies
  • method calling graph,
  • dependencies of namespaces inside a VS project,
  • dependencies of types inside a namespace,
  • classes inheritance graph,
  • graph representing classes coupling between 2 components

etc...

See screenshoots extracted from this blog post: Interactive Code Dependencies Graph

Graph edition: alt text

alt text

alt text

alt text

alt text

Patrick Smacchia - NDepend dev
Thanks, this does help, but as this is a proprietary tool, I'll wait a little longer to see if anyone has a free alternative, otherwise I'll set this as the correct answer.
Thais