Create your backlog and tasks using Project

If Microsoft Project is your preferred tool for tacking projects, you can use it to create your backlog, schedule tasks, assign resources, and track work that is also tracked in TFS. You can use Project while your development team uses the tools they prefer, all while sharing information transparently.

Working in Project is similar to publishing and refreshing work items using Microsoft Excel bound to TFS, with a few differences as described later in this topic.

Note

You can also manage projects using Project Professional and Project Server synchronized with TFS, but you can't use Project Professional to both publish and refresh to TFS and synchronize with TFS.

Add tasks and publish work items

  1. If you don't have Microsoft Project 2007 or later, install it.

  2. If you haven't installed Visual Studio or Team Explorer, you'll need to install one of these versions to get the Team Foundation add-in to Project.

  3. In Project, start with a blank worksheet. If you don't see the Team ribbon (or the Team menu if you use Project 2007) see step 2.

    Connect to a team project from Microsoft Project

    Another way to start is to open a backlog query in Team Explorer and from the context menu, choose Open in Microsoft ExcelOpen in Microsoft Excel.

    Tip

    If the Team ribbon no longer appears, you might need to re-enable it.

  4. Connect to TFS and the team project that you want to plan. If you can't connect, get added as a team member.

    Connect to Team Foundation Server dialog box

    If it’s your first time connecting to TFS from Project, you might have to add the name of your TFS to the list of recognized servers.

    Servers button on the Connect to Team Foundation Server dialog box. Add button on the Add/Remove TFS. Name of server in the Add TFS dialog box. OK button.

    Project is now bound to your team project. The Team Foundation Gantt view supports entry and display of several TFS fields.

    Project plan bound to a team project in TFS

  5. Add task information and then publish the project. To add a work item, specify the Title, Work Item Type, Publish and Refresh, and any other required fields. Resize and move columns using standard Project methods.

    Tip

    Set the Publish and Refresh field for a task to Yes if you want to have a work item created for it in TFS. For example, set user stories, backlog items, and tasks to be published and refreshed. However, any summary tasks that you create to group tasks or to assign milestones, set Publish and Refresh to No.

    Enter task data

    Notice how IDs are now assigned to your work items.

    Published tasks become work items

    Optionally, you can use Get work items icon, select a work item query, and add work items from TFS to your project plan.

  6. Assign resources to tasks. Or, leave that field blank for the development team to assign.

    Assign resources in project defined in TFS and AD

    Tip

    Although Project supports allocation of more than one resource to a task, TFS does not. If a task requires more than one resource to complete, divide the task into subtasks and assign one resource to each subtask. Only assign a TFS team member as a resource to those tasks that you will publish.

    Specify resources by their display names from Active Directory Domain Services (AD DS). If you assign a resource by its alias or other name, you risk incurring validation errors.

  7. Save your project plan to retain scheduling and other data that TFS doesn't store.

When you indent tasks and then publish your plan, you create parent-child links between work items. Tasks will show up on the task board when they are assigned to the current sprint.

Link tasks to create parent-child links

To see the parent-child links that you just created, open Links and Attachments.

Subordinate tasks create predecessor-successor lnk

When you link two tasks and publish your plan, TFS creates predecessor-successor links between the two work items.

Create predecessor-successor links in Project

Although TFS tracks predecessor-successor dependencies as work item links, it does not track dependency types, lead and lag time, or other constraints that Project does.

Specify data for other TFS fields

To enter data into other TFS fields, switch to the Team Foundation Task Sheet.

Open Team Foundation Task View in Project

This view displays all the TFS fields that have been mapped to Project.

Team Foundation Task Sheet view

Optionally, you can add a mapped TFS field as a column to the Team Foundation Gantt view. To see which TFS fields are mapped, open Column Mappings.

View which TFS fields are mapped to project fields

To add more TFS fields or change the way fields are mapped, see Customize the Microsoft Project field mapping file.

Tips for working in Project and other TFS clients

You can manage your project plan using Project and all the features that Project provides. Because you and other team members can modify TFS work items in Excel, Project, Team Web Access, or Visual Studio Team Explorer, follow these tips to manage your work effectively:

  • When you first open a project plan, use Refresh icon in Excel on Team ribbon (Refresh) to download the latest data from TFS.

  • Publish your changes and refresh your plan periodically while you work. Otherwise, you can encounter data conflicts between plan data and the TFS data store.

  • Save your project plan to maintain scheduling data and other information that TFS doesn't store.

  • When defining areas and iterations, keep in mind that Project and Excel restrict the length of the area and iteration path field to 256 characters.

  • In Project 2010 and later versions, when you choose Pinned task icon (Manually scheduled tasks), team members can place a manually scheduled task anywhere in their schedules, and Project will not move it. In order for team members to manually schedule their tasks, you will have to add the necessary project fields to TFS task definitions.

    Start and finish dates for autoscheduled tasks (Auto Update Task Mode icon) are determined by the scheduling engine based on task dependencies and the project calendar, as in previous releases of Project.

  • Use Project to manage and update changes to these fields:

    • Finish Date

    • Start Date

    • Calculated fields for completed and remaining work

    Although TFS can store estimated, completed, and remaining work, and start and finish dates, TFS does not recalculate the fields when updates to these fields are made.

    When you publish to TFS, start and finish times are read-only in TFS by default. Project does not download start and finish times when you refresh the plan. 

  • If you see that hours are counted twice in reports that contain task hours, correct the problem.

    Project assigns parent tasks the rollup of hours that are assigned to all its child tasks. Rollup hours are not published to TFS to prevent hours within reports from being counted twice. The Microsoft Project mapping file attribute, IfSummaryRefreshOnly, suppresses the hours that are assigned to summary tasks.

Differences working in Project versus Excel

Area

Project

Excel

Adding TFS fields

You can only add fields to your Project plan that are defined in the Microsoft Project mapping file.

You can add any TFS field to your Excel worksheet that is listed in the Choose Columns dialog, subject to Excel limitations on text length.

Publish/Refresh

You specify the Publish or Refresh field for individual tasks. Also, field attributes defined in the Microsoft Project mapping file affect how fields are published and refreshed.

All work items are subject to publish and refresh.

Linking

You can create and modify parent-child links or predecessor-successor links between work items.

Using the tree list view, you can create and modify parent-child links.

Q & A

Q: Do you want to add Project fields to TFS work items?

A: For team members to be able to view or modify Project fields from a Team Foundation client, you must customize both the definition file for the task work item type and update the Microsoft Project Mapping file. For resources, see Schedule projects using Microsoft Project 2010.

Q: Do you want to map additional TFS fields to Project, or change how fields are mapped?

A: You can change how Team Foundation fields map to fields in Microsoft Project, and you can change how specific fields are published. See The Microsoft Project Field Mapping File.