On
MSDN they start to sell the idea of using MSBuild and
Team Foundation Server. It would basically replace any need for Draco.NET or CruiseControl.NET and also NANT.
I totally agree with using Continuous Integration purely because it encourages developers to write their code so that:
- it can be automatically deployed and works on a build server
- it therefore can be pulled up on a developer machine very quickly without manual tweaks or finding dlls referenced on local machines or having to rebuild databases from existing ones rather than running scripts
- it also encourages unit tests to be done which in turn pushes the way code is written to be a lot more modular and therefore better structured and independent of environments because parameters are passed in. Therefore encouraging re-use.
- it encourages standards for code by using tools such as FxCop.
Martin Fowler discusses this in more detail.
Team Foundation Server also has other advantages to do with Unit Testing, GUI Recording Testing, Work Item Tracking, Issue Tracking and New Source Control.