Situation

Team members are working on multiple projects, making it difficult to track how much work each individual is doing. Using Structure, you can quickly identify overallocation and underallocation, and reassign work on the fly.

Solution

Step 1

Insert issues from every project the team members are working on. The easiest way to do this is using an Insert generator to add all issues from specific projects or boards.

Step 2

Open the Quick Transformations toolbar and select By Assignee, or add a Group by Assignee transformation. (Hint: they both do the same thing!)


This will create a grouping for every team member with at least one issue in the current structure assigned to them. If someone doesn't have any issues assigned to them, they won't appear here. To fix this, simply assign an unassigned issue to that team member, and a new grouping will appear.

Step 3

Add columns to compare workloads. We recommend one or more of these:

  • ∑ Story Points (if you’re using them)
  • ∑ Original Estimate
  • ∑ Remaining Estimate

Using the Totals columns, the values for each issue will be aggregated up to their assignee, so we can evaluate workloads at a glance.

 

Step 4

To assign/reassign tasks, simply drag issues from one assignee grouping to another.

Optional Enhancements:

  • Limit the scope to a specific sprint by adding a Filter by Sprint transformation. (Haven't assigned sprints yet? Check out 2024-03-27_17-48-10_Backlog Grooming for Teams!)
  • To allocate resources at the group level, group issues by a custom Team field instead of Assignee.
  • Add a WSJF column to prioritize issues, and select Sum over sub-items to balance priorities across resources.
  • Consider using Structure.Gantt - it can identify and resolve overallocation automatically!