Category Archives: 2913

How code churn is calculated in TFS 2005/2008

Code churn [1] in TFS 2005 and TFS 2008 is calculated using a very simple algorithm: inserted + changed + deleted lines [2].

This is done independently of the contents of the line, which means that everything – incl. comments, blank lines, etc. – is counted.

[1] http://blogs.msdn.com/mohamedg/archive/2007/12/04/code-churn.aspx

[2] http://msdn2.microsoft.com/en-us/library/ms244698(VS.80).aspx

Some Code Analysis Rules gone in Visual Studio 2008

I was very sad to hear that a few beloved rules were removed from code analysis (aka FxCop) in Visual Studio 2008. Here’s a list of the removed rules:


Removed due to removal of data flow engine:


  • CA1062 ValidateArgumentsOfPublicMethods
  • CA1303 DoNotPassLiteralsAsLocalizedParameters
  • CA2100 ReviewSqlQueriesForSecurityVulnerabilities
  • CA2202 DoNotDisposeObjectsMultipleTimes
  • CA2204 LiteralsShouldBeSpelledCorrectly
  • CA2215 DisposeMethodsShouldCallBaseClassDispose
  • CA2241 ProvideCorrectArgumentsToFormattingMethods
  • CA2000 DisposeObjectsBeforeLosingScope

Removed due to high noise or no longer applicable analysis:


  • CA1807 AvoidUnnecessaryStringCreation
  • CA1817 DoNotCallPropertiesThatCloneValuesInLoops
  • CA1818 DoNotConcatenateStringsInsideLoops

Analysis in this rule was moved to IdentifiersShouldBeCasedCorrectly:


  • CA1705 LongAcronymsShouldBePascalCased
  • CA1706 ShortAcronymsShouldBeUppercase

Analysis in this rule was moved to IdentifiersShouldNotContainTypeNames:


  • CA1718 AvoidLanguageSpecificTypeNamesInParameters

Analysis in this rule was moved to OverrideLinkDemandsShouldBeIdenticalToBase:


  • CA2110 SecureGetObjectDataOverrides

For more information why those rules were moved or removed see this explaining post over on the Code Analysis Team Blog as well as this feedback on Microsoft Connect.

Videos on how to improve the quality and integrity of your software solutions

are available on the ASP.NET site:













#6 | Measuring the Business Value of AJAX

(10 minutes, 27 seconds)




#7 | Code Coverage of Automated Tests

(6 minutes, 49 seconds)






#9 | The Effects of Caching

(15 minutes, 36 seconds)




#10 | Using the Load Test Agent

(5 minutes, 43 seconds)




#11 | The Effects of ViewState

(10 minutes, 4 seconds)










PRB: Nothing happens when trying to create new Performance Session in VSTE/SD

You want to create a new performance session, therefor click on the corresponding menu item and NOTHING HAPPENS?


PerformanceTools2


This behavior happens when the Performance Add-In got disabled somehow. To re-enable it try running:


devenv /ResetSkipPkgs


If this doesn’t solve your problem Dave Lubash from the Visual Studio team recommends in his post on the MSDN forums to


repeat it after doing:  devenv /ResetAddin and devenv /ResetSettings.


Good luck!

Managing Test Lists with Visual Studio Team Edition for Software Developers using Ekobit Test Manager

As you probably know the Test Manager within, which is needed to create test lists for your build process and/or check-in policies, is only available in the Visual Studio Team Edition for Software Testers.

Ognjen Bajic has the solution:

Earlier today Ekobit (www.ekobit.com) released “Test Manager Add-In for Visual Studio Team Edition for Software Developers”.  This Add-In makes it possible for developers to manage the lists of tests, build hierarchies and execute tests from the Team Edition for Software Developers just the way they would be able to do using the Test Manager window if they had Team Suite.  Being a VSIP package, Test Manager Add-In is seamlessly integrated in the Visual Studio environment and works as a part of the Visual Studio Team System integrated testing framework.

More on Test Manager Add-In can be found here: http://www.ekobit.com/testmngr.aspx

Download free trial here: http://www.ekobit.com/download_testmngr.aspx

Download: Visual Studio 2005 Team Suite and Team Foundation Server Service Pack 1 (SP1)

Now available for download:

WARNING: Before Installing TFS SP1

Install the following tool that will stop the TFS service sprior to updating them (otherwise your database might get corrupted as explained here):