Here's a fictional scenario of a meeting between a TFS Consultant and a IT Director.
TFS Consultant: Hi I'm Alex and I'm the TFS Consultant you hired to work for a brief engagement in your company.
IT Director: Hi please call me George. Oh yes you're the guy putting in the new version control system to replace SourceSafe.
TFS Consultant: Yes that's the plan George. And while I implement the new Version Control would you like to look at implementing any of the other TFS functionality.
IT Director: No thanks. Our processes work very well here. We'll just be using TFS for Version Control.
(Knock on the door)
Accounting Manager Tom: George, I need to get the expenditure numbers by project for year to date.
IT Director: Excuse me Alex. I'd like to get this for you Tom but so far I've only gotten responses from 2 of the 8 project managers and even both of those are mostly inaccurate because the developers aren't responding to the emails to go back to their timesheets and email in the numbers.
Accounting Manager Tom: Well we have to get this by Friday.
IT Director: OK I'll tell the managers to stay late tonight and tomorrow so we can get this done. But please understand Tom that I lost my best PM last week who took a new job and left with the complaint that she had to stay too late too often and had problems with daycare.
Accounting Manager Tom: I see but the CFO insists on this so we must get it done.
IT Director: OK (Tom leave). Umm Alex where were we.
TFS Consultant: We were discussing how I'm going to migrate the version control from SourceSafe to TFS so all your developers & everyone else can have full insight into all the version control for builds & reporting in the future.
IT Director: That's correct. But I'm wondering what you mean by "full insight"?
TFS Consultant: It means that TFS has more capabilites for reporting than SourceSafe ever had and that you can integrate Version Control tighter in with your IT processes such as resource planning, work tracking, timesheets, builds, environments configurations, testing, and process improvement.
IT Director: That's all very interesting but lets make sure we stay focused on the version control migration.
TFS Consultant: OK I will do this. Now once the configuration and migration are complete I can do some testing for you with the reports that'll take a few hours to make sure the Version Control is running smoothly. In the past I prepared a special Sarbanes-Oxley Compliance report that one IT organization found very useful for their auditors.
IT Director: No that won't be necessary. Our processes are fine and we can't afford to do more than configuration and migration.
(Knock at the Door)
Project Manager Patty: Hi George I'm sorry to interrupt but I have something urgent.
IT Director: Yes Patty. What's up?
Project Manager Patty: The internal auditors just called me up yelling that we haven't gotten them the compliance report on our Transactions v2.4 change requests #122, 133, 141, 148 and 162. The problem is that I have no idea how I'm going to get all this information together. I've been working on this for 3 days but can't seem to get all the details pulled together.
IT Director: Have you talked to the Build group to get the information on the days/servers used for the builds?
Project Manager Patty: I talked to their manager Fred a week ago but he's out on vacation this week. The analyst who did it is Jeff but he's tied up doing some paperwork related to the IT resource planning system bug fixes for HR. And the other two analysts William and Susan don't know anything about this so I have to wait til Fred gets back next week.
IT Director: How about talking to Kyle? He's our most experienced project manager. He might know some way to get behind the scenes to find out where the build paperwork is.
Project Manager Patty: I tried getting some of Kyle's time. But he's tied up trying to get the new dev environment setup for the new IT timetracking project. Unfortunately as you know it takes months to get new environments configured around here.
IT Director: That's true. Well why not talk to Mary?
Project Manager Patty: I thought of that too. Unfortunately she's chasing down release paperwork for a few of her change requests that are going in. And I can't even get hold of Bob in the timetracking group so I can get access to the timesheets in order to get them and the SourceSafe history reports to the developers so they can stop their development work for a couple days and go through them to cross-reference their changes with what days & timesheet line items they used for doing the work.
IT Director: Well keep pushing on them because we need to get this done for auditing. And make sure to check with Rhonda to get the requirements and design documents out plus the Requirements Traceability Matrix so the developers do that cross-referencing documentation too. The external auditors yelled at me last time because the internal auditors didn't provide all the data that's necessary for SOX compliance.
Project Manager Patty: Oh I forgot about that. I'll do that too. (She leaves).
IT Director: Whew .... now where were we Alex?
TFS Consultant: I was explaining how I'm going to implement TFS for Version Control and do your SourceSafe migration.
IT Director: That's right.
(Knock on Door)
Project Manager Tim: Hi George, do you have a minute?
IT Director: Sure but make it quick please.
Project Manager Tim: I'm having a real problem with the 2 new Sr. developers we just hired. They don't want to use our timesheet system, maintain the RTM, contact the bug tracking team or requirements team to get userids for their systems, and they keep complaining about our lack of integrated processes in Visual Studio.
IT Director: This isn't good. In filling the last 3 senior slots we looked at hundreds of resumes, interviewed almost 50 people, made 15 offers, 5 never showed, 7 turned us down, 1 starts next week, and these 2 aren't fitting in.
Project Manager Tim: Yes George this is a problem. What do you suggest we do?
IT Director: We should probably put out a new job opening advertisement and call some of the staffing companies. I need you Tim to stay late tonight and I want you to go tell Patty to come see me so we can put the auditors on hold for a week and get ready for another long round of interviewing. Next time we need to make sure we filter out up front to get good cultural fits here with people who will follow our processes.
Project Manager Tim: OK George. And another thing I forgot to tell you is that Nancy my tester has turned in her notice. She's complained that she doesn't have any testing tools that work in our environment.
IT Director: Oh yes she's the one who wanted Microsoft Test Manager. Yeah I heard something about it being used for managing manual and automated tests. She seemed bright. We paid 20K to a headhunter 3 months ago to get her. But another manager also told me she's complained about our buggy test mangement website and the fact that it doesn't integrate with our builds or anything else. But you and I both know Tim that its been useful for us. We've also invested over 500K into this thing so we're not going to replace it ever. And we're not going to spend hundreds of thousands more to integrate it in with everything else. Next time be sure we hire a tester who is fine with our disintegrated processes.
Project Manager Tim: OK George. I'll get on these things right now. (Tim departs)
IT Director: Sorry again Alex. But I'm glad you're still here because I wanted to know something about this TFS. Will it work with Visual Studio 2010 as well as SourceSafe does in Visual Studio 2008?
TFS Consultant: Yes it will George. In Visual Studio you can manage all your TFS work items, builds, versioned items, lab builds, and link in to the portal & reports & other TFS data shared with the testers, managers, auditors, and users who access the data through Microsoft Project, Microsoft Excel, Outlook, or other products. For developers the version control works much the same as it does for SourceSafe. Of course you can establish policies for checkins to make sure that any code changes get correlated with requirements, bugs, tasks, user stories or other work items when being checked in so you can get end-to-end traceability on everything.
IT Director: OK this is good to know. At least I won't have my developers quitting on me if Visual Studio 2010 doesn't connect with Version Control. Sometimes its so hard to get the developers to communicate with the rest of the world. They won't tell their managers when they checkin source code or make changes. The build team has a terrible time getting all the correct artifacts and its an endless loop of circles getting them all to communicate. And the disconnect between the developers and the business analysts and the release management people is really getting bad.
(Knock on Door)
Infrastructure Manager Marcus: Hi George, we have a problem. Got a minute?
IT Director: OK Marcus please make it quick.
Infrastructure Manager Marcus: The team leads for the timetracking system and the new AP system are having an argument. Both of them claim that I had agreed to give them each 3 new servers this week. But we only have 3 servers total and won't have another 3 for 2 more weeks. I need your help refereeing this issue.
IT Director: OK Marcus please send them over at 10am so we can resolve this. (Marcus leaves)
IT Director: I'm curious Alex. How did you guys do servers assignments on your last gig?
TFS Consultant: We used Visual Studio Lab Management in conjunction with System Center Virtual Machine Manager to manage the Hyper-V and VMWare hosts. Each TFS Project Collection would be assigned a group of hosts & SAN libraries for provisioning & managing virtual servers.
IT Director: What does TFS do servers management?
TFS Consultant: Yes in conjunction with the Lab capabilities of Microsoft Test Manager you can use System Center virtual machine templates and machines to create environment templates and then provision environments as you need. When an environment isn't being used you can shut it down in order to conserve memory on your VMWares and Hyper-Vs. And the best part of it all is that you can integrate it in with all your IT processes.
IT Director: OK now you must be fooling me. There is no way to integrate server management in like that.
TFS Consultant: In the past that's correct. TFS 2008 and all the other ALM products out there have no such capability.
IT Director: So I assume you're going to tell me that TFS 2010 can do this. Maybe you'll tell me it can even do timesheets for everyone?
TFS Consultant: On my last gig we actually did this. In TFS is a capability called Work Item Tracking. We used the Agile out of the box work item types of Task, Bug, Risk, User Story, and Test Case quite extensively. We built 2 new work item types called Time Period and Task Period for timesheets. The developers did all their time tracking in Visual Studio. Whenever they checked in code they'd have to associate their checkins with the tasks they were working on. And their timesheets would autopopulate with the system's best guess on how they spent their days according to their versioned items checkins and then they'd make adjustments each time period to submit a timesheet. For some groups they did time tracking by week, others did it semimonthly, others did it biweekly, and others on a monthly basis. All of their needs were fulfilled.
IT Director: Hmmm this is interesting. But can TFS do resource planning?
TFS Consultant: Sure. As new projects are prioritized your PM(s) can quickly access historical data in many types of reports and make estimates on when & how much they'll need of the different resource types. In addition they can organize this by area/iteration.
IT Director: But how does it do build management and release management?
TFS Consultant: These capabilities are integral to TFS and you get full end-to-end traceability through the types of work items and the relations between work items with versioned items, builds, environments, and other links/artifacts.
IT Director: Testing and Requirements too?
TFS Consultant: Yes these capabilities are integral too.
IT Director: How about providing all the full end-to-end traceability reports for the auditors, accounting and other groups throughout the company?
TFS Consultant: With TFS you can do all this out of the box.
IT Director: Wow this is amazing. But how do you handle situations where managers have different workflows and metrics they need to track?
TFS Consultant: We can customize their process templates, work item types, workflows, and handle all those scenarios.
IT Director: What if a manager doesn't want to use TFS? Most of our managers like to use Microsoft Project.
TFS Consultant: Microsoft Project is an integral TFS tool.
IT Director: What about Excel?
TFS Consultant: Same.
IT Director: What about our Java developers? They use Subversion and Maven for version control and builds.
TFS Consultant: They could continue to do this. However a lot of Java developers have really found they prefer Team Explorer Everwhere as it allows all the .NET and Java developers to use the same platform for all their versioned items, work items, builds, and lab environments under the same foundation system.
IT Director: This is fascinating. I'm going to talk to my managers this afternoon and setup a meeting for you to answer some questions my managers and I have on our processes and how TFS works. I'll take you right now to meet our SourceSafe administrator who you will be training to administer the new TFS once you've set it up.
TFS Consultant: OK this sounds good.
IT Director: Do you often find that other places look at TFS as just SourceSafe replacement?
TFS Consultant: Yes I do. Most of them have very mature processes that have worked well in the past. However they've discovered that the pace of change and agility in the business world and its impact on IT is really causing lots of chaos.
IT Director: Sure I can relate. Our processes have worked really well for us in the past. However we're seeing them disintegrate. Our new IT employees are hard to retain. And many of our best are going elsewhere. I can imagine that anyone coming in suggesting TFS Work Item Tracking is going to face some resistance because it requires a major cultural change.
TFS Consultant: Sure I've seen this. They typically behave like blacksmiths getting introduced to jet aircraft who say "how are we supposed to put this big bulky aircraft on the horse's hoof". Then they do the equivalent of explaining to me the merits of horseshoes over jets for use on horses. They're absolutely correct IF they think they're in the equestrian industry. But they're dead if they don't catch on to the paradigm shift that's transforming the IT industry fast right now. It certainly isn't my job to sell you on TFS. But the honest truth George is that I haven't found any one platform that does all the end-to-end IT processes like TFS.