Context: Issue tracking systems are used to track and describe tasks in the development process, e.g., requested feature improvements or reported bugs. However, past research has shown that the reported issue types often do not match the description of the issue. Objective: We want to understand the overall maturity of the state of the art of issue type prediction with the goal to predict if issues are bugs and evaluate if we can improve existing models by incorporating manually specified knowledge about issues. Method: We train different models for the title and description of the issue to account for the difference in structure between these fields, e.g., the length. Moreover, we manually detect issues whose description contains a null pointer exception, as these are strong indicators that issues are bugs. Results: Our approach performs best overall, but not significantly different from an approach from the literature based on the fastText classifier from Facebook AI Research. The small improvements in prediction performance are due to structural information about the issues we used. We found that using information about the content of issues in form of null pointer exceptions is not useful. We demonstrate the usefulness of issue type prediction through the example of labelling bugfixing commits. Conclusions: Issue type prediction can be a useful tool if the use case allows either for a certain amount of missed bug reports or the prediction of too many issues as bug is acceptable.
翻译:问题跟踪系统用于跟踪和描述发展进程中的任务,例如要求的特征改进或报告的错误。然而,过去的研究表明,报告的问题类型往往与问题的描述不符。目标:我们想了解问题类型预测的先进状态的总体成熟程度,以便预测问题是否为错误,并评估我们是否能够通过人工指定的问题知识来改进现有模型。方法:我们为问题的标题和描述培训不同的模型,以说明这些领域的结构差异,例如,长度。此外,我们人工发现其描述包含一个无效的标码例外的问题,因为这些是问题属于错误的有力指标。结果:我们的方法在总体上表现得最佳,但与基于Facebook AI 研究的快速Text分类器的文献方法没有很大差别。预测绩效的微小改进是由于我们所使用的问题的结构信息。我们发现,使用关于问题内容的信息,以无效的标码例外形式来说明问题的内容,例如长度。我们通过标签错误错误定义的错误定义的例子来显示问题预测的效用。如果能够将许多错误预测作为可以接受的错误预测,那么,问题类型预测就能够使用一个有用的工具。