Making great software is an exciting and collaborative process. Teams often have too many things to do and not enough time to get them all done. Effective managers use their issue triage sessions as an asset by making them short but frequent, so everyone stays on the same page. Issue triage sessions often involve several if not all members the team, which makes them expensive meetings to run; plus, when run poorly, issue triage can be a drag. Issue triage sessions are an important staple in a healthy development program and keep the team focused on the right priorities.
How can you get more out of your issue triage sessions? Become triage fit! First, we will focus on you, the meeting owner. Successful preparation for the meeting helps everyone be more productive. Second, we will look at how effective use of JIRA makes everyone more productive in the meeting.
1. Make problem spots visible: Use dashboards
High-performing teams enable everyone to follow the key metrics in the program. When setting up dashboards and wallboards for your team, you want to make sure that the key performance indicators (KPIs) are clearly displayed on the team’s dashboard. Check out Christina’s blog on creating a killer dashboard. One of my favorite gadgets to use is the two dimensional issue statistics gadget. This gadget displays an aggregation of all the issues in your system, and easy-to-read tabular format. I typically use four versions of this gadget on my dashboard.
- All open issues by assignee and release
- All open issues by assignee and priority
- All open issues by priority and release
- All resolved issues by priority and release that have not been closed
Setting up to these versions of the two dimensional statistics gadget allows you to quickly spot where issues are clustering. For instance, if a particular development engineer has a large number of high priority issues in his or her queue, this gadget will bring it to the surface. All rows and columns in the gadget are hyperlinked, so it’s easy to drill down to see the issues represented in the grid. Let’s see how issue priority spreads across the team.
2. Get context: Quickly scan the issues to triage
Once I know the set of issues I need to triage, I spend a few minutes looking at all of the issues in aggregate using list view. In JIRA, list view shows a tabular representation of all of the issues in the search result. I quickly sort by assignee, then priority, and then the browser version from Bonfire so I can see if there are issues clustering into trouble spots. I will also scan the issue summaries as well. I want to look for:
- How many issues do we as a group need to review?
- What is the relative severity of all the issues to triage?
- Is anyone person on my team overloaded with work?
- Are issues clustering around a certain area of the product or from a recent and significant change in the code?
Why do I do this? I want to walk into the issue triage meeting with an overall understanding of all of the issues we need to review as a team. Doing so will make me a more effective leader and thus making the meeting run more fluidly.
3. Set clear meeting parameters
Doing the work in the steps above allows you to set parameters for the triage session once everyone joins. Now that you have a sense for the relative difficulty of the issues involved in your triage session, commit to a cadence that will keep everyone on track. You want to give each issue its due, but not dwell or rathole and waste everyone’s time. For example, in a 30 minute meeting you really only have 25 minutes of triage time. That’s only 60 seconds an issue for 25 issues. Before you start with the first issue, let everyone know if there are high-level themes that need to be addressed. For example, you may have too many issues for a particular milestone or a few engineers may be overloaded. Giving that simple context keeps everyone on the same page of what needs to happen for a successful meeting.
Always remember: Issue triage sessions are not meant to solve issues. Effective triage gives every issue a clear owner and sets its priority relative to all of the other issues in the program. As the meeting leader, it is completely okay to say, “We’re deep diving on this issue. Is this the best use of time or should we take it offline and move to the next issue in queue?”
4. Every decision should build collective knowledge
The biggest benefit and often overlooked value in triage sessions is that they give everyone in the meeting collective, shared knowledge about the program. When reviewing issues, give the team context in the current issue by bringing decisions up from prior issues. Let’s say we have two high-frequency issues in our triage session: ISSUE-98 and ISSUE-105. In the triage session we decided to defer ISSUE-98. While more frequent than the team would like, the user impact was low so they moved it out to the next sprint. When the group discusses ISSUE-105, compare it to ISSUE-98. Having the group compare these two issues builds shared knowledge about what’s important to the program. Calibrating the group on how frequency, user impact, and complexity of implementation affect planning minimizes group disagreements because everyone understands the parameters and shares in the final decision. Disagreement and discussion can be good things. It’s important that the group always learns from each decision it makes.
In JIRA 6 detail view brings issue triage into a single page experience. Why is this important? Every full page refresh disorients the group. Having all of your issues in a single page experience keeps everyone on the same page. When looking at ISSUE-105 The group may want to reread you ISSUE-98. In prior versions of JIRA you have to go back to list view, find the issue, and then open up the drill down view. With JIRA 6 it’s an easy scroll up and click to bring that issue into focus. Detail view trims the JIRA team’s triage sessions by more than 50 percent.
5. Run fast with keyboard shortcuts
Introduced in JIRA 4.1, keyboard shortcuts will revolutionize the way you use the product. As someone who has run triage sessions for many years, this single feature has enabled me to run issue triage sessions much faster. Whether you’re a beginning JIRA user or a seasoned pro, I recommend giving my favorite keyboard shortcuts to try. Drum roll please!
Move to the prior issue
Move to the next issue
|Assign an issue||
Transition an issue
Toggle between list and detail view
Get help on keyboard shortcuts
Go back to the dashboard
One important note: Keyboard shortcuts do not work within editable text fields. If you find that keyboard shortcuts are not working as expected, click in any non-editable space in JIRA and try again.
6. Maximize projector real estate
Although many laptops screens have added pixels over the years, projectors have remained at 1280×1024. In a triage session where sometimes fonts have to be enlarged, pixels really do matter. With JIRA 6, compact mode removes about 20% of JIRA’s chrome. Clicking the chevron to hide the sidebar gives your team more space to focus on triaging issues. More data on the screen means less scrolling and getting through your issues faster.
7. Look for opportunities to celebrate
I’ll concede, nobody jumps out of bed and races to work so that they can scrub issues. In fact, it’s probably one of the things people look forward to the least at work. That being said, issue triage really keeps you in touch with the hands-on work that the team is doing. When reviewing issues make mental notes about significant tickets. If the difficult issue needs to be delivered in a tight timeframe, set yourself as a watcher on that issue. When your team member delivers the solution, JIRA will notify you that the issue has moved from open to resolved. That’s your cue as a manager to touch base with that engineer and say, “Hey, great job!”
Using triage sessions to extend your touch with the day-to-day affairs of the team makes everyone more effective. The engineering team benefits by having a predictable schedule knowing they are working on the most important issues for the program. Managers will have better insight into what the team is working on and the difficulties they may be struggling with. Effective triage also gives insight on how the management team can casually recognize and reward the team as well.
So tell us: what makes your triage sessions awesome? We’d love to hear in the comments.