Features

All TeamCompanion features documented with detailed description, images and videos.

Agile Project Management

The TeamCompanion’s agile project management tool is called Plan and Prioritize. It is located under the Work Items node in Outlook’s Navigation Pane pane for each connected team project.

When you click on this node, the corresponding ribbon tab Plan and Prioritize will appear, containing all project management related actions together with (the list of) all available Team(s). Using these ribbon icons, you can switch between different team contexts.

The team in whose context you worked last time will be set as active and the icons for its Product Backlog and Iterations will be added to the ribbon. Using these ribbon icons, you can easily switch between this team's associated Product Backlog View and all its Iteration Backlog Views. By default, Outlook will show the view that you last worked with, or the product backlog, in case you start working with a new team.

TeamCompanion uses custom work item queries to retrieve the contents of product and iteration backlog lists. To manually refresh the lists and configuration settings, click on the button Refresh in the Query group on the ribbon.

The first step you need to take is configuring all aspects of your Team(s). To fully define a team, you need to define team members, team scope, the backlog and iterations.

After that you can start grooming your Product Backlog. Among other features, TeamCompanion supports drag and drop reordering of product backlog items and quick addition of new product backlog items.

Define your iterations by setting their time span and capacity settings, as well as various interruptions and team member's special capacities.

While initially planning your iterations, drag and drop your PBIs from the product backlog list to the Iterations or Teams Pane on the right hand bar.

Let the built in Velocity chart and various statistics assists you on the way.

For detailed iteration planning, open the desired Iteration backlog list, break down your PBIs into child tasks and estimate them more accurately in remaining working hours.

For quick area, team member or discipline assignment, select the desired PBIs and their child tasks and drag them to the corresponding pane on the right hand bar .

Balance the workload of your team members using the built in Capacity Chart and different statistics. TeamCompanion offers supports for various capacity planning strategies.

Graphically track the status of your iterations by analyzing their corresponding Burndown Charts, real time charts based on historical information from transactional data.

Advanced filtering and searching options help you manipulate the product and iteration backlog lists and show just those list items you are currently interested in.

The TeamCompanion’s agile project management toolset can be configured in various ways to support your way of doing agile.

Managing Teams

The first step you need to take to start using the TeamCompanion’s support for agile project management is defining your Team(s).

On the Plan and Prioritize tab, in the Teams group, click on the Manage Teams button. Alternatively, you can right-click on the Plan and Prioritize node in Navigation Pane and select Manage Teams from the context menu.

Next, the Manage Teams dialog opens. Select an existing team or create a new one by using the dropdown list and the buttons on the top of this window. Then you can start managing the team membership, scope and iterations. In order to fully define a team, you need to provide information on the tabs Team Members and Team Iterations.

The Team Overview tab is primary used to define the Team Scope.

Additionally, you have a quick overview of all settings from the Team Members and Team Iterations tabs. At a glance, you can see all team members and alter the list of team administrators by using the quick picker dropdown list. You can see what backlog and team iteration the team is using.

Tipp: When you start the Plan and Prioritize tool for the first time for a team project, TeamCompanion will create a default team with one member, and assign it a default iteration and default scope. After that you need to either configure this team to suite your needs, or create your new team and remove this default one.

Full team management rights include the following rights:
- rights to manage team membership, team member's properties, team scope and team iterations (Team Administrator rights);
- rights to add new and remove existing teams.
For more information see under Plan and Prioritize Configuration.

Managing Team Members

To define the members of your team, open the Manage Teams dialog and switch to the Team Members tab.

The left part of this tab contains the list of active team members, while the right part allows you to manage properties for each team member.

To add or remove team members, click on the Edit Members button. The Add or Remove Team Members dialog appears next. You can add new team members from the list of Available Team Members or remove existing team members from the list of Selected Team Members.

Each team member can be a Team Administrator - an authorized member that can manage all team properties for his own team. He can manage team membership and team member's properties, team scope and iterations, as well as iteration's capacity settings. For more information concerning rights for managing teams see under Plan and Prioritize Configuration.

You can define a Discipline for each team member. This setting is important in case you are doing capacity planning by disciplines.

You can set one default team member for each team. This setting is important when quickly adding new Product Backlog Items and in case you are doing capacity planning by teams.

To quickly remove a team member, select it in the list of active team members and click the Remove from Team button.

Managing Team Iterations

To define the backlog and team iterations your team will work on, open the Manage Teams dialog and switch to the Team Iterations tab.

Backlog Iterations define which TFS team project iterations are treated as the Product Backlog. Work items belonging to those iterations will be shown in the Product Backlog list for your team. Select at least one iteration from the list of available TFS iterations in the quick picker dropdown list. There is no limit to the number of selected backlog iterations.

If you have more backlog iterations, define which one will be the default backlog iteration. This setting is important while dropping items on the backlog in the right hand Iteration Pane, when quickly adding new Product Backlog Items and in case you are doing capacity planning by teams.

Team Iterations define which TFS team project iterations are treated as Iteration (or Sprint) Backlogs. Select the iterations that your team works on from the list of available TFS team project iterations. You will usually select the current iteration, a couple of previous iterations, to be able to follow the velocity, and a couple of future iterations, to facilitate planning.

Work items belonging to selected iterations will be shown in the corresponding Iteration Backlog lists for your team.

Managing Team Scope

To define the scope your team will work on, open the Manage Teams dialog and switch to the Overview tab.

The Team Scope is the set of TFS team project areas your team is working on. Only work items belonging to these areas will be shown in the Product Backlog and Iteration Backlog lists for your team. Select at least one area from the list of available TFS areas in the quick picker dropdown list.

If your team works on more than one area, define which one will be treated as the default team scope. This setting is important when quickly adding new Product Backlog Items and in case you are doing capacity planning by teams.

Product Backlog View

To show the Product Backlog View, first start the TeamCompanion’s agile project management tool Plan and Prioritize and then use the buttons on the ribbon tab Plan and Prioritize as follows:
- Click on one of the team buttons to show the corresponding Backlog Plan button and iteration backlog buttons on the ribbon.
- Click on the button Backlog Plan to activate the product backlog view.

The Product Backlog View contains several elements. The actual list of product backlog items (PBIs) occupies the bottom of the Outlook’s central pane and includes an additional right hand bar with several panes.

Using the ribbon tab button Velocity you can turn the Velocity Chart on and off, which then occupies the top part of the pane.

The Product Backlog View provides full support for following actions:
- Product Backlog grooming and prioritization using drag and drop;
- Iteration planning.

Product Backlog List

The list of Product Backlog Items - PBIs for a team is located in the Product Backlog View of this team. It contains the following areas:

1. The list of Product Backlog Items - PBIs - all work items that belong to the team's backlog iteration and scope. This list is ordered by priority - the most important items are on the top of the list.

2. List header with following additional actions and information:
- General information area containing the total number of list items, the number of selected list items and the sum of effort in story points for selected list items;
- Filters;
- Full text Search field;
- Product Backlog Statistics;
- set of controls for quick addition of new PBIs.

The list contains all top level PBIs and is typically not hierarchical. In case some PBIs have already been decomposed into child tasks, these are visible in the list as well. You can collapse and expand the list with the corresponding Collapse All/Expand All buttons on the Plan and Prioritize ribbon tab.

This list is a first class grid control, identical to any other work item query result list and therefore offers the expected work item management user experience. For example, you can preview each work item, add related work items, execute actions on a selection of work items, etc.

You have access to all actions on the Work Item(s)/Query ribbon tab, like bulk reassign, send by mail, etc.

The Product Backlog List provides full support for product backlog grooming and prioritization. Simply change the order of your PBIs by using drag and drop. Changed PBIs will be displayed in italics. You can reorder multiple PBIs and save all changes at once or simply undo them and start reordering again.

You can also select the desired PBIs (and their child tasks) and drag them to the right hand bar for quick iteration, area, team, team member or discipline assignment.

TeamCompanion uses a custom work item query to retrieve the content of this list. For more information about how you can partly customize the query and its visible columns see under Plan and Prioritize Configuration.

Product Backlog Statistics

Several important product backlog statistics are visible in the header of the product backlog list. Their purpose is to assist you while performing product backlog grooming or iteration planning.
They are adjusted automatically depending of the type of actions you perform with your PBIs.

The Scheduled Product Backlog Items statistic displays the percentage of all product backlog items for the selected team that are planned so far (have been assigned to any team iteration). The formula is: [number of planned PBIs/total number of PBIs][%].
For example, if you have a total of 20 PBIs, and you have 13 planned PBIs, this statistic shows 65%.

The logic behind the Scheduled effort statistic is same as in the previous statistic. Instead of analyzing the number of PBIs, it analyses the cumulative remaining work for PBIs. After a PBI is decomposed into child tasks, the remaining work for each task is estimated. The remaining work for one PBI is then calculated as the sum of remaining work of all its child tasks.

The statistic displays the percentage of remaining work for all PBIs that are planned so far (assigned to any team iteration). The formula is: [sum of remaining work of planned PBIs/sum of remaining work of all PBIs][%].

As example we will take the same case as in the previous statistic - a total of 20 PBIs and 13 planned PBIs so far. These 13 planned PBIs are decomposed into tasks with total remaining work of 40 hours.
Typically, the PBIs still on backlog are not decomposed into tasks. In this case, the statistic shows 100%, because all estimated PBIs are already planned (sum of remaining work of planned PBIs = sum of remaining work of all PBIs).

In some cases you will have PBIs that have been assigned to some iteration in the past, decomposed into tasks and estimated, and then returned back to backlog. The product backlog list shows child tasks for such PBIs as well. Let's say that in our example, we have one backlog PBI decomposed into tasks with total remaining work of 25 hours.

In this case, the statistic shows 61%, because just a percentage of estimated PBIs are already planned (sum of remaining work of planned PBIs is 40; sum of remaining work of all PBIs is 65; the result is rounded).

The Product Backlog Items done statistic displays the percentage of all product backlog items that are done so far. The formula is: [number of done PBIs/total number of PBIs][%].
Let's say that in the previous example with a total of 20 PBIs, we have already finished working on 10 PBIs and they are set to state done. This statistic shows 50% (number of PBIs done is 10; total number of PBIs is 20).

Note: Currently the statistics Scheduled Product Backlog Items and Product Backlog Items done take into account only types defined as Product Backlog Items in Plan and Prioritize Configuration.

Quick Addition of New Product Backlog Items

The header of the product backlog list contains a set of controls for adding new product backlog items. You can quickly add new PBIs with just a few strokes.

Select the PBI Type, type its Title and press enter or click on the Add button. The new PBI appears in the product backlog list and has a negative value in the ID field. It is placed above the initially selected PBI and is currently selected.

This item is not automatically saved to TFS and is therefore shown in italics. After you add your new PBIs in the described way, you can save them all at once using the ribbon button. Newly created PBIs will change their look to normal and their negative ID values will be replaced by valid IDs. After that, you can further edit these work items as needed.

If you want to discard all your changes, simply undo your additions using the ribbon button. If you want to undo the addition of a single PBI that has still not been saved to TFS, right click on it and select Undo Work Item from its context menu. If you want to undo the addition of more PBIs, select them in the list and use the same action.

Tipp: While offline, you can add new PBIs to the product backlog and undo your additions, but you cannot save them to TFS.

Using the Plan and Prioritize Configuration, you can define additional top level work item types. These will then appear in the new PBI Type drop down (if you have just one top level work item type defined, this drop down is disabled).

The settings for the selected team and the PBI's work item type define how several fields are automatically filled with default values:
- Iteration = default backlog iteration;
- Area = default team scope;
- Assigned To = default team member.

If your PBI's work item type contains required fields (other than Title) that cannot be filled automatically, the corresponding embedded work item form for this PBI will be shown in a separate window, and you will have to fill in all required fields in order to create the new PBI.
Tipp: Such PBIs cannot be added when working in offline mode.

Velocity Chart

To assist you in your planning efforts, TeamCompanion implements the Velocity Chart. By reviewing this chart you can:

- track how much effort your team has reported as complete for each iteration;
- estimate how much backlog effort your team can handle in future iterations if your team composition and iteration duration stay constant.

When working in the Product Backlog View, you can turn the velocity chart on and off by using the tab Plan and Prioritize ribbon tab button Velocity. The chart occupies the top part of the central pane.

The source of the raw data for the velocity chart is your product backlog. The horizontal axis includes the backlog and all team iterations. The vertical axis shows effort in story points. Completed story points are shown in green and planned in blue.

When working in the Iteration Backlog(s), the velocity chart is always displayed on the pane Velocity in the top part of the central pane.

The velocity chart shows following information:
- the amount of effort still on backlog;
- the amount of effort that your team has reported as completed (done) for each past iteration;
- the amount of effort that your team has planned for future iterations.

Iteration (Sprint) Backlog View(s)

To show one of the Iteration (Sprint) Backlog Views, first start the TeamCompanion’s agile project management tool Plan and Prioritize and then use the buttons on the ribbon tab Plan and Prioritize as follows:
- Click on one of the team buttons to show the corresponding product backlog button and iteration backlog buttons on the ribbon. For a larger number of iterations, a dropdown list will appear instead of iteration buttons.
- Click on the one of the iteration buttons or choose your iteration from the list to activate the desired iteration backlog view.

Each Iteration Backlog View contains several elements. The actual list of product backlog items (PBIs) planned for that iteration occupies the bottom of the Outlook’s central pane and includes an additional right hand bar with several tabs.

The top part of the central pane is filled with following panes (displayed as tabs):
- Team - displays chart with workload and capacity for each team member;
- Capacity - contains iteration capacity settings;

- Burndown - displays the burndown chart;
- Velocity - displays the velocity chart.

The Iteration Backlog View provides full support for following actions:
- Iteration capacity planning with graphical tools and drag and drop;
- Progress tracking using burndown chart

Iteration (Sprint) Backlog List(s)

The list of product backlog items (PBIs) planned for a particular team iteration is located in the corresponding Iteration Backlog View of this team. It contains the following areas:

1. The list of Product Backlog Items - PBIs and their child items that belong to the corresponding team iteration and scope. This list is ordered by priority - the most important items are on the top of the list.

2. List header with following additional actions and information:
- General information area containing the total number of list items, the number of selected list items and the sum of effort in hours for selected list items;
- Filters;
- Full text Search field;
- Restore and Maximize buttons for showing/hiding the upper area with panes;
- Iteration name and time span;
- Iteration Statistics;
- set of controls for quick addition of new child work items.

This is a hierarchical list. It contains all top level PBIs and their child tasks if they exist. You can collapse and expand the list with the corresponding Collapse All/Expand All buttons on the Plan and Prioritize ribbon tab.

This list is a first class grid control, identical to any other work item query result list and therefore offers the expected work item management user experience. For example, you can preview each work item, add related work items, execute actions on a selection of work items, etc.

You have access to all actions on the Work Item(s)/Query ribbon tab, like bulk reassign, send by mail, etc.

Each Iteration Backlog List provides full support for all iteration planning related actions. Simply change the order of tasks under top level PBIs by dragging them one above another.

Select the desired PBIs or their child tasks and drag them to the right hand bar for quick area, team, team member or discipline assignment.

Furthermore, to assign items to team members you can drag and drop them on the team capacity chart displayed on the Team Pane.

Changed items will be displayed in italics. You can make multiple changes and save all changes at once or simply undo them and start planning again.

TeamCompanion uses a custom work item query to retrieve the content of this list. For more information about how you can partly customize the query and its visible columns see under Plan and Prioritize Configuration.

Iteration Backlog Statistics

The Team Capacity statistic is visible in the header of each iteration backlog list. It displays the ratio between the total remaining work in the selected iteration and the total available capacity in this iteration. The measurement units used are hours (h). For more information see under Iteration Pane in right hand bar.

The purpose of this statistic is to assist you while performing iteration and capacity planning. It is adjusted automatically depending of the type of actions you perform with your PBIs and their child tasks.

Tipp: Hover over the statistic to show a detailed tooltip.

Quick Addition of New Child Level Work Items

The header of the iteration backlog list contains a set of controls for adding new child level items to PBIs assigned to that iteration.

Click on a PBI in the list to which you want to add the child item, type the child item’s Title and Remaining Work and press enter or click on the Add button. The new item appears in the iteration backlog list and has a negative value in the ID field. It is placed as first child of the initially selected PBI and is currently selected.

This item is not automatically saved to TFS and is therefore shown in italics. After you add all your new child tasks in the described way, you can save them all at once using the ribbon button. Newly created items will change their look to normal and their negative ID values will be replaced by valid IDs. After that, you can further edit these work items as needed.

If you want to discard all your changes, simply undo your additions using the ribbon button. If you want to undo the addition of a single child item that has still not been saved to TFS, right click on it and select Undo Work Item from its context menu. If you want to undo the addition of more child items, select them in the list and use the same action.

Tipp: While offline, you can add new child level items to PBIs in an iteration and undo your additions, but you cannot save them to TFS.

Using the Plan and Prioritize Configuration, you can define which work item type and which of its numerical fields will be used for quick addition of child items.

The settings for the selected team and the child item's work item type define how several fields are automatically filled with default values:
- Iteration = current iteration;
- Area = default team scope;
- Assigned To = default team member.

If your child item's work item type contains required fields (other than Title and the selected numerical field) that cannot be filled automatically, the corresponding embedded work item form will be shown in a separate window, and you will have to fill in all required fields in order to create it.

Tipp: Such child items cannot be quickly added to the iteration backlog list when working in offline mode.

Team Pane

The Team Pane is part of each iteration backlog view and displays the individual capacity and current workload of each team member in form of a horizontal bar chart. Measurement units used on the horizontal axis are hours (h). The vertical axis shows all team members and an additional chart line marked as (unassigned) that displays the statistic for all still unassigned items.

The chart gives an excellent overview for all team members and provides you a quick way to visually analyze the status of your iteration.

As example, we will use an iteration that spans from 5th September to 16th September. The actual date will be 14th September, meaning that we still have 3 full working days until the end of the iteration.

The team member's total capacity in an iteration is defined on the Capacity Pane. The team member's individual capacity in an iteration is defined as his remaining capacity as of this day until the end of the iteration. That value is used to draw the corresponding horizontal bar for this team member.

In our example, Annie works 3h a day and her individual capacity until the iteration end (for the remaining 3 working days) is 9h. She has been assigned a total of 7h of work and thus has still 2h remaining capacity.
Tipp: The length of the horizontal axis is defined by the team member with the longest remaining capacity. In our example, this is Peter with his remaining capacity of 15h.

At the beginning of the iteration (on the first day of the iteration time span), each team member's individual capacity is equal to his total capacity in the iteration. As the time passes and the iteration reaches its end, each individual capacity value is adjusted to display the remaining capacity until the end of the iteration.

As the legend right of the chart shows, horizontal bars can be filled with different colors and can be divided in more areas. For each team member:
- the purple area represents utilized capacity i.e. work hours assigned;
- the green area represents available capacity i.e. work hours still free;
- the red area represents over assignment i.e. assignments that exceed the team member's remaining capacity.

You can refine the data displayed in the chart in several ways. Darker area shades then represent values regarding your selection, while lighter shades show values regarding the total result set.
To show the details for a selection of iteration backlog list items, check the Show for selection only checkbox under the chart and select the desired items in the list. The chart will be adjusted whenever you change your selection.

Whenever you activate a particular set of filters for an iteration backlog list, the chart will display partial results matching your filter. The chart will be adjusted whenever you change your active filters.
You can even combine these two refinement methods, and for example, after you have set an active filter, further analyze just a selection of filtered items.

The Capacity Chart is an excellent visual tool that allows you to see which team members are overloaded for the rest of the iteration. If a team member falls behind his schedule, his workload will immediately surpass his remaining capacity and raise a "flag" in form of a red area in his corresponding horizontal bar.

Capacity Pane

The Capacity Pane is part of each iteration backlog view and allows you to define all settings regarding iteration duration and capacity.

The top section of the pane contains the basic iteration settings. Each iteration is primarily defined by its Start and End dates, as well as Work hours per day. When you edit the settings for a new iteration for the first time, the default values for these fields will be:
- Start date = actual date;
- End date = actual date plus 14 days (we default to two week iterations);
- Work hours per day = 8.
You can further adjust these settings as needed.

These values are used as the base for calculating iteration duration and remaining capacity.
Iteration duration is calculated as the number of working days between iteration start and end dates, including start and end date, minus the sum of team interruptions.
Remaining capacity is the total iteration's remaining capacity as of this day until the end of the iteration. It is calculated as the sum of individual team member capacities in this iteration. The daily capacity of fully available team members is equal to the defined iteration's work hours per day. If you have defined any special capacities for your team members, then these values are used for calculating the remaining capacity. Additionally, weekends, individual team member interruptions and team interruptions are all accounted for.

Tipp: Working days are defined in Outlook. On the File ribbon tab, click on Options, select Calendar on the left and edit Work week checkboxes.

The iteration capacity estimated in Story points is not a required value and is set to 0 by default for a new iteration. Nevertheless, this values is used for calculating statistics in the Iteration pane in the right hand bar and it offers an alternative way for displaying the current iteration status, so we advise to use it regularly.

The middle part of the Capacity Pane consists of three tables:
- Team member interruptions - contains whole day interruptions for individual team members that occur during the iteration;
- Team interruptions - contains whole day interruptions for the whole team that occur during the iteration;

- Team members special capacities - contains capacity settings for individual team members valid during the iteration.
These table's headers automatically show if any special settings exist and allow you to show/hide the tables by clicking on the header.

The Save button is located at the bottom of the Capacity Pane and allows you to save your changes. All changes to capacity settings must be saved in this way. The save action initiated using the ribbon save button does not save changes to capacity settings.
If you want to revert to the values before you made any changes to capacity settings, use the Undo button.

Tipp: If you are using the MS Visual Studio Scrum 1.0 template on TFS 2010 the values of Start and End dates for your iterations are automatically synchronized with corresponding Sprint work item types. For more information see under Plan and Prioritize Configuration.

Defining Team and Individual Team Member Interruptions

Various interruptions that affect the flow of your iterations can be defined on the Capacity Pane of each iteration's backlog view.

The table Team member interruptions contains whole day interruptions for individual team members that occur during the iteration. To add an individual interruption, click on the Add new button to the right of this table. Select the team member from the dropdown list in the Team Member column and add the desired Start and End dates in the range of the iteration's time span. These are required fields.

You can additionally add a short description of the interruption (such as “Vacation”) in the Description column. The Duration column displays the total interruption length in days, excluding weekends. The Remaining column displays the number of remaining days for this interruption, excluding team interruptions.

If the interruption ends in the period from today until the iteration end, then this value shows you how many days this team member will still be unavailable. If the interruption end date is already passed, this value is 0, meaning your team member is fully available until the end of the iteration.

The table Team interruptions contains whole day interruptions for the whole team that occur during the iteration. To add a team interruption, click on the Add new button to the right of this table. You can add a short description of the interruption (such as “Team Meeting”) in the Description column. To define your interruption, you must enter a Date that falls in the iteration's time span.

To remove any existing team member or team interruption, select it in the corresponding table and click on the Remove button to the right of the table.

As soon as you add any interruption, the header of the corresponding table changes to reflect new settings. For example, if you add one team interruption, the header will change to One team interruption.

Whenever you make changes to these tables, you need to save them explicitly using the Save button located at the bottom of the Capacity Pane.

Defining Team Members Special Capacities

The daily capacity of fully available team members is equal to the defined iteration's work hours per day. If any of your team members has a schedule that differs from that, you can define its special capacity on the Capacity Pane of each iteration's backlog view.

These setting are usually used to define team members partial availability. For example, if your iteration defines 8 work hours per day, a tester can work only partially in the amount of 4 hours a day (in this way he can work on two parallel projects at the same time).

You can also define the case when a team member is working more than the defined work hours per day. For example, if all your team members work only 4 hours a day on this iteration and only one works 6 hours, then it would make sense to define 4 work hours per day for the iteration and add a special capacity for this one team member that works more.

The table Team member special capacities contains special capacity settings for individual team members valid during the iteration. To define a special capacity, click on the Add new button to the right of this table. Select the team member from the dropdown list in the Team Member column and add the expected value for Hours/Day. These are both required fields.

The values in other columns of this table are automatically calculated and display the following values:
- Days - number of remaining days this team member will work until the end of iteration, excluding personal interruptions and team interruptions (this number decreases as the iteration reaches its end and its final value is 0);

- Capacity - team member's remaining capacity in hours until the end of iteration [Days *Hours];
- Assigned - total number of hours that are assigned to the team member for the iteration (roll up of remaining work hours of work items already assigned to this team member in this iteration);

- Utilized - total number of hours of the team member's capacity that are allocated (Roll up of all the remaining work hours of tasks already assigned to this team member in this iteration, but the number cannot exceed the team member's capacity. This number is 0 until you assign some work to the team member, and then it equals the number of assigned hours as long as it is lower or equal to the member's remaining capacity);

- Over - number of hours by which the team member is overallocated during this iteration [Assigned – Capacity, when greater than 0];
- Under - number of free hours this team member still has during this iteration [Capacity – Utilized, when greater than 0];

Whenever you make changes to these tables, you need to save them explicitly using the Save button located at the bottom of the Capacity Pane.

Burndown Pane

The Burndown Pane is part of each iteration backlog view and displays the real time Burndown chart for that iteration based on historical information from transactional work item data. By reviewing this chart you can easily track the progress of your iterations. Once you start an iteration, TeamCompanion lets you constantly know how your team is doing and if your iteration plan is feasible.

The points on the horizontal axis represent all dates in the iteration, starting from one day before the actual iteration start date.

This chart concurrently shows values related to effort (measured in hours) and the number of remaining/completed tasks.

The left vertical axis shows the remaining effort in hours.
The Remaining effort is drawn as a green line with markers. It represents the roll up of remaining work hours of all active tasks in this iteration on each particular date. If you hover over a marker, the tooltip shows you the remaining effort on that particular date.

The Ideal burndown is drawn as a straight red line. It reflects the ideal scenario in which the team completes all the remaining effort at a constant rate by the end of the iteration.

The right vertical axis shows the number of remaining active tasks.
Completed tasks are displayed as orange columns on each particular date. This is the number of items marked as done on that particular date. If you hover over a column, the tooltip shows you the number of completed tasks on that particular date.

The Remaining tasks is drawn as a straight orange line. It represents the remaining number of active tasks in this iteration.

You track the iteration progress by comparing the remaining effort with the ideal burndown. As long as the remaining effort line tracks the ideal burndown line, your iteration is on schedule. If the remaining effort slips over the ideal burndown line, your team is having troubles completing their work. In this case you need to see if there are any impediments and revise the estimated remaining effort in order to help your team get back on the track as soon as possible.

The burndown chart is refreshed each time you activate the Burndown Pane.
Tipp: To manually redraw the burndown chart, right click anywhere on the white chart background and select Reset Cache.

Filtering Options in Backlog Lists

Various filtering options are available through buttons in the header of the product and iteration backlog lists. They help you manipulate the lists in the way that it shows just those items you are currently interested in.

When you activate a filter the grid automatically displays partial results matching the filter conditions. You can filter by iterations, areas, assignment (team members), work item type, discipline and state. You can create a set of more complicated filtering conditions by combining different filters. Filters are persisted between Outlook sessions.

For a filter to be active, at least one of its filter nodes must be checked. When a filter is activated, the appropriate icon is highlighted. If no nodes are checked for a particular filter, it is ignored. The filter window shows a check box list containing filters nodes and their child filter nodes where present. A click on the name of the parent filter node will check/uncheck all his child filter nodes. If you wish to select individual parent/child filter nodes, simply check their appropriate check boxes.

To remove a particular active filter, right click on its icon. All filters can be removed at once by clicking on the rightmost icon with small red x in the lower right corner.

By default, the area, assignment (team members), work item type and discipline filters are not set (all check boxes are cleared). The iteration filter is set in the iteration backlog lists to the corresponding iteration. The state filter is set by default to show only active items.

In the product backlog list, the Iteration Path filter filters PBIs by backlog iteration paths.
For example, product development can be divided into several release cycles (Cycle1, Cycle2, etc.) where every cycle has several iterations (Cycle1\Iteration1, Cycle1\Iteration2, etc., Cycle2\Iteration1, Cycle2\Iteration2, etc.).

Each cycle can have its own backlog iteration (these are usually the root iterations Cycle1, Cycle2, etc.) and their union is then considered as the product backlog. In such case, the Iteration Path filter would allow you to view just the PBIs for a particular cycle (for example Cycle2).

If this filter is not set, the product backlog list contains PBIs belonging to the union of all backlog iterations.

In iteration backlog lists, the Iteration Path filter is set by default and filters out only PBIs and their child tasks belonging to the corresponding iteration. In this case, the filter accepts only a single selection (check boxes are not available) and if you change it to some other iteration, you will be automatically transferred to this iteration's backlog list.

The Area Path filter filters PBIs by TFS area paths defined as team scope areas.
For example, the development of a family of related products can be organized as a single TFS team project, where the boundary between particular projects is regulated using different TFS areas (a typical example for this is the family of Microsoft Office products, with areas for Work, Excel, Access, Common, ect.).

If a team works on several products, its scope must include appropriate areas (Office\Word and Office\Common). In such case, the Area Path filter would allow you to view just the PBIs for a particular scope (for example Office\Word).

In this filter is not set, the product backlog list contains PBIs belonging to the whole team scope.

The Assigned To filter filters list items by assignment to team members. Alongside with all team members, it contains the additional node (unassigned) that helps you filter out all still unassigned items. In this filter is not set, the product and iteration backlog lists contain items assigned to all team members as well as unassigned items.

The Work Item Type filter filters list items by work item types which can appear in the product and iteration backlog lists. These are work item types defined for top level PBIs and their task child items, which are set in the Plan and Prioritize Configuration. In this filter is not set, the product and iteration backlog lists contain items of all allowed types.

The Discipline filter filters list items by TFS disciplines (activities). Alongside with all disciplines, it contains the additional node (none) that helps you filter out all items where the discipline is not set. In this filter is not set, the product and iteration backlog lists contains items belonging to all disciplines as well as items without a discipline.

The Other Settings filter offers you to filter list items in 2 specific ways by active states. The first node, Show only active User Stories filters out only active top level items. The second node, Show only active Child Items filters out only active child level tasks.

This filter is active by default with both filter nodes checked. This means that, by default, the product and iteration backlog lists contain only active top level PBIs and their active child tasks. In this filter is not set, the list contains both active and done items and their child tasks. For more information about active and done work item states see under Plan and Prioritize Configuration.

Search Options in Backlog Lists

Full text search over all items in the product and iteration backlog lists can be activated using the search field in the header of the list, right from filter buttons. It helps you manipulate the list in the way that it shows just those items you are currently interested in.

Equivalent as in work item query result lists, you can perform full text search over all work item fields as well as use advanced work item field search conditions.

Right Hand Bar

Product and iteration backlog lists have a right hand bar which contains following panes: Iterations, Areas, Teams, Members and Discipline. You switch between the panes using the icons on the bottom of the bar. The bar can be minimized if necessary.

This bar has a number of purposes.
- It is primarily used for quick iteration, area, team, team member or discipline assignment using drag and drop. These are the essential actions while performing iteration planning or capacity planning using different strategies.
- The panes on this bar show different statistics.

- The panes can be used to quickly set various filtering options.
- The panes can be used to quickly switch views between different teams and their corresponding backlog and iteration views.

Iterations Pane in Right Hand Bar

The Iterations pane is located in the right hand bar of each Product backlog and iteration backlog list. It shows a list that includes the backlog and all team iterations. Each item in the list has a name and a statistic in form of a horizontal bar.

When you click on the name of the backlog, you are transferred to the product backlog view. When you click on an iteration name, you are transferred to the corresponding iteration backlog view.

You can use the Iterations pane for quick iteration assignment using drag and drop. Select the desired items from a product backlog list and drag them to a particular iteration. In this case, the dropped items will be assigned to this particular iteration. Or select the desired items from an iteration backlog list and drag them to another iteration or back on the backlog. When you drop items on the backlog, they will be assigned the default backlog iteration. These changes are initially only local, and you need to save them to Team Foundation Server explicitly.

The results of the statistic available while working in the product backlog view are measured in story points and displayed as text (for example 10 of 15 Story points) and in form of colored areas in the horizontal bar for all list items.

For the product backlog list item, the statistic shows the sum of effort for all estimated PBIs on the backlog. If the sum is 0, no horizontal bar is visible and the text displays 0 Story points. If the sum is positive, then the corresponding horizontal bar is red and display the sum value (for example 10 Story points) .

For each iteration list item, the statistic shows the ratio between the total scheduled (remaining) capacity and the total remaining (available) capacity in that iteration. The total scheduled capacity is calculated as the sum of effort of all active PBIs assigned to an iteration.

The total remaining capacity is the difference between the total capacity for that iteration defined in the Capacity pane and the sum of effort of all done PBIs assigned to that iteration.

The colored areas in horizontal bars represent following values:
- purple = scheduled i.e. assigned capacity;
- green = remaining i.e. still available capacity;
- red = over assignment i.e. assignments that exceed team's remaining capacity in that iteration. Note: The statistics currently considers only types defined as Product Backlog Items in Plan and Prioritize Configuration.

In this example showing the product backlog view, the backlog statistic shows 14 Story points, meaning that the sum of effort for all estimated PBIs on the backlog is 14 (visible on the Velocity chart, and under Selected effort in the list header when all items selected).
The statistic for "Sprint 3" shows 23 of 24 Story points.

The total scheduled capacity is 23, meaning that the amount of active PBIs assigned (planned) to Sprint 3 is worth 23 story points (visible on Velocity chart).
The total iteration's capacity is 42 (visible on iteration's Capacity pane), while PBIs in value of 18 story points have been already delivered (visible on Velocity chart). The difference between these two values is 24, the total remaining capacity of this iteration.

The main purpose of this statistic is to assist you while performing the initial iteration planning. Select your most important PBIs from the backlog list and drag them to the iteration you are currently planning. If you want to return a PBI dropped on some iteration back to the backlog, simply click on the iteration name where you dropped it to switch to that iteration, and drag it back to backlog using the same logic.

The statistics, as well as the Velocity chart will update appropriately.

The results of the statistic available while working in an iteration backlog view are measured in hours(h) and displayed as text (for example 39 of 42 h) and in form of colored areas in the horizontal bar for all list items.

For the product backlog list item, the statistic shows the sum of effort for all estimated PBIs on the backlog, same as in the product backlog view.
For each iteration list item, the statistic shows the ratio between the total scheduled remaining work and the total available capacity in that iteration.

The total remaining work is calculated as the sum of remaining work values of all active iteration backlog list items. The total available capacity is the sum of individual remaining capacity (working hours) of all team members as of this day until the end of the iteration.

The colored areas in horizontal bars represent following values:
- purple = scheduled remaining work i.e. assigned work;
- green = remaining capacity i.e. still available resources;
- red = over assignment i.e. assignments that exceed the team member's total remaining capacity in that iteration.

In the same example as above, now showing the iteration backlog view for Sprint 3, the backlog statistic shows 14 Story points.
The statistic for "Sprint 3" shows 39 of 42 h. The total remaining work is 39h, what is the sum of remaining work values of all active iteration backlog list items (visible under Selected effort in the list header when all items selected).
The total available capacity is 42h (visible on iteration's Capacity pane).

Tipp: The logic behind the Team Capacity statistic in the header of each iteration backlog list is the same as for this statistic.

The main purpose of this statistic is to assist you while performing detailed iteration planning. As you break down your PBIs into tasks and estimate them more accurately in remaining working hours, you can follow how the capacity of your team is being captured. Later, during the iteration, this statistics reflects all updates regarding estimate changes to remaining work and completed work.

You have a constant overview of the iterations state, and you are able to immediately recognize if an iteration is healthy or in a critical state.

Areas Pane in Right Hand Bar

The Areas pane is located in the right hand bar of each product backlog and iteration backlog list. It shows the list of TFS area paths defined as team scope areas.

When you click on the name of an area, the appropriate Area Path filter is automatically set and your current list is filtered by that area.

You can use the Areas pane for quick area assignment using drag and drop. Select the desired items from a product backlog or iteration backlog list and drag them to a specific area. These changes are initially only local, and you need to save them to Team Foundation Server explicitly.

Teams Pane in Right Hand Bar

The Teams pane is located in the right hand bar of each product backlog and iteration backlog list. It shows the list of all teams.

When you click on the name of a team, you are transferred to the context of that team, same as if you have clicked on the corresponding team button on the Plan and Prioritize ribbon tab.

You can use the Team pane for quick team assignment using drag and drop. Select the desired items from a product backlog or iteration backlog list and drag them to a specific team. These changes are initially only local, and you need to save them to Team Foundation Server explicitly.

Members Pane in Right Hand Bar

The Members pane is located in the right hand bar of each product backlog and iteration backlog list. While working in the product backlog view, it shows the list of all team members of the team in whose context you are currently working.

When you click on the name of a member, the appropriate Assigned To filter is automatically set and your current list is filtered by that member.

You can use the Members pane for quick team member assignment using drag and drop. Select the desired items from a product backlog or iteration backlog list and drag them to a team member. These changes are initially only local, and you need to save them to Team Foundation Server explicitly.

While working in an iteration backlog view, each team member has a corresponding statistic in form of a horizontal bar, which shows his current workload. This are the same values displayed on the Team Pane.

Discipline Pane in Right Hand Bar

The Discipline pane is located in the right hand bar of each product backlog and iteration backlog list. While working in the product backlog view, it shows the list of all disciplines. While working in an iteration backlog view, each discipline has a corresponding statistic in form of a horizontal bar. Both lists include an item marked as (none) that represents all items without a discipline.

When you click on the name of a discipline, the appropriate Discipline filter is automatically set and your current list is filtered by that discipline.

You can use the Discipline pane for quick discipline assignment using drag and drop. Select the desired items from a product backlog or iteration backlog list and drag them to a particular discipline. These changes are initially only local, and you need to save them to Team Foundation Server explicitly.

The results of the statistic available while working in the iteration backlog view are measured in hours(h) and displayed as text (for example 21 of 24 h) and in form of colored areas in the horizontal bars for each list item. The statistics show the ratio between total scheduled work and total available capacity for each discipline.

Total scheduled work for a discipline is calculated as the sum of remaining work values of all active iteration backlog list items belonging to that discipline. Total available capacity for a discipline is the sum of individual remaining capacity (working hours) of all team members assigned to that discipline as of this day until the iteration end.

The colored areas in horizontal bars represent following values:
- purple = scheduled remaining work i.e. assigned work for a discipline in that iteration;
- green = remaining capacity i.e. still available resources for a discipline in that iteration;
- red = over assignment i.e. assignments that exceed the team member's total remaining capacity for a discipline in that iteration.

In this example showing the iteration backlog view, the statistic for the "Development" discipline shows 21 of 24 h. The list has been filtered by team members whose discipline is defined as Development, Annie and Peter. The sum off their available capacity as of this day until the end of the iteration is 24 (visible on iteration's Team pane).

The total scheduled work for this discipline is 21, meaning that the sum of remaining work values of all active iteration backlog items belonging to this discipline is 21h (visible under Selected effort in the list header when all filtered items selected).

For this statistic to work properly, you need to define a discipline for each team member. In contrary, the total available capacity values for all disciplines will be 0 and when you set disciplines for your tasks, all the statistic result will be red (you will have scheduled work per discipline, but no capacity per discipline defined).

If disciplines are not important in your project, then you will have a total available capacity of 0 for all disciplines, and all tasks will be taken into account when calculating the values for the (none) list item. In this case, the result for this item will be same as the result of the capacity statistic for the selected iteration in the Iterations pane.

The main purpose of this statistic is to assist you while performing detailed iteration planning. As you break down your PBIs into tasks, estimate those more accurately in remaining working hours and assign them to appropriate disciplines, you can follow how the capacity of your team members regarding their disciplines is being captured.

Later, during the iteration, this statistics reflects all updates regarding estimate changes to remaining work and completed work. You have a constant overview of the iteration state, and you are able to immediately recognize if an iteration is healthy or in a critical state.

Drag and Drop Support

Various drag and drop actions are available in various parts of the TeamCompanion’s agile project management tool Plan and Prioritize. We provide various graphical tools and charts with drag and drop support for work items to facilitate your planning efforts, allow you to work quicker and in the most intuitive way.

In the product backlog list TeamCompanion supports first class drag and drop reordering of PBIs in the list. Simply change the order of your PBIs by dragging them one above another.

In each iteration backlog list TeamCompanion supports drag and drop reordering of tasks under top level PBIs in the list. Simply change the order of tasks by dragging them one above another.

In each iteration backlog view TeamCompanion supports quick team member assignment by dragging items to the Team pane. Select the desired items and drag them to the horizontal bar of the appropriate team member in the chart.

In both product backlog and iteration backlog lists, quickly change iteration, area, team, team member or discipline assignment of your items by dragging them to the corresponding pane on the right hand bar.
Each such action changes one or more work item field values depending on the target pane in the following way:

- drop on any iteration in Iterations pane, assigns the dropped items to this particular iteration;
- drop on the backlog in Iterations pane, assigns the dropped items to the default backlog iteration;

- drop on any area in Areas pane, assigns the dropped items to this particular area;
- drop on any team member in Members pane, assigns the dropped items to this particular area;

- for details about changes after dropping items on any team in Teams pane, see under Capacity planning by teams;
- for details about changes after dropping items on any discipline in Discipline pane, see under Capacity planning by disciplines.

All described changes are initially only local, and you need to save them to Team Foundation Server explicitly. If you want to discard your changes, use the undo action.

Support for "What If Analysis"

TeamCompanion supports the powerful "What If Analysis" process, whose objective is to allow you to change your product and iteration backlog lists to see how those changes will affect their current and future state and progress, without actually saving your changes to Team Foundation Server.
Perform your planning efforts with the help of supported drag and drop actions. Quickly add new product backlog items (PBIs) to the product backlog list or new child level items to PBIs in iteration backlog lists.

All changes made in this way are initially only local, and you need to save them to Team Foundation Server using the Save button on the Plan and Prioritize ribbon tab. On the other hand, if you want to discard all your changes, use the Undo button.

It is also possible to undo the addition of a single new item in product and iteration backlog lists, which has still not been saved to TFS. This means that you can remove a newly added PBI item from the product backlog list and that you can remove a newly added child item in the iteration backlog list. Simply right click on the item you want to remove from the list and select Undo Work Item from its context menu. If you want to undo the addition of more items, select them in the list and use the same action.

Note: When using the save and undo actions from the ribbon, all existing changes in your product backlog and all iteration backlog views are saved or discharged. So we advise you to save your changes at each point during planning when your plan is feasible and matches your expectations. Afterwards, during successive actions, you will be able to use the "What If Analysis" support for that planning section only.

While working in offline mode, you can change the product and iteration backlog lists using drag and drop, quickly add new items (as long as they use just the default required fields) as well as undo these changes as described above. All changes will be persisted locally until you get online again and can save them to TFS.

Supported Capacity Planning Strategies

TeamCompanion offers you support for using different capacity planning strategies. No matter if you plan your iterations by assigning tasks to your team members, teams or disciplines, you have the adequate tools and methods on your disposal.

The most frequently used strategy for capacity planning is capacity planning by team members. You assign your items to particular team members that already have a defined capacity for an iteration.
You can do this by dragging items from product and iteration backlog lists onto the right hand Members pane or onto the chart on the Team Pane.
The corresponding product backlog statistics and iteration backlog statistics, statistics in the right hand Members pane as well as the Team Pane chart are updated to reflect your changes.

Capacity planning by teams is a strategy used usually during the initial iteration planning stage, when PBIs from the product backlog are assigned to different teams. You can do these actions by dragging items from the product backlog list onto a team in the right hand Teams Pane.

As the result of this action, items will be:
- assigned to the default member of that team if defined;
- moved on the default backlog iteration of that team;
- moved under the default scope of that team.

Capacity planning by disciplines is a strategy used usually during the detailed iteration planning stage, when you plan who is going to work on particular tasks. It consists of assigning tasks to different disciplines instead to particular team members. The team itself then decides which actual team member having this discipline knowledge will actually work on the task.

You can plan by disciplines by dragging items from the iteration backlog list onto a discipline in the right hand Discipline pane. As the result of this action the Activity field of changed tasks will be set to the corresponding discipline.

All described changes are initially only local, and you need to save them to Team Foundation Server explicitly. If you want to discard your changes, use the undo action.

Managing Configuration Settings

The TeamCompanion’s agile project management tool Plan and Prioritize can be configured in various ways to support your way of doing agile.

Three Team Foundation Server process templates are supported out of the box. They are MSF Agile 5.0, MSF CMMI 5.0 and MS VS Scrum 1.0. These three templates will be automatically recognized by TeamCompanion and if your team project is based on any one of them, you can start using the tools straight away.

Our agile project management features work with any other (customized) TFS process template as well. For such templates you need to configure the tool first. Once you make your changes, they are saved on the server and available to all team members, after they refresh the contents of any product or iteration backlog list.

You can access the process template configuration dialog by clicking on the Configure button on the Plan and Prioritize ribbon tab.

First choose the Project Process Template you want to configure from the dropdown list. TeamCompanion analyzes the type and settings of the TFS process template your team project is based on, and offers you more options in case your template matches more supported templates. For example, if you are using a customized MSF Agile 5.0 process template, then the dropdown list would contain two entries: the default MSF Agile 5.0 and your customized MSF Agile 5.0.

On the tab General you define various settings that make it possible for TeamCompanion to manage your product and iteration backlog lists, support drag and drop reordering of list items, calculate statistics, etc. Hover over each particular setting to see its tooltip explanation.
In the Visible items section, you define the following settings:
- the main top level PBI work item type - choose one type from the dropdown list of all available types;

- additional top level PBI work item types that will not have child items of their own - choose one or more types from the quick picker dropdown list of all available types;
- child level work item types - choose one or more types from the quick picker dropdown list of all available types;
- the plural name of the top level work item type - type in the correct plural name used in various parts of the user interface.

In the Fields section, you define the following settings:
- the work item field used for ordering of items in the product and iteration backlog lists - choose one field from the dropdown list of all available numerical fields;
- the work item field which defines story points of top level PBIs and is used for calculations - choose one field from the dropdown list of all available numerical fields;

- the work item field which defines the amount of remaining work of child level items and is used for calculations - choose one field from the dropdown list of all available numerical fields;
- the work item field which defines the amount of completed work of child level items and is used for calculations - choose one field from the dropdown list of all available numerical fields.

A yellow exclamation mark is displayed if you select a work item field that is not present in all work item types used for that particular purpose. Hover over this icon, to see the cause of the error. For example, if you select "Task" and "Impediment" as child level work item types and you set the work item field "Remaining Work" as the source of the remaining work value, the error will warn you that "Impediment" does not support this work item field.

On the tab Sprints you define various settings currently used for the MS VS Scrum 1.0 template on TFS 2010 only that make it possible for TeamCompanion to work with this template. Define the appropriate Sprint work item type that maps to team iterations, together with its fields used for defining start and end dates.

After these settings have been configured, all changes to capacity settings of your iterations are synchronized with the corresponding Sprint work item types.
Tipp: TeamCompanion recognizes if you are using the default version of the MS VS Scrum 1.0 template and sets the right mappings on this tab for you. If you have customized your process template, please adjust these values by yourself.

The tab States contains a table with all available states of work item types from the process template. Here you define which states are considered as Active and Done while working with items in product and iteration backlog lists and calculating statistics.

On the tab Columns you can define the visible columns for product and iteration backlog lists. Select the desired list from the dropdown and customize its visible columns.

Full team management rights include following:
- Team Administrator rights to manage team membership, team member's properties, team scope, team iterations and iteration's capacity settings;
- rights to add new and remove existing teams.

By default, only TFS project collection administrators and TFS team project administrators have full team management rights. Since this is too restrictive, an existing administrator, with full management rights, can give the same management rights to an additional TFS project security group using the Security tab.

Two additional buttons are available on the bottom of the configuration dialog. The button Reset Template will restore the settings to the default version of the template saved on the server. The button Advanced allows you to edit process template setting in XML form. Please use these two options with caution.

Access Plan and Prioritize from Favorites

You can add a shortcut to the Plan and Prioritize tool to the Outlook's Favorites folder, making it even more accessible.

Right-click on the Plan and Prioritize child node under the Work Items node in Navigation Pane and select Show in Favorites from the context menu. You can also drag-n-drop it to the Favorites folder.

To remove this shortcut from the Favorites folder, right-click on it either in the Favorites folder or in the team project subtree and select Remove from Favorites from the context menu.