Setup Guide · Investment Allocation

Investment Allocation: tell it which tags mean what

Investment Allocation shows where your finished work actually went: features, bugs, maintenance and, once you switch it on, exploration. Investment tags are how you teach it your vocabulary. Maintenance tags come pre-filled and work with no setup, so read this when the split does not match how your teams really label their work.

What this view answers

  • How much of the work you finished was new features, how much was bug fixing, and how much was maintenance.
  • How much was exploration: spikes, research and discovery. This bucket appears once you configure exploration tags, and not before.
  • How much of the finished work also arrived inside the same window, shown as the unplanned share.
  • What could not be classified. Those items are listed with their work item types named, so nothing disappears from the totals.
  • All of it per team, plus an all-teams row for the whole project.
The window, and what counts as finished

The view counts work completed inside a trailing window of 14, 30 or 90 days, which you choose on the view itself. What counts as completed is decided by your Workflow Mapping, so if the totals look wrong before you touch a single tag, check that mapping first.

How work is classified

Every completed item is tested against these rules in order, from the top. The first one that matches decides the bucket, and the item is counted once.

  1. 1
    Maintenance

    The item carries one of your maintenance tags, whatever its work item type.

  2. 2
    Exploration

    Otherwise, the item carries one of your exploration tags. This rule only exists once you have added an exploration tag.

  3. 3
    Bugs

    Otherwise, the work item type is Bug or Defect.

  4. 4
    Maintenance

    Otherwise, the work item type is Task.

  5. 5
    Features

    Otherwise, the work item type is one your process uses for requirements: User Story, Product Backlog Item, Requirement, Feature or Epic.

  6. 6
    Unclassified

    Anything else. The view names the types it could not place rather than dropping the items.

How a tag is matched

  • Every item lands in exactly one bucket. The first rule that matches wins, which is why a tag always beats a work item type.
  • Matching is whole-tag and case-insensitive. A tag written Debt on the work item matches the tag debt in your list.
  • Matching is never a substring match. The tag debt does not match a tag called debtor.
  • A tag belongs to the maintenance list or the exploration list, never both. The editor refuses the second one and tells you why.
What you see if you try to add a tag twice

The panel refuses it and says, word for word: That tag is already in the other list. A tag can only mean one thing, so remove it there first.

The two lists

Both lists live in one panel, at Configuration → Item Types → Investment tags.

Pre-filled, works with no setup

Maintenance tags

On screen this list reads: Work carrying one of these tags counts as maintenance, whatever its type. These are the built-in defaults — edit them to match how your teams actually tag.

The seven built-in tags
  • tech-debt
  • techdebt
  • maintenance
  • refactor
  • refactoring
  • chore
  • debt
Empty until you opt in

Exploration tags

On screen this list reads: Work carrying one of these tags counts as exploration — spikes, research, discovery. Adding the first tag turns on the Exploration bucket in Investment Allocation.

Until you add one, the panel says No exploration tags yet — the Exploration bucket stays off until you add one. and Investment Allocation shows the four buckets it has always shown.

Where the lists are stored

One pair of lists is kept for the project rather than one per team. The panel puts it this way: These lists apply to the whole project, for every team — the team selector above changes item types only. Investment Allocation reads those project lists for every team row. For one case where a team does not yet pick them up, see what tags do not change yet, below.

Set up your investment tags

The panel is called Investment tags and it sits at Configuration → Item Types → Investment tags. Editing it takes an Azure DevOps organisation administrator. Everyone else sees the same lists, read-only.

  1. 1
    Open the panel

    In the extension, go to Configuration, open the Item Types tab, and scroll to Investment tags.

  2. 2
    Check that you can edit

    Only an Azure DevOps organisation administrator can change the lists. Everyone else can read them, and the add, remove, save and reset controls stay disabled. If yours are disabled, ask an administrator to make the change.

  3. 3
    Review the maintenance list

    It arrives pre-filled with the seven built-in tags above, so the view already works. If your teams tag maintenance work with one of those words, there is nothing to change.

  4. 4
    Add the tags your teams really use

    Type a tag into the box under Maintenance tags, then press Enter or a comma, or select Add. Remove a tag you do not use with the × beside it. Clearing the list entirely is honoured: no work will then be reclassified as maintenance by tag.

  5. 5
    Turn on Exploration if you want it

    The exploration list starts empty and the bucket stays off until you add the first tag. Add the words your teams already use for discovery work, such as spike or research.

  6. 6
    Check the scope before you save

    The two lists are stored once for the project, not per team. The team selector further up the tab changes work item types only, so changing it does not narrow the tag lists.

  7. 7
    Save

    Select Save investment tags. If you want to start over, Reset tags to defaults restores the seven built-in maintenance tags and empties the exploration list.

Checking it worked

  • Open Investment Allocation and set the window to 90 days, so there is enough completed work for the shape to be readable.
  • The Maintenance share should move once you add a tag your teams genuinely use. If it does not move, check the spelling against a real work item: matching is whole-tag, so a near miss matches nothing.
  • After your first exploration tag, an Exploration bucket appears in the bar and the legend. Before that it is not there at all, which is the intended behaviour rather than a missing feature.
  • Read the Unclassified list. It names the work item types the rules could not place, and it is the quickest way to find a type or a tag you have not accounted for.
  • If a team row looks emptier than you expect, check the area path. Team rows are filtered by area path, and completed work outside every team area path shows only in the all-teams row.

What tags do not change yet

Investment tags reach some of the product and not all of it. These are the places where two views can honestly disagree, so you can recognise the difference instead of chasing it.

Only two views read the tag lists

In this release the lists reach Investment Allocation and Sprint Summary. Cycle Time buckets, Sprint Burndown and Next Sprint Planning still group work by work item type only, so an exploration figure in Investment Allocation can differ from what those views show. That difference is expected, not a fault.

Teams with their own Item Types settings, in Sprint Summary

If a team has its own Item Types settings, Sprint Summary does not yet pick up the project exploration tags for that team, so its Exploration row can read low. Investment Allocation is not affected and shows the right split for every team. A fix is on the way.

Sprint Summary has no maintenance row

An exploration tag moves an item into the exploration row there. A maintenance tag has nothing to move an item to, so the item keeps the row its work item type gives it.

A tag moves an item, it never adds one

Tags change which bucket an item lands in. They cannot pull in an item that was not being counted. In Sprint Summary, an item whose work item type your item type mapping leaves out stays out of the breakdown however it is tagged.

Exclude Tasks wins over a maintenance tag

If you have turned on Exclude Tasks in Investment Allocation, a Task is left out of the view even when it carries a maintenance tag. That setting means your Tasks are breakdown units, and it removes them before anything is classified.

Team rows follow area paths

Each team row counts the completed work inside that team area path. Completed work that sits outside every team area path appears only in the all-teams row, so a team total and the project total can legitimately differ.

FAQ

Do I have to configure anything?

No. The maintenance list arrives pre-filled with seven built-in tags and the view works from them straight away. Configure the lists only if your teams tag maintenance work with different words, or if you want an Exploration bucket.

What if my team already tags differently?

Add your own tag names to the maintenance list and remove any built-in tags you do not use. The list is fully editable, including clearing it completely, and a cleared list is honoured rather than reset back to our defaults.

Why is my item Unclassified?

Because none of the rules matched it: it carries none of your tags, and its work item type is not Bug, Defect or Task, and it is not one of the requirement types. The view names the types it could not place, so you can decide whether to tag that work or leave it as it is.

Can a tag be in both lists?

No. A tag can only mean one thing, otherwise an item could belong to two buckets at once. Add a tag that is already in the other list and the panel refuses it and says which list to remove it from first.

Who can edit this?

An Azure DevOps organisation administrator. Everyone else sees the same two lists read-only, with the add, remove, save and reset controls disabled.

Does this change historical numbers?

It changes how finished work is grouped, not the work itself. The buckets are worked out each time the view loads, so a tag change regroups everything inside the current window immediately, including work that was finished before you made the change. Nothing is written back to Azure DevOps.

Need help?

Our support team is available Monday through Friday, 9 AM to 5 PM Pacific Time.