views:

530

answers:

2

I recently downloaded ndepend and ran an analysis on an open source project I participate in.

I did not now where to look next - a bit of visual and information overload and it turned out I don't even know where to start.

Can anyone suggest starting points?

  • What information should I look for first?
  • What points out problems in the code (in a BIG way)?
  • What would the low hanging fruit that can immediately seen?
+11  A: 

Scott Hanselman / Stuart Celarier / Patrick Cauldwell's poster with ndepend metrics has some useful information on it. Rather than trying to break down all the heuristics being used I'd focus on only a few at a time starting with "zone of pain / zone of uselessness" and cyclomatic complexity.

There is also a podcast which covers some of the basics of the tool.

Between that and running nDepend on a few different projects you may be able to start gathering useful data that you can make into insights.

David in Dakota
+10  A: 

When starting with NDepend, the most important things to look at is dependencies, with both the graph view, that works hand-in-hand with the matrix view. Once you master these 2 views, you'll be able to pinpoint where the code is well layered or not, and where developers made mistake.

The second most important thing is to understand what Code Query Language can bring to your shop by letting you define queries on your code and rules. Here is a good summarize of rules you can write with CQL.

Then it'll be time to learn more in-depth feature, such as the possibility to compare 2 versions of your code base, the various code metrics and why they are useful, enforcing statically purity and immutability, controlling automatically test coverage...

Patrick Smacchia - NDepend dev