31
Hands-On Lab Agile Project Management in Team Foundation Server 11 Lab version: 1.2.0 Last updated: 2/28/2012

Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Hands-On LabAgile Project Management in Team Foundation Server 11Lab version: 1.2.0

Last updated: 2/28/2012

Page 2: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

CONTENTS

OVERVIEW................................................................................................................................................. 3

EXERCISE 1: PRODUCT BACKLOG AND SPRINTS...............................................................................3

EXERCISE 2: TASKBOARD.................................................................................................................... 22

Page 3: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Overview

In this lab, you’ll learn how Team Foundation Server 11 can help you quickly plan, manage, and track work across your entire team. You’ll explore the new product backlog, sprint backlog, and taskboards which can be used to track the flow of work during the course of an iteration.

Prerequisites

In order to complete this lab you will need the Visual Studio 11 virtual machine provided by Microsoft. For more information on acquiring and using this virtual machine, please see this blog post.

About the Fabrikam Fiber Scenario

This set of hands-on-labs uses a fictional company, Fabrikam Fiber, as a backdrop to the scenarios you are learning about. Fabrikam Fiber provides cable television and related services to the United States. They are growing rapidly and have embraced Windows Azure to scale their customer-facing web site directly to end-users to allow them to self-service tickets and track technicians. They also use an on-premises ASP.NET MVC application for their customer service representatives to administer customer orders.

In this set of hands-on labs, you will take part in a number of scenarios that involve the development and testing team at Fabrikam Fiber. The team, which consists of 8-10 people, has decided to use Visual Studio application lifecycle management tools to manage their source code, run their builds, test their web sites, and plan and track the project.

Exercises

This hands-on lab includes the following exercises:

1. Product Backlog and Sprints

2. Taskboard

Estimated time to complete this lab: 60 minutes.

Exercise 1: Product Backlog and Sprints

Page 4: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

In this exercise, you will learn how to use Team Foundation Server to manage your product backlog, create work items, break work items into tasks, and assign tasks to team members. The new backlog features enable you to easily do all of this work while keeping an eye on team capacity.

Note: The team project used in this lab uses a Scrum process template, but the core features demonstrated apply to all process templates.

1. Log in as Julia. All user passwords are P2ssw0rd.

2. Launch Internet Explorer from the taskbar and select the TFS Web Access button from the favorites bar at the top.

Figure 1Launching the team web access site

Note: There is also a Web Access link in the Team Explorer window within Visual Studio.

3. The Home view for the Fabrikam Fiber Web team provides a high-level overview of the current iteration (Sprint 3) including team workload versus capacity, burndown of tasks over time, and Team Favorites, which can include a configurable assortment of work item queries, build definitions, and version control path. In addition, there are links to quickly create new work items and bugs, load the backlog, task board, initiate requests for feedback, and so on.

Page 5: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 2Fabrikam Fiber Web team Home view

Note: Team Favorites can be added or removed from within the team web access portal. For example, navigate to the Build tab to assign build definitions as a team favorite. In addition, team favorite work item queries can be modified from within Visual Studio.

4. As you can see under the Members section, there are several members listed in this team. Teams are a new concept introduced in Team Foundation Server 11 to make it easier to manage, assign, and track work. This team is responsible for handling all of the engineering work associated with Fabrikam Fiber’s web presence.

5. Select the team drop-down box in the top-right corner of the portal and note that there is one project and one team listed. Press the Escape key to keep the current team selected.

Figure 3

Page 6: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Team selection

Note: Each team can have different Team Favorites listed, different work capacity, and even different work items. The determining factor on where a work item will show up is governed by the Area field.

6. Navigate to the backlog by selecting the View backlog link under the Activities section.

Figure 4Navigating to the backlog

7. The product backlog contains work items that have not been assigned and committed to an iteration. These product backlog items represent user stories that will eventually be broken down into smaller tasks for the team to take on.

Figure 5Product backlog view

Page 7: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Note: The Current iteration shown in the tree on the left side of this screen is Sprint 3. Team Foundation Server uses the current date and time to determine the current iteration. The virtual machine you are using has been hard-coded to use a date of February 15, 2012 for purposes of this lab. This date is set each time you boot up this virtual machine.

If your virtual machine has been running for a while, it may no longer be set to February 15, 2012. If so, you should manually set the date on your virtual machine to 8:00 a.m. on February 15, 2012. However, if you have modified work items or source control in Team Foundation Server prior to starting this hands-on-lab, it is recommended that you restore this virtual machine to its original state prior to completing this lab.

8. Imagine that the VP of Fabrikam Fiber has requested that a new user story be implemented for the customer-facing service portal. This new user story will enable customers to see weather-related service outages. In the Contents section for the Product Backlog, select the last row and then create a new Product Backlog Item with the title “Customer should see weather-related outages on portal.”

Figure 6Adding a new user story to the product backlog

Note: New work items are generally inserted above the selected location. The exception is that if you select the last work item, the insertion will be after the selected location.

9. Select the Add button to add the new user story to the backlog.

Page 8: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 7Adding a new user story to the product backlog

10. Work items on the product backlog are ordered based on priority, with high priority items at the top. Our new work item has a high priority, so move it to the top of the list by dragging and dropping it into place.

Figure 8Increasing the priority of the new user story

11. Let’s edit the new user story to assign it to the appropriate product owner and record an initial estimate of expected effort. Double-click on the new user story.

Page 9: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 9Editing the new user story

12. Assign the new item to Brian Keller (the product owner for the Fabrikam Fiber Web Team), set the state to Approved, set an initial effort of ‘8’, and then select the Save and Close button.

Figure 10Assigning the new user story and estimating effort

Note: Each team may choose to define the Effort value as they see fit, using a unit of story points, hours, days, or number of sodas required. The point here is that this measure is a relative value with respect to other work items. Work will be broken down into hours later.

Page 10: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Note: A popular planning approach that helps to eliminate groupthink and considers input from all team members is known as planning poker. You can read more about it at http://en.wikipedia.org/wiki/Planning_poker.

13. Assign the new user story to the current iteration, Sprint 3, by dragging and dropping it as shown below.

Figure 11Assigning the new user story to the current iteration

Note: If you are a Scrum purist, you are probably cringing at the fact that we just added new work to a mid-flight iteration. While this is something you might never do in the real world, this is a shortcut taken for purposes of this lab in order to simplify the workflow and still show you all of the aspects of the new project management interface. Well, that, and the VP told you to.

14. Look at the Iteration Path for the new user story to make sure that it is assigned to Sprint 3 as expected. This user story will remain on the product backlog until the team commits to taking it on.

Figure 12Assigning the new user story to the current iteration

15. The product backlog view also provides a velocity chart that shows the amount of work that the team has undertaken in each sprint, with the current sprint breaking that down further to

Page 11: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

differentiate between work in progress and work completed. Click on the mini chart in the upper-right corner to load the larger view.

Figure 13Location of velocity chart

16. During Sprint 1, the team completed 35 story points worth of effort. Sprint 2 was slightly more productive with 42 story points completed. The current iteration represented by Sprint 3 shows that we have completed 18 story points so far, with 23 remaining. Remember that these story points are a relative measure of effort that was agreed upon by the team.

Figure 14Velocity chart showing progress towards completing user stories

17. Press the Escape key to close the velocity chart.

18. The Product Backlog also includes a simple forecasting tool that you can turn on to get a rough idea of what can be accomplished in future iterations. Select the forecast link to turn it on.

Page 12: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 15Toggling the forecast tool to “on”

19. Note that the forecasting is currently being calculated with a velocity of 10, meaning that each future iteration will take on about 10 story points worth of effort. As you can see, Sprint 4 is actually forecast to include 11 story points. Backlog items that do not have Effort assigned are assumed to be 0, so it is recommended that this value is set before using the forecast tool.

Figure 16Result of forecasting with a velocity of 10

Note: The user story that we just added and assigned to Sprint 3 is the top backlog item listed, and it is NOT part of Sprint 4 even though it may initially look like that. Sprint 4 has a line under it and includes rows two and three.

20. As we saw from the velocity chart, that may not be aggressive enough for this all-star team, so click on the “10” value to change it to 35 and then press Enter.

Page 13: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 17Changing the forecasting velocity value

21. Now that we have the forecasting velocity set to a more realistic value, we can get an idea what the team can accomplish over the remaining iterations.

Figure 18Changing the forecasting velocity value

22. The product backlog view also groups the past, current, and future iterations by their assigned dates. Select the Sprint 3 link so that we can break down work and assign it to the appropriate team members.

Page 14: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 19Navigating to the current backlog

23. In the backlog for Sprint 3, collapse the two user stories that have a state of ‘Done’ by clicking on the small triangles just to the left of the associated Titles.

Figure 20Collapsing completed user stories

Page 15: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

24. Before we break down the new user story, let’s take a quick tour of this iteration backlog view. To start with, it shows all user stories and associated tasks that are assigned to the selected iteration, regardless of state.

Figure 21Current iteration backlog view

25. At a glance, you can see that the current iteration runs from February 6 to 17, with three work days remaining. Just to the right of the current iteration date range, there is a small graph showing the burn down of the remaining work.

Figure 22Burn down graph

26. Click on the burn down graph to view it. The graph shows remaining work over the course of the sprint. The actual trend line makes it look like the team may not be able to finish the assigned work in time, but keep in mind that we still expect some work to be completed before the end of the current day (none has been recorded so far).

Page 16: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 23Enlarged burn down graph

27. Press the Escape key to close the burn down graph.

28. Locate the overall Work bar that shows how close to capacity we are for the current iteration based on the total of the Remaining Work for the tasks in this iteration based on the total capacity for the team. It looks like we are okay now, but we still haven’t broken the new user story into tasks for the team yet.

Figure 24Overall remaining work with respect to team capacity

29. Select the Capacity tab to look at the team capacity details.

Page 17: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 25Location of Capacity link

30. The capacity view allows us to specify the number of hours per day that each team member will be working on this project, as well as days off per team member, and overall team days off. These capacity settings apply to the current iteration. You can optionally use the activity column to describe the disciplines that each team member specializes in. When tasks are broken down by activity as well, it can provide you with another view across your team’s capacity to determine if, for example, you have enough people working on documentation to meet the demands for this iteration. For now, leave the capacity settings unmodified.

Figure 26Team capacity settings

31. Return to the Contents view of the current product backlog.

Page 18: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 27Location of Contents tab

32. Imagine that we are meeting as a team to commit to the new user story and break it up into tasks. Double-click on the new work item and change the State from Approved to Committed, and select the Save and Close button. Once the team commits to the work, it will disappear from the product backlog.

Figure 28Committing to the new user story

Page 19: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

33. Select the button with the ‘+’ symbol in it to the left of the user story to add a new task. This will become a child task of the user story and will be used to help describe the implementation details required to complete this user story.

Figure 29Location of the button used to create new tasks

34. For the new task, enter “Consume OData feed for weather alerts” for the Title, assign it to Cameron Skinner, and set the Remaining Work to 5 hours. Select the Save and Close button.

Figure 30Creating a new task

35. Select the button with the ‘+’ symbol in it to the left of the user story to add another new task.

Page 20: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

36. For the new task, enter “Create UI for alerts” for the Title, assign it to Annie Herriman, and set the Remaining Work to 3 hours. Select the Save and Close button.

Figure 31Creating a new task

37. Note that the new tasks were added as children of the user story and that some of the work effort bar graphs have now turned red, indicating that we have too much work assigned to the team based on capacity. Cameron is especially overworked as indicated by his individual capacity graph.

Page 21: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 32Product backlog for current iteration is now over capacity

38. It looks like the last user story in this sprint is a sizable one, and it hasn’t been started yet, so this could be a good candidate to reschedule for a future iteration so that the team can get back on track given their additional workload. Drag and drop the last user story, titled “Technician can edit customer contact details on Windows Phone,” onto the Sprint 4 iteration on the left-hand side of the window.

Page 22: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 33Using drag and drop to re-assign work to different iterations

39. Take another look at the overall Work bar once again to make sure it is now green. This means that we are well within the current team capacity. Just don’t tell the VP, or he might find another high-priority request for us to work on!

Figure 34Remaining work for current iteration is within capacity

Exercise 2: Taskboard

In this exercise, you will learn how to use the taskboard to view status of work for the current iteration and move tasks between states. Taskboards are a great tool for determining “at a glance” what work needs to be finished before the end of an iteration.

Page 23: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

1. Now that we have finished breaking down the work and assigning it to team members, let’s take a look at the taskboard that will be used in the next stand-up team meeting to report and record progress. Select the board tab from the top of the Fabrikam Fiber Web Team default page.

Figure 35Location of link to load the taskboard

2. By default, the taskboard shows all tasks for the current iteration, grouped by product backlog item and by the current state. Drag and drop the “Consume OData feed for weather alerts” task to the In Progress column.

Figure 36Drag and drop tasks on the taskboard to move them between states

Note: The taskboard is touch enabled as well. This won’t work within this virtual machine, but you might want to put in your request now for that nice wall-mounted touch-screen monitor you’ve been wanting for your team.

3. Double-click on the “Consume OData feed for weather alerts” task and change the Remaining Work field to 1 to simulate Cameron working on the task for 4 hours during the day, and select the Save and Close button when finished.

Page 24: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 37Editing a task

4. Drag and drop the “Create UI for alerts” task to the In Progress column and change its Remaining Work field to 1. Select the Save and Close button when finished. The two new high-priority tasks are now in progress with an estimated 2 hours of work left to go.

Figure 38Drag and drop tasks on the taskboard to move them between states

5. Collapse the user stories for which the tasks are all done by clicking on the small triangles just to the left of the associated Titles.

Page 25: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 39Collapsing user story groups that have been completed

6. Drag and drop the task for Julia titled “Review new feature with technician early adopters” to the Done column to record that work as completed. Notice that the remaining work was automatically reduced to 0 when you did this.

Figure 40Drag and drop tasks on the taskboard to move them between states

7. Notice that the burn down chart in the top-right corner has updated immediately after you made these changes. Click on the burn down chart and note that there is less than 20 hours of effort left to go in order to complete the work for the iteration.

Page 26: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 41Burn down chart

8. Close the burn down chart.

9. Note that each row representing a work item shows a rollup of hours remaining, which is a sum of remaining work for all child tasks. In addition to that, each column representing a status has a rollup of remaining work, giving you a good idea how much work the team is actively working on right now.

Page 27: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 42Taskboard showing rollup of hours

10. The taskboard also has a team member pivot. Select the Team Members link near the top of the taskboard view.

Figure 43Team Members link location to group tasks by team member

11. This view makes it easy to see what team members are currently working on and how much effort remains for each for the remainder of the current iteration.

Page 28: Agile Project Management in Team Foundation Server 11az12722.vo.msecnd.net/vs11trainingcourse1-2/labs/.../Lab.docx  · Web viewIn this lab, you'll learn how Team Foundation Server

Figure 44Grouping tasks by team member on the taskboard

To give feedback please write to [email protected]

Copyright © 2023 by Microsoft Corporation. All rights reserved.