WIP per person JQL builder
Pick your projects, say which statuses count as in progress and set a limit, and get the JQL that shows work in progress for each assignee, how to build a dashboard from it, an Automation rule idea with its honest limits, and the command for a free script. It runs in your browser: nothing you type is sent anywhere.
Fix the highlighted fields to see the output.
Dashboard gadget setup
- Paste JQL 1 into the work item search, run it, and choose Save as to save it as a filter, for example WIP per person.
- Open a dashboard, choose Add gadget, and add Pie Chart. Pick the saved filter and set Statistic type to Assignee. Each slice is one person's share of the work in progress.
- Add Two Dimensional Filter Statistics for the counts. Pick the same filter, set the X axis to Assignee and the Y axis to Status, and turn on totals. This is the table to read against your limit.
- Add Filter Results with the same filter to list the work items themselves.
The gadgets show counts. They don't draw a limit line or mark who is over, so compare the totals with your limit by eye. Atlassian lists these gadgets under dashboard gadgets.
An Automation idea, and where it stops
- Trigger: Work item transitioned, to each status you count as in progress.
- Action: Lookup work items, using the JQL in output 5, so it counts that assignee's work in progress.
- Condition: Smart values condition:
{{lookupIssues.size}}is greater than your limit. - Action: add a comment that mentions the assignee, or send them an email.
- It warns after the move. Automation runs once the work item has already moved, so it can't stop the move. A rule could transition the work item back, but people see it jump.
- Two moves at once can both pass. The count is taken when each rule runs, so simultaneous moves may slip through.
- It uses your Automation runs. Every move into a status counts towards your plan's monthly limit.
- The limit is one number. A different limit per person means a rule or a lookup table per person.
- Check the smart values in the rule's preview. Confirm that
{{issue.assignee.accountId}}and{{lookupIssues.size}}return what you expect on your site before you rely on the rule.
To stop the move itself, the check has to run on the transition, and Jira's built-in validators can't count how many work items someone already has in progress, so that needs a scripted validator or an app. See How to set a WIP limit per person in Jira.
Prefer it enforced?
Personal WIP Limits gives each person a limit and stops new work from starting at the limit, with a message that says why. It works in company-managed and team-managed projects and is free for up to 10 users.
FAQ
What JQL shows work in progress per person? statusCategory = "In Progress" AND assignee is not EMPTY ORDER BY assignee. Use it as a saved filter in a dashboard gadget with Assignee as one axis.
Should I use a status category or a list of statuses? The In Progress status category follows every status your workflows put in that category, so new statuses are picked up. A list of statuses is exact, but it has to be kept up to date.
Can Jira stop someone from starting work above a limit? Not on its own: column limits count a column, not a person, and Automation acts after the move. An app or a script that checks the count is needed.
Is anything uploaded when I use this page? No. The page builds the text locally in your browser and does not call Jira.
By Kayabyte. Jira, Confluence and Atlassian are trademarks of Atlassian. Kayabyte is an independent developer and is not affiliated with or endorsed by Atlassian.