For those of you who use FXCop

  • Do you apply all rules, or do you use a subset that applies to your specific situation?
  • If you're specific about your rules, what process do use to select them  (e.g. does someone do the groundwork and then you meet as a team to decide on the final list; how do you keep the list upto date) ?

We run FXCop as part of our build and are in the process of 'deciding' which rules we'd like to apply (to begin with). The FXCop project file is in XML and i'm thinking on the lines of creating it dynamically so that it uses the 'current' set of applicable rules (or) apply all rules and filter the output using the applicable rules (and then have the build take the appropriate action - fail, log a bug...).

Apart from the rules themselves, i think it's important to also keep information on why certain rules apply and others don't (e.g. project uses it's own variable naming convention). You could just store this information in a doc, but then you'd need to keep FXCop project file in sync with the doc. Importing all rules into a db and tagging applicable ones and yes/no information, would make it easier to generate the FXCop project (i.e. the rules section) ; a web front-end could be  a focal point for a team discussion on which rules apply - or is this overkill?