Jump to: navigation, search

Orion/Bug Triage

How to Triage a Bug

The bug system is the heart beat of an open source project. In order to understand how an open source project is working, it is often necessary to understand how the project uses its bug system.

Here are the rules we use to triage a bug:

  1. Verify that the bug is reproducible. If not, ask for details. Verify that the enhancement request is reasonable.
  2. Find and owner for the bug:
    • Use the component owner table (TBD) to determine the owner.
    • Being the owner means watching the bug, being knowledgeable in the code area and knowing how to answer questions and help someone who wants to work on it.
  3. Set the bug priority. If unsure leave it as default (P3).
  4. Make sure it is in the right bugzilla component
    • P1: Stop ship. Fix it now!
    • P2: Important, in progress
    • P3: Maybe someone will get to it
    • P4: Nice to have, probably won't get to it
    • P5: Probably won't happen
  5. Add the "helpwanted" keyword for easy, non-critical bugs that would be good for a newcomer to work on
  6. Make sure the severity is set to "enhancement" for feature requests. For other severities leave it as selected by bug originator.


Once a bug is triaged, it is addressed in priority order by the owner. Bug that are unowned are not being worked on.

How we deliver (work management)

We use an iterative development model for work planning, defined at 2 week intervals:

  • 2017-01-27
  • 2017-02-10
  • 2017-02-24
  • ...

These milestones are added to the whiteboard space in the bugzilla.

We plan for an iteration at the beginning of the previous iteration using the backlog, only P1, P2s and P3s. These are assigned to people with the intent of completing the work in that iteration.

A bugzilla issue that has a milestone attached to it, should also have an “Assignee”. If the assignee is actively working on the defect they will set it to the ASSIGNED state.

Backlog

Backlog should be allocated a priority and story points as input to iteration planning. Story points should be assigned in the whiteboard using a fibonacci sequence where:

S:1 = minutes -> "This will take minutes."
S:2 = hours -> "This will take hours."
S:3 = days -> "This will take days."
S:5 = weeks -> "This will take weeks."
S:8 = months -> "This will take months."
S:13 = quarters -> "This will take a quarter or more"
S:21 = half year -> "This will take half a year to a year."
S:40 = years -> "This will take years."

May 7 Bug Day

Component Triaged By
Client 0-375,000 DONE!
Client 375,000-399,999 DONE!react starter kit
Client 400,000-419,999 DONE!
Client 420,000-429,999 DONE!
Client 430,000-439,999 DONE!
Client 440,000-449,999 DONE!
Client 450,000-459,999 DONE!
Client 460,000+ DONE!
Deployment DONE!
Doc DONE!
Docker DONE!
Editor 0-439,999 DONE
Editor 440,000+ DONE!
Git 0-400000 DONE!
Git 400000 DONE
JS Tools DONE!
Marketplace DONE!
Node DONE!
OrionHub DONE!
Releng DONE!
Server 0-439,999 DONE!
Server 440,000+ DONE!

The Triage Diet

Four Large Pies:

  • Canadian - half with mushrooms
  • Jeem special: Pepperoni/pineapple/green olives/bacon
  • Mediterranean
  • Devil's Delight

Greens:

  • Large Garden Salad