Back to top

Master's Thesis Maximilian Flis

Last modified May 15, 2020

Support Scrub Meetings in Distributed Teams by Detecting Duplicates of Software Defect Reports in Issue Management Systems

 

Developing software is a complex task that is prone to errors which cause faulty behaviour of a piece of software. In technical terms, these errors are referred to as software defects or bugs and need to be tracked to reflect the software’s state of quality.

It is state of the art to use issue tracking systems like JIRA to submit and track reports based on bugs. At Heaven (name changed) who is our industry partner, JIRA is used to track bugs. Defect reports have to be reviewed before faulty software can be fixed. The process of reviewing and assigning defect reports to developers is generally called defect triage or defect scrub at Heaven and happens usually multiple times a week. Nonetheless, no system is perfect. Tools like JIRA do not prevent defect reports focusing on the same problem only differing in the words used to describe the defect. Duplicate defect reports waste valuable time of reporters, triagers and fixers which could be invested in tasks like fixing high priority bugs, for instance.

With Defejavu, we introduce a recommender system leveraging word embeddings and NLD, a novel way of expressing document vector similarities, paired with RankNet, a learning-to-rank algorithm aiding to rank similarity vectors obtained from textual, categorical and time-based features of bug reports (BRs), to retrieve a list of top-k similar BRs for a query BR q.

Additionally, we show that expert triagers in closed source environments maintain a throughput-optimized defect management process where similar BR recommenders add the most value at the time of BR creation.

 

Files and Subpages