Bug Triage 完整流程 — 從 New 到 Closed 的 lifecycle 與 SLA 設計
Bug 從回報到關閉的完整 lifecycle。State machine、Severity/Priority 矩陣、Triage meeting 怎麼開、SLA 設計、跨團隊責任歸屬、避免 ticket 墳場。
💡 本文原刊於 qa.9niche.com,2026-08 併入 9niche.com 懶人包,內容照原文完整搬遷。
目錄
1. 前言
「Jira 上 800 個 bug 沒人處理」是大公司日常。Bug triage 流程設計爛 = ticket 墳場 = 真重要的事被掩埋。這篇給你完整 lifecycle、severity 矩陣、triage meeting playbook。
2. Bug 完整 Lifecycle
每個 state 都該有 owner(負責人)跟 SLA(多久該轉到下一個)。
3. 9 個 State 詳解
State 1: New(剛建立)
| 誰建 | QA / Support / User / 自動化系統 |
| Owner | 待 triage |
| SLA | 24 小時內 triage |
State 2: Triaged(分類完)
Triage 過程確認:
- ✅ Severity(傷害大小)
- ✅ Priority(修復急迫度)
- ✅ Component(哪塊)
- ✅ Assigned to(誰修)
- ✅ Target version(哪版修)
State 3: In Progress(修中)
State 4: Code Review
State 5: Ready for QA(待驗證)
State 6: Verified(驗證通過)
可以 close、或等下次 release。
State 7-9: Reject / Duplicate / Won't Fix
全都要寫原因。直接 close 是文化殺手。
4. Severity × Priority 矩陣
Severity × Priority 矩陣:
| Severity \ Priority | 低優先 | 高優先 |
|---|---|---|
| 高 Severity | 🟠 P1 · 這個 sprint<br>舊版瀏覽器 crash | 🔴 P0 · 放下一切<br>資料遺失、結帳壞 |
| 低 Severity | 🟢 P2 · 下個 sprint<br>Logo 變形、小錯字 | 🟡 P3 · Backlog<br>可繞過的 bug |
Severity(壞得多嚴重)與 Priority(多急著修)是兩個軸。高 Severity 不一定高 Priority — 一個只有舊瀏覽器才出現的 crash 可能晚點修。
Severity(傷害大小 — 由 QA 給)
S1 Critical: 系統當機 / 資料遺失 / 安全漏洞
S2 High: 主要功能無法用 / 阻擋 release
S3 Medium: 次要功能異常 / 有 workaround
S4 Low: UI 小瑕疵 / 文案錯字
Priority(修復急迫度 — 由 PM/Lead 給)
P0 Now: 阻擋發版 / 影響營收 / 法遵
P1 This sprint: 重要、本 sprint 修
P2 Next sprint: 規劃但可等
P3 Backlog: 看情況、可能不修
關鍵:Severity ≠ Priority
範例:
- Severity S1(會掉資料)+ 1% 使用者觸發 + 有 workaround → P1
- Severity S4(首頁 logo 跑版)+ 全站 → P0(brand 重要)
- Severity S2(特定 flow 壞)+ 0.001% 使用者 → P3(不修)
5. Triage Meeting Playbook
開會節奏
| 公司階段 | 頻率 | 時長 |
|---|---|---|
| 新創 / 小團隊 | 每週 1 次 | 30 min |
| 中型 | 每週 2 次 | 45 min |
| 大型 / 多 team | 每 team daily | 15 min |
參與者
QA Lead(主持)
Engineering Lead
Product Manager
Senior QA(書記)
(可選)Customer Support、Designer
議程範本
0:00-2:00 開場、上次 action item
2:00-20:00 Triage new ticket(每個 30 秒)
20:00-27:00 爭議 ticket 深入討論
27:00-30:00 Action items + 寫下來
30 秒一個 ticket 的關鍵問題
1. 這個 bug 確實是 bug 嗎? (Yes/Not a bug/Duplicate)
2. Severity 多少?
3. Priority 多少?
4. 誰負責?
5. 目標哪個 release?
爭議的留 5 分鐘討論、其他快速過。
6. SLA 設計
超 SLA 時自動 escalate
P0 超 SLA → Slack #incidents + Page on-call
P1 超 SLA → Slack #qa-leads + Email manager
P2 超 SLA → Daily standup 提
P3 超 SLA → Quarterly cleanup review
7. Bug 來源管理
每個來源該有 不同 intake channel:
- QA / Dev → 直接建 Jira/Linear
- Customer support → Form → 自動 create ticket(含 user info)
- Bug bounty → 走 security review
- 監控 / Sentry → 自動建、自動分類
8. 防止「ticket 墳場」
症狀:Backlog 1000+ ticket、過期、沒人 own。
Quarterly Cleanup(救命)
每季一次「bug bash cleanup」:
- 列 P3 + 90 天無動的 ticket
- 每個重新評估:still relevant?
- 不 relevant → Won't fix + 標原因
- Still relevant → 重新 prioritize
- 跑完後 backlog 通常砍掉 60-80%
Bug Budget(進階)
每 sprint 預留 20% 給 bug fix:
Sprint capacity = 100 hours
- 80 hours: feature work
- 20 hours: bug fix budget
新 P1 bug 進來 → 從 bug budget 扣。 Bug budget 用完 → feature 延、不加班補。
9. Reopen 模式分析
Reopen 率 > 10% = 流程有洞。
Verify SOP
1. Reproduce 原 bug(用原始 steps)
2. 確認在 fix 版本不能 reproduce
3. 跑相關 regression case
4. 跨環境驗(dev 改的 env 跟 prod 不一樣)
5. 看 fix 有沒有副作用(test 旁邊功能)
6. Close + comment:「Verified on [env] with [version]」
10. Bug 報告品質改善
11. 工具設定建議
工具: Jira / Linear / GitHub Issues / Notion
必設定:
- Issue template(強制欄位)
- Severity + Priority 兩個獨立欄位
- Status workflow(state machine)
- Auto-transition rules(例如 PR merge → 自動移 Ready for QA)
- SLA tracking + 超時 alert
- Dashboard(show me P0/P1 open、ticket age)
Linear 範例 workflow
Backlog → Triaged → In Progress → Code Review → Ready for QA → Verified → Closed
↓
Reopened ↺
加自訂 status: Cant Reproduce, Duplicate, Wont Fix。
12. 跨團隊 / Multi-team 流程
Routing 規則寫成文件。沒寫 = 每次 triage 吵 30 分鐘。
13. 反模式
14. 給 QA Lead 的 5 句
- 沒有 lifecycle 的 bug 系統 = ticket 墳場
- Severity ≠ Priority、分開兩個欄位
- SLA + 自動 escalation 是健康指標
- Quarterly cleanup 是必修、不是可選
- Reopen 率是 process 品質的真相指標
15. Metrics 看板(每週看)
Open by severity:
- P0: 3
- P1: 15
- P2: 47
- P3: 234
Created vs Closed(過去 7 天):
- Created: 28
- Closed: 22
- Net: +6 ⚠️
Age distribution:
- < 7 days: 45%
- 7-30 days: 30%
- 30-90 days: 15%
- > 90 days: 10% ⚠️
SLA breach:
- P0: 0 ✅
- P1: 2 ⚠️
- P2: 12
Reopen rate: 8%
Net > 0 持續 2 週 = 警訊。 Reopen > 10% = 流程有洞。 > 90 天 ticket > 5% = 需要 cleanup。
16. 最後
Bug triage 不是 ticket 工人、是 quality 系統。沒有清晰 lifecycle + SLA + cleanup 機制 = 6 個月後變垃圾場。從今天起:(1)寫 lifecycle 文件、(2)開週會、(3)設 SLA、(4)每季 cleanup — 三個月後 backlog 從 800 變 80、每個 ticket 都有 owner。
相關連結
一份不被退回的 bug report 該長什麼樣。Title / 重現步驟 / 預期 vs 實際 / 環境 / 影響 / 證據 / 優先級 / 相關連結,附完整範例與爛 vs 好對比。
給 QA 的 accessibility 測試完整指南。WCAG 2.2 等級、自動化工具(axe / Lighthouse)、手動 checklist、Screen reader 測試、法規(EAA / ADA / EU AI Act)對 QA 的影響。
探索性測試不是「亂玩」。SBTM session、Heuristics(FAILURE、CRUSSPIC)、Charter 設計、結果記錄完整指南。
相關懶人包
2026 QA 趨勢實戰:我看到的 5 個轉變(AI、Shift-Left、Observability)
從手動 QA 到 AI 輔助、從測試金字塔到測試獎盃。這篇分享我這 10+ 年看 QA 從「測完才知道」到「shift-left + AI」的真實觀察。
AI / LLM 功能 Spec Review — 幻覺 / 評估 / 成本 / 法遵 8 個必問
AI 功能 spec review 完整指南。LLM 不確定性處理、評估指標、Prompt versioning、成本控制、安全護欄、法遵(EU AI Act / GDPR)、Fallback、人工 review 流程。
AI Agent 系統測試 — 自主執行 / 工具呼叫 / 多步推理的 QA 策略
測試 AI Agent 完整方法。Tool calling 驗證、Trajectory 評估、Failure mode 分類、無限迴圈防止、成本上限、安全 sandbox、Multi-agent 協作測試。
一般聲明
本站提供之資訊僅供參考,不保證其完整性與正確性。使用者應自行判斷資訊之適用性。