Visual Studio Ultimate contains a way to visualize project dependencies for a solution. I do not have access to that edition (I have Pro, but am looking for a solution that will also work when using Express editions).
So, what would you recommend for visualizing project dependencies for a VS2013 solution?
Must Haves:
- Free of charge / Gratis. (Free trial doesn't cut it.)
- Runs on Windows 8 and 8.1.
- Able to handle VS2013 solutions and above;
- Able to handle a mix of VB and C# projects;
- Able to handle circular dependencies (I know, I know. Legacy, okay!? :D);
- Can deal with smurf naming. (Legacy modules have rather long names at times, starting with the same 20ish characters. I don't mind seeing the full names, but if project names are truncated with ellipsis after 30 characters, or if boxes become unwieldingly wide, this would be a problem.)
- Able to handle 100+ projects in one solution.
- Must be useful. (Okay, I could use some help rewording this requirement to a less subjective summary, but here I mean to convey the fact that the visualization will be used for analyzing a decently sized codebase and creating greater understanding, as oppossed to e.g. a visualization that's purely for showing off / creating a poster for your office wall...)
Nice to haves:
- Runs on Windows 7.
- Also works in Visual Studio 2012.
- Pretty diagrams.
- Low learning curve, e.g. easy to get started.
- Ability to rearrange the various projects in the graph.
- Ability to group various projects.
- Ability to save the result in some format (that allows further edits/updates after reopening). (Exporting to PNG/PDF/SVG less important)
What have I tried: / considered
Well, what I've tried? To be honest: nothing yet. A search or two gives me some options:
- Visual Studio Ultimate, which I don't have.
- Dependency Visualizer, which dates from 2008, and does not seem to run in my scenario. The context menu is missing, and calling it from the console says the solution isn't a VS 2005 or 2008 solution (which is correct in fact, I have a 2012 sln).
- Resharper 8's "Project Dependency Graph", which is not gratis. (To be honest, I have version 7, and was considering an upgrade anyway. But that's besides this softwarerecs question for me.)
- NDepend, which is not gratis.
- VSGraph, which may fit the bill, but the GraphViz dependency scares me (it's a great tool, but I fear a lot of manual labor here; that fear may well be irrational though).
In short, I haven't tried much yet. Instead I used my first bit of time to write the above question and ask the experts: what would you recommend?