Rethinking the bug-tracking paradigm

In modern development processes, the bug-tracking tool is one of the most important means of tracking any tasks, features or bugs active in a project. Such information is crucial, not only for maintaining developer workflow, but also to make informed decisions as to whether a product should go live in its state at a given point in time. When a bug is identified, the reporter creates a report using a bug-tracking tool. Bug reports typically include general information such as a summary of the issue, its expected due date, and a description. Once the report has been created, teams could rank and prioritise it as deemed fit, and assign it to individuals for resolution.

The main issue with the above approach in tracking project progress is that the quality of bug reports could vary depending on the person reporting the bug, their knowledge of the system, their cognitive workload, and other contextual factors. This project sought to study prevalent issues with bug-tracking systems, and to propose an improvement on existing systems.

The research was carried out in two phases. Firstly, a literature review was undertaken in order to gain insight into prevalent issues with bug tracking. The literature review was complemented with a survey amongst practitioners to identify the main complaints concerning bug-tracking systems. Results showed that, according to the participants, the main critical issues were the lack of important information in bug reports, and miscommunication between bug reporters and developers.

Taking the above into account, a Jira plug-in was designed and implemented.  This  plug-in  departed from the ‘compulsory field’  approach  generally adopted in improving bug quality, and instead analysed bug description content in real time to provide recommendations for improving upon what was being noted. As a visual aid, a suitability meter (akin to password-strength meters) was also developed. This provided an overall rating indicator regarding the quality of the bug report being created.

The plug-in was trialled by practitioners, and the resulting bug reports were reviewed and rated by a panel of two experts. The latter rated a mixture of bug reports, unaware which were the 50% written without the aid of the plug-in, and which were the 50% written with the aid of the plug-in. The results obtained from the expert reviews suggest that the plugin helped generate better bug reports, as rated in terms of completeness, usefulness and overall quality.

Figure 1. The ‘Create issue’ page
Figure 2. The report-quality meter and suggestions on what to improve in the report

Student: Kieran Cauchi
Course: B.Sc. IT (Hons.) Software Development
Supervisor: Dr. Chris Porter
Co-supervisor: Dr. Mark Micallef