All About Triaging Bugs
Learn about the goals of triaging bugs in your app or webpage and the factors you can use to rank bugs by severity and urgency.
Join the DZone community and get the full member experience.Join For Free
Triaging is a well-known but not well-understood term related to testing. The term is said to have been derived from the medical world, where it refers to the process of prioritizing patients based on how severe their disease is. It is a way of making the best use of the available resources – no matter how scant they are – and helping as many people as possible. Rather than strict scientific principles or hardcore concepts of computer science, triaging generally involves your perception and ability to judge. You can fare quite well here if you can derive intelligent judgments from a given set of facts and figures.
In the dictionary of computer science, triaging means analyzing all the issues you discover in testing and organizing the results as per their priority. Sometimes the order of priority is pretty obvious, sometimes it is dependent upon multiple factors like user requirements, business relevance, development efforts, costs involved, and frequency of occurrence. That’s why the process is often time-consuming and usually involves a project manager or even the client, in some cases. Whether you are testing a website for its cross-browser compatibility or features, prioritizing the listed bugs is crucial.
As the process of triaging begins, each bug’s initial report, reproducibility, comments, and any other aspects are well analyzed. Its priority and status are discussed by the team and the future course of action is decided.
One of the major goals of triaging bugs is to evaluate and prioritize the various steps involved in the resolution of defects. The team needs to validate the intensities of the defect, make the required changes, finalize the resolution of the defects, and assign time, resources and people for the same.
The importance of triaging in the world of testing cannot be overlooked. Software testing is a detailed process involving a lot of steps. It usually means an abundance of work. If you fail to triage your bugs well, you will see yourself getting drowned in a sea of bugs and code. Proper planning and analysis of the job at hand are must in order to succeed and ensure efficient results.
The success or failure of triaging depends on your and the team’s consistency and dedication towards it. Talking about an overview of the process, it generally involves analyzing the severity of the process at hand and deciding whether it needs immediate attention or can be done later. It is recommended to partner well with the client and take quality feedback before triaging as it is generally difficult for someone to assess the priority of certain actions without understanding the context. End of the day, we want our clients to have efficient results about test cases, bugs, and reviews. We want to make sure our reports efficiently and effectively communicate our feedback and leave a positive impression of the product we sell or the services we provide.
What to Look for When Triaging a Bug
Title and Summary
The title of the bug must be clear, concise, and easy to understand. The client or project manager must be able to figure out what the issue is with a glance at the title. You may add a prefix to the title in case you want it or the client recommends it. Sometimes, the summary does not summarize the bug well. Your bug report should be easy to understand. A good title should contain a brief explanation of the root cause of the bug and some of the problems the bug is causing.
Type of Bug
Understanding the type of the bug is also important when it comes to allocating it a spot on the priority list. You need to figure out whether the error is technical, functional, or pertaining to the user interface.
How Hard and How Often Does It Affect the System?
Sometimes, the bugs do not have a big impact and can wait to be fixed. For instance, consider spelling mistakes in the content of a website. Although they are technically bugs and need to be fixed, they are low severity and low priority. Their presence would not keep the user from using the portal. On the other hand, there are issues like the website crashing every time a user tries uploading something. Such bugs are high-priority and need to be fixed right away. It generally depends on the tester’s as well as the client’s intuition and judgment as to which bugs need immediate attention and which ones can wait a little. Ultimately, although, you need to fix them all.
Frequency of Occurrence
How frequently the bug occurs also decides its position on the priority list. The ones occurring frequently usually need to be treated quickly.
Besides, you should work really hard on isolating the bug. It is good if you attempt to isolate the bug at least six times in order to analyze and identify the shortest path to it.
This was a general overview of the triaging process. It can be concluded that triaging is a team effort. Deriving valuable insights from each other and working on the bugs can lead to incredible results. You and your team should commit to some predefined deadlines in order to be more productive. Apart from that, a rule of thumb is to identify the steps properly while dealing with a bug. Listing or working on unnecessary steps like installing the application will only lead to wastage of time. If you plan to present a video for the reference of others, it should have all the steps from beginning to end. Your steps should make sense to everyone, not just you. Happy triaging!
Published at DZone with permission of Deeksha Agarwal. See the original article here.
Opinions expressed by DZone contributors are their own.