Saturday, February 21, 2009

TFS for One Please

This post includes a recent inquiry and my response. Thought it was interesting...names changed to protect the innocent.

I was one of the attendees at the Foo Bar seminar you put together earlier this month. I got a lot out of it and have been inspired to give it a try.

I do not have an employer at the moment, nor any extra equipment lying around. I want to install and configure the whole mess on my laptop (dual-core processor, 2G RAM, Vista SP1 -- so it should handle it). I don't want to use the downloadable virtual image as I want to learn how to do the actual installation process. Hopefully this experience will help me in the future. (Or is this crazy and I should just stick with the virtual image?)

I have copies of all the relevant software, and am looking for some advice on the best way to do the installation and configuration where the Team Server, SQL Server (I already have 2008 Express installed), and Team Suite will all live on the one machine (no domain). My intent is to use it for my personal .Net development projects. Obviously, this is massive overkill, but I want to gain experience with it all that I can use in future consulting assignments.

Do you have any pointers to information that is specific to my situation? I have found a lot of information out there about installing TFS, but it all assumes it is at least going on a dedicated test server.

Thanks, Itching for TFS in Lawrenceburg

Itching for TFS in Lawrenceburg,

Sure, I remember you. Glad you enjoyed the sessions. Your desire to learn is commendable! If I were you...I would probably focus on learning how to leverage TFS instead of installation and configuration.

Realistically, one only stands-up a TFS server once (or maybe twice...a test instance) per customer or full-time employer. While it's not easy, I also wouldn't say it's rocket science either. The instructions are massive but when followed step-by-step, they're effective.

However, if you're set on standing TFS up from scratch, I would definitely leverage a clean VM/VPC Windows 2008 Server instance. Install TFS 2008, SQL 2008, WSS 3.0 and Reporting Services 2008 (I believe they're all available under trial licenses). I don't believe TFS will even install on Vista and/or SQL Express 2008. It will be quite slow but 2GB will support the VM/VPC with 1.5GB dedicated (yes, I struggled through this early last year). You might consider upping your laptop to 4GB with memory so cheap right now...but I understand if you want to do this without further investment.

To further dissuade you from standing up a TFS server from scratch, 8 times out of 10, we leverage a configuration with a separate database server and a separate build server (so 3 servers total with the app server). Thus, in your practice exercise, you won't be able to replicate a true, realistic, common scenario given your current hardware constraints.

Finally, your true value will come from understanding how to customize and leverage TFS: modifying process templates, customizing builds, how different methodologies fit into TFS, how each role can and should leverage TFS, what the individual flavors of VSTS are capable of completing, etc. I've been using VSTS/TFS for 4 years now and I learn something new with it almost daily. It's crazy vast. IMO, you'll be able to demonstrate a lot more value in the configuration and leverage realm vs. the installation realm.

Just my $0.02. Best of luck!



Leon Gersing said... :)

Jeff Hunsaker said... always, thanks for stopping by, Leon. And congrats on the new role!

I'm sure Git rocks (haven't had the pleasure). I also think a product like SVN provides tremendous value and delivers on features...for SCM.

When it comes to Application Lifecycle Management (ALM) and a fully integrated, cohesive product supporting every role on the team, I don't think there's a solution that beats TFS coupled with VSTS. I've been meaning to write up my thoughts on this topic...look for a post soon!

mcollier said...

Nice post, Jeff. I've been asking similar questions myself, now I have the answer. Guess I don't have to bribe you with free beers now. :)

Jeff Hunsaker said...

What? Beers? Err, retracting this post. Will respond offline. ;-)