One of the challenges, I always faced was the availability of approaches for quantification of the aspects such as right coupling among classes for better design; less # of lines of code within a class/methods and the complexity measure of the code to take the necessary actions to make the code base maintainable and of higher quality. VS2008 provides a few metrics in this regard. I felt these metrics definitely help us fine tune the quality of the code and even the class design through a statistical approach.

http://blogs.msdn.com/fxcop/archive/2007/10/03/new-for-visual-studio-2008-code-metrics.aspx

• Maintainability Index
       -  the maintainability index has been re-set to lie between 0 and 100.  How and why was this done?

• Cyclomatic Complexity
       -  calculated by counting the number of decision points (such as if blocks, switch cases, and do, while, foreach and for loops) and adding 1. This number is also a good indication on the number of unit tests it will take to achieve full line coverage. Lower is typically better.

• Depth of Inheritance
        - depth of inheritance indicates the number of types that are above the type in the inheritance tree.

• Class Coupling
        - indicates the total number of dependencies that the item has on other types.

• Lines of Code
       - measure of the total number of executable lines of code. This excludes white space, comments, braces and the declarations of members, types and namespaces themselves. Lower is typically better

Reference:

http://blogs.msdn.com/fxcop/archive/tags/Code+Metrics/default.aspx
http://blogs.msdn.com/fxcop/archive/2007/11/20/maintainability-index-range-and-meaning.aspx
http://blogs.msdn.com/fxcop/archive/2007/10/03/new-for-visual-studio-2008-code-metrics.aspx