Welcome to MSDN Blogs Sign in | Join | Help

TFS 2010 Work Item Tracking

In my last 2010 post, I covered Setup, Admin & Ops.  In this post I’m going to cover work item tracking features.  The truth, however, is that the lines between the next 3 posts are going to be pretty blurry.  I’ve tried to think about ways to partition it but Work Item Tracking, Project Management and Reporting are all heavily interrelated.  I considered writing a single post for them but then it would be 30 pages or something silly.  So, I’m going to break them up but bear with me on the rough edges.

Hierarchical work items

Perhaps the banner feature in TFS 2010 is the ability to break down work items into hierarchies.  The most common use for this is task decomposition – breaking high level tasks down into sub-tasks and those down into further sub-tasks, etc.  However, I expect people will get very creative with what they want to arrange hierarchically.  Prior to 2010, you can associate work items with “related” links and do some reporting around that but easily managing them as a hierarchy was not possible.  Here’s a screenshot of a totally hypothetical project I’ve made up.  Things to note…

  • There’s a combo box at the top of the query editor called “Type of Query” and it is set to Tree of Work Items.
  • The icon next to “Open Tasks” in the Team Explorer shows multiple indicate that this is a tree query.
  • The results list shows the title indented following the hierarchy and allows for expanding and collapsing the results.
  • You can’t see this, but rearranging your hierarchy is as simple as dragging and dropping one work item on another.

You can see right click menu items for the obvious things you’d like to do, add a new child, outdent, indent, etc.

image

 

Microsoft Excel integration has also been enhanced to support work item hierarchies as well…  As you can see, we use multiple “Title” columns to represent the hierarchy level in Excel.  You can also see some of the new Tree features in the ribbon.

image

And lastly, the hierarchy round trips with Microsoft Project as well…  As you can see here, Project can also be used as a roll up engine to compute rolled up schedule numbers.  In previous versions of TFS, the project hierarchy was only persisted in the MS Project file so TFS users couldn’t see the hierarchical relationships.

image

Custom link types

We have added the ability to define custom link types in TFS 2010.  In previous version there was really only one work item to work item link type called “related”.  Now you can define your own link types that can be used in querying and reporting (see more on querying in the next section).  As an example, as part of the new TFS base process templates, we’ve added a link type called Tests/Tested By.  It is defined to relate a test case and a user story and identifies the set of test cases for a user story.  However, you can define your own with whatever semantics you choose.

When you create a link type, you can define one of 4 link “topologies”:

  • Network – Much like our existing “related” links.  Any two items can be connected and the link has the same name at both ends.
  • Tree – A hierarchical link type that defines a “parent/child” relationship.  A parent can have many children but a child can only have one parent of a given tree link type.
  • Dependency – A directed graph where links connect work items but there can’t be a cycle.
  • Directed network – kind of a half way type between network and dependency.  There are no constraints on what or how many work items can be related but each end of the link has a unique name (e.g. Tests & Tested By)

Link Queries

Now that we have custom link types you can do some very cool stuff with traceability.  The reporting system always allowed you to report on links but now you can filter by link type and Team Explorer and Team System Web Access also enable querying on links.  So using the test case tests user story link I mentioned above, here’s a sample query in Team Explorer.  Notice that the Type of Query combo now says Work Items and Direct Links.  Also, notice that the query definition has a lot more filters.  Following the grid that selects User Stories, there’s another grid that selects how you want to filter what the matched user stories are linked to (Test Cases that are not closed, in this example).  In the linking filters you have 3 main options:

  1. Return all top level work items – shows all work items that match the first grid control and then and matching linked work items.
  2. Only return items that have the specified links – shows the same results minus any work items matching the first grid that have no related work items matching the second grid.
  3. Only return items that do not have the specified links – shows only items that match the first grid but have no linked work items matching the second grid – for example, if I wanted to see user stories that had no test cases associated with them.

And finally, you can filter by one or more link types.  You can see by my query results that my sample project has 3 user stories, 2 of which each have one test case.

image

And, of course, all of this works in Web Access as well, but just to prove it, a picture is worth a thousand words…

image

New links control

Now that relationships between work items are playing a more first class role in the system it seems obvious you are going to want to do more with them on the work item form itself… enter the new work item form links control.  Here are the characteristics of it:

  1. You can have as many links controls on your form as you like.
  2. Each links control can be separately filtered.
  3. The links control can be configured to pull fields from the target work item and render them in columns so you don’t have to open the target work items to see anything about it.
  4. The “Add” button that adds new linked work items can be filtered to a set of link types to save mouse clicks.
  5. The linked items can easily be opened in Excel.
  6. And probably a few other things I’m forgetting.

So on with a screenshot.  Here’s an example of the Test Cases tab on a User Story work item.

image

Other new work item controls and improvements

There are a bunch of other work item control improvements in addition to the links control.  They include:

  • HTML control – You can now have a work item control that renders HTML from a configured URL.  This is going to make it much easier to host external content in a work item form.  In some cases, it will replace the need to build custom work item controls.
  • Link Labels – Labels on a work item form can now be configured to be clickable and will invoke a browser to display the results of an url.
  • Edit controls - Edit controls now have adjacent toolbars that enable rich editing (fonts, colors, bold, italic, etc).  Edit controls will also now automatically convert a typed url into a clickable link.
  • Labels – You can now have simple stand alone labels if you want to just put text on a form without an associated input field.

Field comparison queries

In previous versions of TFS, work item query clauses could only compare a field against a constant.  In 2010, they can now compare fields with each other.  So, for example, if I wanted to find all tasks where the Completed Work is greater than the Original Estimate, I could do this…  I suspect you’ll be able to think of lots of novel ways to use this.  We ran across the requirement when building our Project Server integration and try to find a way to easily identify work items where the project manager rejected cost changes made by the developer.

 

 

 

image

Group membership queries

It’s now possible to easily write queries that filter by groups of people.  TFS has always had the ability to synchronize with Active Directory to import group information.  Now you can write queries that enable you to easily filter by group membership.  For example, I could write a query to find all work assigned to “My team” like this…

image

Query Folders

The more powerful we make queries, the more of them you want to have – and that means you are going to need a way to organize them.  Also we’ve gotten a lot of feedback that people would like a better way to publish queries without having to be a Project Administrator (you have to be to save a Team Query in TFS 2008 and before).  We solved both problems with a new feature called query folders.  This allows you to organize your queries into folders both under My Queries and under Team Queries.  Further, under Team Queries, you can delegate permissions to the sub folders to whomever you like.  In the screenshot below you can see a query structure I’ve created a the security dialog where I’ve granted the Contributors group permission to contribute queries to the Web Team folder.  I know this is going to be a VERY popular feature internally where we get dozens, if not hundreds, of queries people want to share.

image

Usability improvements

We’ve made a number of small work item tracking usability improvements.  I don’t think I can even remember them all but I’ll mention a few.

We’ve added several controls to improve your options for managing layout for your work item tracking windows.  Looking at this screenshot, you will see 4 small controls on the right hand side of the splitter bar between the results list and the work item form.  The first two switch back and forth between a horizontal split and a vertical split.

image

like this…

image

 

The second two make it simple to “maximize” either the work item form or the results list, like…

image

or this…

image

Further, you’ll notice the new Next and Previous buttons – makes navigating through the list of work items possible when looking at a maximized work item form as in the last screenshot.

Another nice enhancement is the ability to drag an email message from Outlook into the work item attachments list and automatically attach the .msg file for tracking email conversations along with work items.

 

WIT Categories

We've heard a lot of feedback on the difficulty of making our reports work and writing new reports in the face of significant work item tracking customization.  One of the features we have added to simplify this is something called "Categories".  You can mark work item types as being in a Category and then write your reports against the category rather than the work item type name.  This is particularly useful as you classify work with increasing precision.  For example, you might have separate User Story and Quality of Service requirement work item types.  They have different data models for a reason but you want to easily write reports against all "requirements".  You can tag them with the same Category and write reports against that.  Then the report will pick up both work item types.  This also enables you to rename work item types, etc and still have tools work by referring to the category.

 

Conclusion

Whew, OK, that’s it for work item tracking.  It’s a lot of stuff and there’s a lot more left for me to talk about.  Once you get Beta 1, you can start to play with all of this and I’m eager to hear your feedback.

Brian

Published Monday, May 18, 2009 7:53 AM by bharry

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# Anith » TFS 2010 Work Item Tracking

Monday, May 18, 2009 9:25 AM by Anith » TFS 2010 Work Item Tracking

# TFS 2010 Beta 1: Don’t run initial configuration from the administration console (MMC)

Beta 1 for TFS 2010, along with VS and VSTS, is now available to MSDN subscribers and will be available

Monday, May 18, 2009 10:20 PM by Buck Hodges

# re: TFS 2010 Work Item Tracking

Assumed that a migrate from tfs 2008 to tfs 2010 what happend with my customized workitemstypes? Can i use automatically for example the new feature workitem hiearchy or must i create a completely new workitemtype?

Tuesday, May 19, 2009 4:38 AM by Christoph

# re: TFS 2010 Work Item Tracking

We'll get out some detailed information on the migration process in the not too distant future.  That said, your old process will continue to work as expected.  You can take advantage of some of the new features - like usability improvements, etc.  Many of the others, custom link types, etc. will require that you update your work item types to take advantage of them (but you won't have to completely redo them).

Brian

Tuesday, May 19, 2009 7:45 AM by bharry

# VSTS Links - 05/19/2009

Ravi Maniam on Love @ First Sight, The Visual Studio Team System Test 2010 The VSTS Lab Management Team

Tuesday, May 19, 2009 9:01 AM by Team System News

# re: TFS 2010 Work Item Tracking

Great job!

But still missing THE CONTROL: A COMPLETE richedit workitem control to allow me to paste documents, images, etc... inline with the text (like in Outlook tasks)

Will it be possible to add it sometime??? Please consider...

Thanks,

Sergio

Tuesday, May 19, 2009 1:58 PM by Sergio

# re: TFS 2010 Work Item Tracking

Brian,

TFS2010 looks fantastic. Your blogs are the best and very informative.

Regarding your above post, I did see any mention of multiple assignments i.e. assign a task to multiple resource. This is something Project supports but TFS did not. It is a bit like hierarchy I guess where instead of assigning one broad task to two resources you split the task in two with separate details. But I still want to know if multiple assignments is supported and if not how does TFS WITs integrate with Project schedules with muliple resource assignments.

Thank you once again for detailed blog posts.

Regards

YM

Wednesday, May 20, 2009 3:03 AM by Yogesh

# re: TFS 2010 Work Item Tracking

We did not add multiple assignment support to TFS.  We have generally told people to break them into multiple tasks in that scenario.  I remember a plan for us to do that automatically in the round tripping but I can't remember where we landed on that.  Let me look into it and get back to you.

Brian

Wednesday, May 20, 2009 7:55 AM by bharry

# re: TFS 2010 Work Item Tracking

Sergio,

Yes, I too very much want that.  It's not going to make this release unfortunately but it has not fallen between the cracks - it's still on our backlog to tackle.

Brian

Wednesday, May 20, 2009 10:26 AM by bharry

# re: TFS 2010 Work Item Tracking

Brian,

Great! Even if it's not going to be ready for this release I'm very happy to know that at least it's on your todo list...

I've some ideas for that maybe to add to your specs (or future specs) based on my experience and our development process. If you could be interested on that, please feel free to contact me (I will be glad to help)

Regards,

Sergio

Wednesday, May 20, 2009 12:48 PM by Sergio

# re: TFS 2010 Work Item Tracking

Brian,

VSTS/TFS 2010 has some great features and looks great too.

Can I give access restrictions on individual work items records? e.g work item # 123 can be viewed only by a certain user(s) or group(s).

Currently I am using Area Paths to give access to work item records. But I guess this field is not designed to for creating Access Control Lists.

Monday, May 25, 2009 8:47 AM by rohitlives

# re: TFS 2010 Work Item Tracking

I've read the new concept about the custom link. I would like to ask about the old custom Link in 2008 which you've describe in the link below. Will it be compatible with this version?

Or there will be a new concept for supporting this?

http://blogs.msdn.com/narend/archive/2006/10/13/how-to-extend-linking-and-workitem-ui-with-custom-link-types.aspx

Tuesday, May 26, 2009 6:25 AM by P.Kay

# re: TFS 2010 Work Item Tracking

rohitlives,

I'm afraid not.  We didn't make any significant changes to the work item permissioning model for this version.

Brian

Tuesday, May 26, 2009 8:43 AM by bharry

# re: TFS 2010 Work Item Tracking

P. Kay,

Good question.  They are different approaches to link extensibility.  Down the road I hope to integrate them more.  The link extensibility in that post describes a way to create custom browse UI for links to different types of artifacts.

The link extensibility I talk about in TFS 2010 is all about further qualifying work item to work item links.

Both are supported in TFS 2010.

Brian

Tuesday, May 26, 2009 8:46 AM by bharry

# re: TFS 2010 Work Item Tracking

Brian,

Where can I find more information on work item link topologies.

Thanks

Rohit

Friday, June 05, 2009 4:26 AM by rohitlives

# re: TFS 2010 Work Item Tracking

Wednesday, June 10, 2009 5:00 PM by bharry

# re: TFS 2010 Work Item Tracking

Hi, Brian,

Nice post about the new improvements of work item tracking in TFS 2010 Beta1.

Are there any details on the OM work item tracking? e.g. is the new OM compatible with TFS 2005/2008? Are the query builder control exposed in OM for third party use?

Thanks, Jeffrey

Sunday, June 14, 2009 10:18 AM by Jeffrey

# re: TFS 2010 Work Item Tracking

The 2005/2008 OM will work.  There will be an update to it make it work better.  There are some new features that won't be available from the old OM (hierarchy, typed links, etc).  The OM has been updated for TFS 2010 to support these features.  It's an incremental update, not major changes.

No, I'm afraid the QueryBuilder control has not been make public.

Brian

Tuesday, June 16, 2009 8:15 AM by bharry

# re: TFS 2010 Work Item Tracking

Brian,

Will TFS2008'custom control be compatible with TFS 2010(From VS and Web access)?

Thanks

Monday, July 27, 2009 11:55 PM by Jirawat

# re: TFS 2010 Work Item Tracking

Hi Brian,

From you answer

"P. Kay,

Good question.  They are different approaches to link extensibility.  Down the road I hope to integrate them more.  The link extensibility in that post describes a way to create custom browse UI for links to different types of artifacts.

The link extensibility I talk about in TFS 2010 is all about further qualifying work item to work item links.

Both are supported in TFS 2010.

Brian"

Do you mean TFS 2010, should also support the custom link with UI customization too? Could you please point me to the details information link?

Tuesday, July 28, 2009 5:31 AM by P.Kay

# re: TFS 2010 Work Item Tracking

Yes, in 2010, both are supported but they are separate mechanisms.  We never really published much info on the custom browse UI extensibility because it wasn't really a "supported" feature.  Naren's blog post is, I think, the only documentation available on it.  There will be much more documentation available on the new custom link type feature in 2010.  This post has some good info in it: http://blogs.msdn.com/teams_wit_tools/archive/2009/06/05/customizing-work-item-link-types-in-tfs-2010.aspx.  The product documentation will have more as we get closer to release.

Brian

Tuesday, July 28, 2009 7:30 AM by bharry

# re: TFS 2010 Work Item Tracking

Jirawat, the code will be compatible but they will need to be recompiled.

Brian

Tuesday, July 28, 2009 7:31 AM by bharry

# re: TFS 2010 Work Item Tracking

Lots of good stuff here.  Any chance we will get parameterized queries in 2010?  For example, say I want to create a report of outstanding bugs for an individual.  However I don't want to specify the individual until the query executes. At that point, it should prompt me with a UI that presents the list of "assigned to" folks for that project.

Thursday, July 30, 2009 8:02 PM by Keith Hill

# re: TFS 2010 Work Item Tracking

Unfortunately, no.  That didn't make it in this release.

Brian

Friday, July 31, 2009 8:04 AM by bharry

# re: TFS 2010 Work Item Tracking

Hi, Brian.

Will WIT's fields support customization of their visibility in the dependency of role of current user? It may be be useful when some fields (such as cost) should not be visible for some users.

Monday, October 26, 2009 8:50 AM by alex.by

# re: TFS 2010 Work Item Tracking

No, I'm afraid not in 2010.

Brian

Monday, October 26, 2009 9:00 AM by bharry

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
 
Page view tracker