Question: I have a requirement to document the assembly dependencies in a vb6/dotnet application.

What techniques / tools are good for performing this sort of document.

I was planning on using Visio for drawing.

Answer: 
As a start, try [Dependency Visualizer](http://www.codeplex.com/dependencyvisualizer). I've also used [GraphViz's Dot](http://www.graphviz.org) and some custom code for simple dependency generation. The custom code invoked SysInternal's depends.exe recursively and parsed the output. [.NET Reflector](http://www.red-gate.com/products/reflector/index.htm) with the [Graph](http://reflectoraddins.codeplex.com/Wiki/View.aspx?title=Graph) plugin looks pretty promising, too, though I haven't tried that (yet).

What I've always run into was the fact that my graph, unless generated automatically, has to be recreated every time I add to the project and sometimes when I simply change something. So, for me, a manual solution that I became married to for the updates was no solution at all.

I just found the [Dependency Structure Matrix Plug-in](http://tcdev.free.fr/) for .NET Reflector.
Dependency visualizer is good for small projects. For projects or solutions with many inter dependencies it becomes too clumsy to even trace the dependency graph.