FxCop

from Wikipedia, the free encyclopedia
FxCop
Basic data

developer Microsoft Corp.
Current  version 10.0
operating system Windows
category Static code analysis
License Microsoft Public License
German speaking No
microsoft.com

FxCop is an analysis tool for .NET . It checks the CIL code and the call multigraph of the individual routines for violations of Microsoft's design guidelines and for potential weak points.

description

The software is basically console-oriented. However, FxCop can also be called as an external tool after the build process. There is also a plug- in for Visual Studio 2008 and Visual Studio 2005 . It is integrated in Visual Studio Team System and SharpDevelop . There is also a GUI for standalone operation.

Analysis options

FxCop primarily analyzes seven areas:

  • Nomenclature (dictionary and upper / lower case)
  • Reusability of code and interoperability
  • Referencing of objects and superfluous allocation
  • Security Policy Violations
  • General architecture design guidelines
  • Performance guidelines
  • Globalization Policy

functionality

FxCop analyzes the loaded assemblies . The CIL code is checked and the call graph is analyzed. FxCop uses guidelines according to which the individual criteria are cross-checked. How a policy is handled can be specified in the user configuration. In addition, the checking by the source code can be controlled via preprocessor directives. So z. B. complained but required errors, z. For example, a deliberate and unavoidable design violation can be excluded from the check without generally preventing the check against this guideline.

implementation

FxCop is command line based as well as controllable via a GUI. Integration in Visual Studio is possible. FxCop can also be evaluated by the Team Foundation Server . It can, for. B. If the guidelines are violated, a check-in of the software can be prevented. Policy violations can also be evaluated using metrics, integrated into the reports in TFS and thus included in the quality assessment of software.

Systems supported

FxCop requires .NET 2.0 to run, but it supports checking of all versions from 1.1 to 3.5.

Individual evidence

  1. http://msdn.microsoft.com/de-de/library/ms229042.aspx
  2. http://fxcopaddin.tigris.org/servlets/ProjectDocumentList
  3. http://msdn.microsoft.com/de-de/library/bb429476(VS.80).aspx
  4. For details see MSDN