NDepend is a Visual Studio extension designed to help you improve your code quality and reduce your technical debt. It sells for €399 per developer, which is about $462 U.S.
I gave it a try a very small project and a very large project. You open your project in Visual Studio, point NDepend at it, and wait a minute or so for the reports.
NDepend spits out a lot of reports and a lot of metrics, from dependency graphs to tree maps with hot spots showing too much cyclomatic complexity in red.
Here are the small project application metrics:
And here are the large project application metrics:
NDepend gives some basic counts and rule and quality checks, but the most interesting data is the technical debt. Here, both apps get an “A”, but they have 3.69% and 4.81% tech debt. This didn’t print out as nicely on my projects as the demo report from NDepend shown below.
Here you can see the estimated time to bring your tech debt up a letter grade, from a C to a B, is 14 days and 2 hours. The estimated annual interest on your tech debt is 47 days, and that’s up 17 days and 4 hours from the last time the analysis was run.
When you drill into the errors and warnings NDepend shows you, you can also see the cost of fixing or leaving that tech debt. Here is one of the rules I broke in my project with a class that has too many methods (48!). In this case, it’s a test class, so I’m not worried about it. Neither is NDepend, since it estimates this tech debt will cost me 4 minutes and 13 seconds a year.
If you want to tackle your tech debt but don’t know where to start, NDepend can help you asses where your project is today, show your progress, and help you decide which tech debt is most costly and needs to be addressed soonest.