What's the one number that tells you your bug workflow is broken?
Here's a number that should make you pause: the U.S. economy lost $59.5 billion annually due to software flaws, even though about 50% of software development budgets go to testing (NIST). That's not a typo. Half of what we spend on building software is supposed to catch bugs, and we still hemorrhage billions. Why? Because we treat bug tracking as a filing system, not a decision-making process. We log defects, assign them, and hope. But hope isn't a strategy. The missing piece is triage—a deliberate, structured step where you decide what actually gets fixed, when, and why.
Isn't triage just another name for setting priority?
No, and conflating the two is a common misconception. Priority measures how urgent a bug is to fix, while severity measures how much it affects system functionality or user experience (Atlassian). Priority is about business impact and timing; severity is about technical impact. Triage is the act of evaluating both, plus the context: what's the user impact, what's the risk, what's the effort. It's where you decide whether a bug is a blocker, a 'fix now,' or a 'fix later.' Without a dedicated triage step, you're just assigning priorities based on whoever shouts loudest or whichever ticket has been open longest.
What does a proper triage step look like?
Think of it as a gate between 'New' and 'Assigned.' A typical bug lifecycle includes New/Open, Assigned, In Progress, Fixed, Pending Retest, Retest, Verified, and Closed (Atlassian). Triage slots right after New. In that step, someone—a lead, a PM, a rotating triage role—reviews each new bug and answers three questions: Is it a real bug? Is it a duplicate? And if it's real, what's the severity and priority? This is where you also catch the 'not a bug' or 'non-reproducible' cases early, instead of letting them rot in the backlog. It's a small investment that pays off in fewer false starts and less context-switching.
What happens if we skip triage?
You end up with a queue, not a system. Bugs sit in 'New' for weeks because nobody owns the decision. Developers randomly pick tickets, or worse, they pick easy ones, not important ones. Defect rejection ratio—(rejected defects / total reported) × 100—and defect leakage ratio—(production defects / total found) × 100—are metrics that can tell you how healthy your process is (Atlassian). Without triage, rejection ratios climb because half the bugs shouldn't have been filed as bugs in the first place. Leakage climbs because critical bugs slip through the cracks. Triage is the filter that keeps those numbers sane.
How does triage work for security vulnerabilities?
Security bugs are a different beast. They follow a separate lifecycle. The National Vulnerability Database (NVD) enriches every CVE with CVSS scores, CWE types, and CPE applicability statements, and it re-assesses when new info emerges (NVD). For exploited vulnerabilities, CISA's Known Exploited Vulnerabilities (KEV) catalog lists a remediation due date and whether the bug is used in ransomware campaigns (CISA). That's triage at a national scale: you have to prioritize based on real-world exploitation, not just severity. If a bug is in the KEV catalog, you don't wait for your next sprint—you fix it now. That's the kind of triage that saves your company.
How do I convince my team to adopt a triage step?
Start small. You don't need a big ceremony. A simple workflow—Open to In Progress to In Review to Done to Closed—can optionally include a Triage step (Atlassian). If you're using a tool like Bugzilla, you can customize it to fit your process; it was built to handle workflow management, bug visibility, and custom fields (Bugzilla). The key is to make triage a habit, not a project. Assign a triage owner, set a recurring slot (even 15 minutes a day), and make it a rule that no bug gets assigned without a triage decision. It's a tiny change that transforms your workflow from a pile to a pipeline.
Quick tip: Don't let triage become a bottleneck. If a bug is obviously a duplicate, mark it as such immediately. If it's not reproducible, don't reject it outright—ask for more details, but set a time limit.
What I'd actually do
If you're running a team of any size, I'd add a mandatory triage step to your workflow, even if it's just a checklist. Use severity and priority as separate fields, and tie priority to business impact—not just technical pain. For security bugs, check the KEV catalog first; if it's there, treat it as a blocker. And remember, the goal isn't to have a perfect system—it's to make sure the bugs that matter get fixed. A little triage goes a long way.
Sources
- Atlassian (bug life cycle) - https://www.atlassian.com/software/jira/guides/bug-tracking/bug-life-cycle
- Atlassian (issue priority vs severity) - https://www.atlassian.com/software/jira/guides/issues/priorities
- Bugzilla (official site) - https://www.bugzilla.org/about/
- CISA (Known Exploited Vulnerabilities Catalog) - https://www.cisa.gov/known-exploited-vulnerabilities-catalog
- NIST (2010 combination testing news release) - https://www.nist.gov/news-events/news/2010/11/updated-nist-software-uses-combination-testing-catch-bugs-fast-and-easy
- NVD (National Vulnerability Database) - https://nvd.nist.gov/general
Comments (0)
Please sign in to post a comment.
Don't have an account? Create one
No comments yet. Be the first to comment!