Walkthrough: Creating a Work Breakdown Structure from Requirements in Microsoft Project
In typical project planning, you must define the scope of the work to be accomplished. A typical tool that is used by project managers is the work breakdown structure (WBS). This walkthrough demonstrates a general approach to creating a WBS using Team Foundation Server and Microsoft Project.
This walkthrough is not based on any particular methodology. However, it does use the quality of service requirement and task work item types in the MSF for Agile Software Development process template. The approach used in this walkthrough should be adaptable your own organization's work item types and process.
In this walkthrough, you will complete the following tasks:
Create a requirement using Team Foundation Server.
Create tasks using Team Foundation Server.
Create tasks using Microsoft Project.
Link tasks and requirements.
Create a work breakdown structure from tasks in Microsoft Project.
Prerequisites
The following prerequisites must be met to complete this walkthrough.
Microsoft Project must be installed.
A team project must be created that uses the MSF for Agile Software Development process template.
Note
The team project should be created for learning purposes. Do not use a team project that was created for a real project.
You must be a member of the Contributor security group on the team project.
To complete the optional exercise, Microsoft Visio must be installed.
Required Permissions
To perform this walkthrough, you must be a member of the Contributors group or have the View work items in this node, and Edit work items in this node permissions set to Allow. For more information, see Team Foundation Server Permissions.
Scenario
The scenario for this walkthrough is based on the example Adventure Works team project. Adventure Works is starting a project to set up a Web interface for ordering its products. One of the customer requirements states that customers be able to check on order status after orders are placed. The scope of this work must be defined in a work breakdown structure to a sufficient level of detail to enable project planning to be completed.
The following approach is used by Adventure Works. The project manager must create the WBS and has the help of the team to do this. One person on the team is a database expert and will provide details on what is needed in the database to support the new requirement. She will enter her work details using Team Foundation Server.
The project manager will work with other team members to define additional work to complete the Web interface. Then the project manager will enter those details using Microsoft Project.
Finally, the project manager will create a WBS in Microsoft Visio that can be used in the project planning document.
Throughout this walkthrough you will perform the steps of each role to create the tasks and WBS. When you complete the walkthrough, you will have created the following tasks and subtasks in a Gantt chart and a WBS.
Order Storage Subsystem
Order Tables
Order Stored Procedures
Order Web Interface
Order Lookup Web Service
Client Order Views
Capturing the Requirements
To start, the business analyst creates a requirement in Team Foundation Server. The requirement is titled User must be able to view order status, and the team must determine what work must be completed to meet the requirement.
To enter requirements in Team Foundation Server
Start Visual Studio. Make sure that Team Explorer is displayed. On the View menu, select Team Explorer.
Expand your team project node, right-click the Work Items node, click Add Work Item, and then click Quality of Service Requirement.
In the Title field, enter User must be able to view order status.
In the Type field, select Other.
On the File menu, select Save New Quality of Service Requirement.
Creating the Tasks in Team Foundation
The database expert on the team was asked by the project manager to enter work details. Because she prefers working in Team Foundation Server, she creates tasks that describe the work needed on the database. The tasks she creates are Order Tables, and Order Stored Procedures.
To create tasks in Team Foundation Server
Start Visual Studio. Make sure that Team Explorer is displayed. On the View menu, select Team Explorer.
Expand your team project node, right-click the Work Items node, click Add Work Item, and then click Task.
In the Title field, enter Order Tables.
In the Discipline field, select Development.
Select the Details tab.
In the Remaining work (hours) field, enter 30.
Expand your team project node, right-click the Work Items node, click Add Work Item, and then click Task.
In the Title field, enter Order Stored Procedures.
In the Discipline field, select Development.
Select the Details tab.
In the Remaining work (hours) field, enter 60.
On the File menu, select Save All.
Importing the Tasks into Microsoft Project
The project manager is ready to create a project plan in Microsoft Project. He must create the project plan, and then import any tasks that have already been created from Team Foundation Server.
To import tasks into Microsoft Project
Open Microsoft Project.
On the Team menu, click Choose Team Project.
In the Connect to Team Foundation Server dialog box, select your Team Foundation Server, and team project. Then click OK.
From the Team menu, select Get Work Items.
In the Get Work Items dialog box, in the Saved query field, select the All Tasks query.
Click the Find button.
Click to clear all tasks in the query results except for the two order tasks you created previously. You can use the Unselect All button if there are many tasks listed.
Note
You may see many tasks listed, especially setup related tasks if your team project was just created. For simplicity in this walkthrough you will just import the tasks related to working on the order requirement.
Click OK. The tasks appear in the project plan.
On the Insert menu, select New Task.
In the new task, enter a title of Order Storage Subsystem.
Set the Publish and Refresh field to No.
Next you will make this task a summary task of the two order tasks. By not publishing the summary task to Team Foundation Server, you avoid accidentally assigning or working on summary tasks. Ideally the team should only work on and report against the subtasks because their information rolls up into the summary tasks.
Use the Indent button on the Formatting toolbar to indent both the Order Tables and Order Stored Procedures tasks underneath the Order Storage Subsystem task.
Save the project plan.
Creating and Publishing Tasks in Microsoft Project
Next the project manager decides to create additional tasks that were documented in a working meeting with the team. These tasks represent work to create Web services to support querying and displaying order status.
Two tasks were identified that must be completed. An order lookup Web service must be created to support querying for order details. Also, client views through Web pages must be created that can display the data. Together these tasks make up a larger unit of work named the Order Web Interface which will be a summary task.
To create tasks in Microsoft Project
Open the project plan.
At the bottom of the task list, create a new task. On the Insert menu, select New Task.
In the new task, enter a title of Order Web Interface.
Note
Be sure that this task is a top-level task and not subordinate to any previous tasks.
Set the Publish and Refresh field to No.
This task will become a summary task at the end of this procedure. By not publishing the summary task to Team Foundation Server, you avoid accidentally assigning or working on summary tasks. Ideally the team should only work on and report against the subtasks because their information rolls up into the summary tasks.
On the Insert menu, select New Task.
In the new task, enter a title of Order Lookup Web Service.
Enter a duration of 3 days.
Set the Work Item Type field to Task.
On the Insert menu, select New Task.
In the new task, enter a title of Order Client Views.
Enter a duration of 2 days.
Set the Work Item Type field to Task.
Use the Indent button on the Formatting toolbar to indent both the Order Lookup Web Service and Order Client Views tasks underneath the Order Web Interface task.
From the Team menu, select Publish Changes. The new tasks will be published to the work item database on Team Foundation Server.
Save the project plan.
Linking the Requirements and Tasks
The project manager wants to link tasks to requirements so that anyone can track how tasks are fulfilling certain requirements.
To link tasks to requirements
Open the project plan.
Select the Order Lookup Web Service task.
From the Team menu, select Links and Attachments.
In the View/Edit Work Item Links and Attachments dialog box, click the Add button.
In the Add Link dialog box, click Browse.
In the Choose Related Work Item dialog box, select Title contains, and enter the title User must be able to view order status.
Click Find. The quality of service requirement you entered previously should be listed.
Select the User must be able to view order status quality of service requirement and then click OK.
In the Add Link dialog box, enter the comment Task supports this requirement, and then click OK.
In the View/Edit Work Item Links and Attachments dialog box, click Save.
Click Close.
Because the link is saved to Team Foundation Server, you do not have to publish any changes.
(Optional) Create Work Breakdown Structure in Microsoft Visio
Microsoft Project has a wizard that enables you to convert the tasks into a work breakdown structure in Microsoft Visio. This is an optional procedure and requires Microsoft Visio.
To create a work breakdown structure in Microsoft Visio
On the Analysis toolbar, click the Visio WBS Chart Wizard button, and then click Launch Wizard.
In step 1 of the Visio WBS Chart Wizard, click Next.
In step 2, select All Tasks, and then click Next.
In step 3, click Finish.
A Microsoft Visio drawing is created that is a work breakdown structure chart of the tasks.
You should review the work breakdown structure with team members and key stakeholders to make sure that the scope is correct. You should also make sure that work is defined to a sufficient level of detail for planning to succeed.
As the project proceeds, team members can update work status using Team Foundation Server. Changes to the project plan can be made using Microsoft Project and published to Team Foundation Server.
See Also
Tasks
Walkthrough: Tracking Work Items
How to: Access Process Guidance in the Project Portal
Concepts
Finding and Using Process Guidance