Geeks With Blogs

News

View Anthony Trudeau's profile on LinkedIn

Add to Technorati Favorites


Anthony Trudeau

NDepend is a Visual Studio add-in designed for intense code analysis with the goal of high code quality. NDepend uses a number of metrics and aggregates the data in pleasing static and active visual reports.

In the last few months I put together a review of the add-in in three parts.  In this article I wrap the review up and provide my conclusion and recommendation.

Go here to get caught up:  Part 1 | Part 2 | Part 3

Good and the Bad

No review would be complete without the obligatory like-dislike list.  The first three parts of the review are focused on the software.  With this article I bring in the whole picture based on my experiences.

Good

  • Visual tools
  • Performance
  • Support response time
  • Price

Bad

  • Documentation
  • VS Integration
  • No installer

Bad

I’ll start with the bad, because overall my assessment of NDepend is positive.

Documentation is important for me.  Some people rarely if ever look at documentation.  I like to dig through the documentation.  It’s a stylistic way of learning and I’m not alone.  NDepend does have documentation.  Unfortunately, the implementation is inconsistent and is often comprised only of short tool tips.  Sometimes these tooltips aren’t easy to notice and going on an Easter egg hunt for them is not my idea of fun.

The integration of NDepend into Visual Studio needs some polish.  This is likely due in part to poor documentation and guidance from Microsoft on integrating into Visual Studio.  The point of documentation is sort of ironic.  However, the point exists that other tools integrate better into Visual Studio.  My biggest complaint is windows such as the CQL Edit Window not remembering their state.

The subject of the installer is not major.  However, installers are expected in this day and age.  I can let this pass for applications like Eclipse, but not a professional, commercial application like NDepend.  I have a certain level of comfort with knowing an application is being installed to a permissions restricted area consistent with other applications on my computer.  I can do all of this myself, but I have better things to do.

Good

The visual tools are amazing.  The report is the meat of the application, but the tools are the dessert.  Without the tools I would have lost interest in using NDepend.  My favorite is the Dependency Matrix just in case that hasn’t been made clear yet.

I haven’t mentioned performance in my evaluation so far, because it hasn’t been an issue.  I have not benchmarked builds with and without the tool.  Undoubtedly there is some cost to the analysis that is being run, but it’s not enough for me to care.

In my evaluations I’ve also avoided talking about anything outside of the actual tool itself.  I cannot speak to the sales experience, because I didn’t purchase the tool myself.  However, I’ve raised a few questions with NDepend support since I started evaluation and the responses have been fast.  I have no reason to believe that my support experience is any different than others, but it’s possible.

And finally price.  I purposely didn’t look at the price of the tool until writing this conclusion article.  I feel that knowing the price changes the expectations and I wanted my expectations to be solely what I would expect out of a performance code analysis tool.  I was happy to see that the price is fair, and just as importantly the licensing is easy to understand.

The Skinny

NDepend exceeded my expectations.  I went into the evaluation skeptical as is my nature.  I knew when I accepted the offer to evaluate the tool in exchange for a license that I was taken on the responsibility to give it a fair shake.  I take that responsibility seriously.  And I’m pleased to say that after using this tool it will be something I continue to use and recommend others to use.

Disclaimer: Patrick Smacchia contacted me about reviewing NDepend. I received a free license in return for sharing my experiences and talking about the capabilities of the add-in on this site. There is no expectation of a positive review elicited from the author of NDepend.

Posted on Saturday, April 28, 2012 4:16 PM Visual Studio , NDepend | Back to top


Comments on this post: NDepend Evaluation: Conclusion

# re: NDepend Evaluation: Conclusion
Requesting Gravatar...
I wouldn't say not having an installer is not that bad. I am a consultant, and there has been a number of times I have gone to a client site and the developers do not have the right to install software. It can be quite painful to get the help desk allow developer to install software.
Left by Phil Bolduc on Apr 30, 2012 10:30 AM

# re: NDepend Evaluation: Conclusion
Requesting Gravatar...
Interesting point. Doesn't that beg the question if the developers should install any software (whether by installer or XCopy) if the company has such a policy? It would seem that it would be skirting the policy and leaving the employee exposed to punishment.
Left by Anthony Trudeau on Apr 30, 2012 10:36 AM

# re: NDepend Evaluation: Conclusion
Requesting Gravatar...
Anthony, we are glad you are finding the tool useful!

Concerning the tool integration in VS, the limitations you see are VS addin technology limitations. Hopefully we will switch to VS extension API in the year (for VS11) and this will get rid of this pesky VS remembering Wnd state.

Concerning the tool installer, this is an option we are thinking of for the future, stay tuned...

Concerning documentation, please let us know any place where a documentation is missing or could have been more obviously packed. We put a lot if info toolTip embedded there and there in the tool UI, but it seems it is not enough.
Left by Patrick Smacchia (NDepend Team) on Apr 30, 2012 2:11 PM

# re: NDepend Evaluation: Conclusion
Requesting Gravatar...
Inconsistency is my main problem with the documentation. The short tooltips are annoying, but not so much as trying to figure out where to get help. Just as I get used to looking for the little “i” icon it switches to being a link to online documentation, then over here it’s a toolbar button that opens up a tab in Visual Studio, and on other areas like the dependency matrix its pop-up context sensitive help. Is there a Visual Studio achievement for implementing help as many ways as possible? I think your team has won it by now if there is! :)
Left by Anthony Trudeau on May 07, 2012 11:14 PM

# re: NDepend Evaluation: Conclusion
Requesting Gravatar...
Good evaluation, thanks for it
Left by jessyberlin on Oct 18, 2012 9:34 AM

Your comment:
 (will show your gravatar)


Copyright © Anthony Trudeau | Powered by: GeeksWithBlogs.net