Workflow is now embedded in Team Build. It isn’t clear if the workflow (with the associated source files)replaces TFS Build.proj, but I think it probably does? I would imagine that we could write custom workflow activities and plug that into TFS. I would imagine some things would still be better modeled as MSBuild tasks because certain activities will still call msbuild tasks to do what they need (like compile for example). All in all TFS Build is getting a really nice upgrade although I imagine that for many it will take some getting used to using workflow to design builds rather than XML. Count me as one who thinks the move away from XML will be a good thing (although technically I think Workflow ends up being XAML in the background which would still be XML – you just don’t have to work with it necessarily).
Branch Visualization was also very cool – basically a variety of graphical ways to see branching. Branches become a first class citizen and show up in Source Control under a different icon (no longer just a subfolder structure). You can visualize the hierarchy. You can also visualize the way a changeset has been merged through the branch structure to help you see if a parent or child has been missed etc…For smaller shops these will be nice and perhaps promote branching more – in larger shops with more complex branching strategies and a greater need for parallel development this should be a tremendous benefit. TFS now drills through a merge changeset to tell you who truly originated the change and not just who performed the merge. Rollback has now been surfaced into the UI (Brian didn’t show it though) which should make it easier to presumably undo those files that shouldn’t have been checked in rather than having to do an additional check-in to reverse the changes. You could do this from the command-line previously I believe (or perhaps it was a tfpt feature I don’t remember). I don’t need to do this often, but it will be nice to have it there and I definitely have need to do this in the past and because there was friction with doing it (dropping into another environment) it was usually just as easy to do an additional check-in that reversed the relevant changes. Oh – I can’t forget that in the Changeset visualization on branches you can drag a specific changeset to a branch that should have that changeset and it will pend a merge of that changeset onto that branch.
Brian didn’t demo the Agile workbooks that I really, really wanted to see and I won’t be able to go to the session that it will be demoed at so I will have to catch the video :(. Brian showed how you can now create query folders to improve the way you organize work item folders (about time!!!). They have made some really nice improvements to the Excel experience with TFS as well. You can now customize a bound table with additional columns and formatting etc… and they will be retained across data refreshes and publishes. This will help big time in building reusable Excel type reports. Also they made it so you can right click on a work item query and have it create an Excel workbook that is a report bound to the TFS Warehouse and not the work item query which would then allow it to be edited and added to easier. Oh – I can’t forget to mention hierarchal work items. That is a huge feature that everyone has really, really wanted. TFS 2010 will provide a huge amount of value there to support better work breakdown and thus richer planning and reporting scenarios. No ability to attach dates to Iterations (or otherwise enhance them) yet.
All in all it was a nice intro to what TFS has. There are a bunch of more detailed sessions as well to cover the capabilities in depth. When you add to that what is going on in the other SKUs of Team System – 2010 shapes up to be a huge release.