What is Triage?
Triage, a word borrowed from the French tier meaning to separate, sort, sift, or select, is a commonly accepted medical term describing the process of determining the priority of patients treatment based on the severity of their condition. This term has been introduced to software quality assurance to describe the function of assigning a priority and severity to new defects, usually by addressing several new defects at once every few days or as necessary.
Why is triage useful? If your project is very small, or isolated from other business units, triage may not be very useful at all. Similar to an emergency room that receives one patient per hour, there is value in accurately describing the patient’s condition, but whether the patient’s condition is life-threatening or a light malaise, given consistent medical practitioner availability the patient will be seen with the same urgency. Similarly, bugs entered into a bug tracking team that has a team that can process bugs quickly can simply fix them as fast as QA can find them.
This is usually not the case with large business units and almost never the case with public facing web site projects. A bug found could be very important to marketing, not important at all to advertising operations, and not important to technology. A bug found in the error logging infrastructure that could potentially fail to warn of a very specific and rare condition may be important to a single technologist but less so to a product owner who, while understanding the danger, has far more important items to fix that his limited resourcing can deliver. This is the function of triage.
Triage in software development requires three parties be present, preferably in person. Product, development, and QA must be present at this discussion. QA facilitates a bug triage with a bug tracking system. QA reads the description of the bug to everyone, product generally asks some clarifying questions, and QA and tech go back and forth discussion the importance and impact of their point of view. All three parties come to agreement and understanding on the severity and priority, or “actionable priority”, of the bug or defect, and the defect is marked as Triaged. In this way, QA can quickly pull up a list of bugs that need triage and there is no need to keep various sets of bug reports. A good bug tracking tool, such as HP Quality Center, can easily keep track of this and provide this filtering.
Clarifying the difference between bugs and defects to your team, the severity and priority model, and having consistent triage meetings are important to ensuring a clear product backlog and reducing the need for meetings to talk about priorities.