Twelve Step Programs

Over the past few weeks, I've set up several Visual Studio Team Foundation Servers. Granted, this is something I've done a few dozen times since I first arrived, but I feel like I'm starting to get this down to a science. In any case, I wanted to post my own personal 12 steps to getting a combined ATDT set up. It usually takes me about 4 hours, but then I'm also doing other things on my main machine at the same time.

Setting up an ATDT Team Foundation Server:
1) Reimage my machine to saved image of Win2003 SP1 with Office installed
2) Run Microsoft Update
3) Create new image with latest patches
4) Check e-mail, search net for new wallpapers, erase whiteboard, check e-mail, water bamboo plant, reorganize bookshelf, check e-mail
5) Restart and join machine to Domain
6) Install IIS 6.0:
 - Make sure Frontpage Server Extensions are *not* checked
7) Install SQL Server 2005
 - Select all components
 - Use the Default instance
 - Use Local System account rather than a named account; at the bottom of the screen which asks you to select a user, check all boxes so that all services start automatically
 - Use Windows Authentication
 - Select the default collation and configuration options
7a) If developer edition- open Sql Server Surface Area Configuration Manager.
 - Open Surface Area Configuration for Services and Connections
 - Make sure Analysis Services and Database Services both allow local and remote connections. If not, set them to and then restart all SQL components (via SQL Server Configuration Manager)
8) Install Windows Sharepoint Services SP2
 - Use Server Farm
9) Rerun Windows Update
10) Run ATDT installation
 - Use two different users for service account and report account
 - Choose to send out reports via an smtp server with reply address as the service account
11) Install the Team Foundation Client (Team Explorer)
 - Run PCW to create a scratch Team Project
 - Run PCW again to create normal Team Project used by our automated tests
 - Add users to the project and server groups, as desired
12) Test new setup by asking some hapless coworker to "try this out real quick".

Works like a charm every time. I switch hapless coworkers on a dual-rotating basis to keep them guessing, though.