There was a certain revolution a few years back that was instigated by one single team project that was tracking and managing work for all teams and projects. This stemmed from the lack of tooling to track and manage work across multiple teams and projects. When you're planning and tracking work, it's often necessary to view work across teams and projects. While there were natural benefits from this approach, it also cluttered a single team project with code and artifacts from multiple unrelated initiatives. With TFS 2017, Microsoft released the delivery plans extension to address this gap. With delivery plans in the mix, I don't really advocate one large team project. Instead, you should have a team project for every software product in your organization.
A delivery plan is a view of the work from multiple teams (and multiple projects) laid out on a calendar with each team's iterations. Each row in the view represents the work from a team's backlog, with each card corresponding to a work item – user story, feature, or epic. As you horizontally scroll through the calendar, work in future (or past) iterations comes into view. Like the Kanban board, a delivery plan is an interactive work board, although one was designed for multiple teams. You can add teams from across all the projects in your collection. If the plan needs updating, you can simply drag cards to update the iteration path. Like the Kanban board, you can customize card fields so that you can see relevant information for your work.
Install thedelivery plans extension (https://marketplace.visualstudio.com/items?itemName=ms.vss-plans) from the marketplace. Developed and maintained by Microsoft, this extension is free for all TFS users except stakeholders. With the extension installed, you'll see the Plans
page in the work hub:
To see all the features of the Plans
extension, you need multiple teams and projects. Use the sample data widget we discussed in the Getting social with work items recipe to create multiple projects. Since delivery plans are based on creating a portfolio of work in flight, it relies on a sprint's schedules for the teams.
Let's perform the following steps:
- Click on the
New plan
button to create a new plan. Call the planmyDeliveryPlan
:
- The delivery plan brings the feature backlogs of the selected teams onto the canvas. You'll notice in the following screenshot that the sprint cadence of the PartsUnlimited team is different from the bike 360 and Fabrikam Fiber team, but the delivery plan makes it possible to visualize their feature backlogs on a single canvas:
- Next, click the
Configure plan
settings gear icon on the top right-hand side of the page to personalize the delivery plan. AddMarkers *
for key milestones, such as bug bash, scrum of scrums, team review, and any other key dates:
Last but not least, similar to other boards, the plans also support customizing cards. This allows you to surface more information by including more fields in work item cards.
With the configuration for the plan complete, the final result is a delivery board that rolls up the work items from multiple teams and projects into a single view along with markers. The board supports all drag and drop operations and makes it really easy to use this view to take actions during planning and tracking sessions. As teams continue to become more distributed and the size/scope of work continues to grow, delivery plans make it easy to visualize your portfolio of teams and projects from across the organization: