arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2204.09368cs.SE
收藏

BugListener:从协作实时聊天中识别和合成Bug报告

BugListener: Identifying and Synthesizing Bug Reports from Collaborative Live Chats

Lin Shi, Fangwen Mu, Yumin Zhang, Ye Yang, Junjie Chen, Xiao Chen, Hanzhi Jiang, Ziyou Jiang, Qing Wang

摘要:

在基于社区的软件开发中,开发人员经常依靠实时聊天来讨论他们在日常开发任务中遇到的紧急错误/错误。然而,由于实时聊天数据中交错对话的噪声性质,准确记录这些知识仍然是一项具有挑战性的任务。在本文中,我们首先制定的任务,识别和合成的错误报告,从社区实时聊天,并提出了一种新的方法,命名为Buggallery,以应对挑战。具体来说,Bugstrike自动化了三个子任务:1)通过使用前馈神经网络从海量聊天日志中分离对话框; 2)通过将原始对话框建模为图结构对话框并利用图神经网络学习上下文信息,从分离的对话框中识别错误报告对话框; 3)利用TextCNN模型和迁移学习网络将句子分为三组:观察行为(OB),预期行为(EB)和重现错误的步骤(SR)来合成错误报告。在六个开源项目中评估了Buggestion。结果表明:对于错误报告识别,Buggelman的平均F1为74.21%,提高了最佳基线10.37%;对于错误报告合成任务,Bugelman可以将OB、EB和SR语句分类,F1分别为67.37%、87.14%和65.03%,分别提高了最佳基线7.21%、7.38%和5.30%。一个人工评估也证实了Bugtool在生成相关和准确的bug报告方面的有效性。这些都表明了在基于社区的软件开发中应用Bugtool的巨大潜力,以促进错误发现和质量改进。

英文摘要:

In community-based software development, developers frequently rely on live-chatting to discuss emergent bugs/errors they encounter in daily development tasks. However, it remains a challenging task to accurately record such knowledge due to the noisy nature of interleaved dialogs in live chat data. In this paper, we first formulate the task of identifying and synthesizing bug reports from community live chats, and propose a novel approach, named BugListener, to address the challenges. Specifically, BugListener automates three sub-tasks: 1) Disentangle the dialogs from massive chat logs by using a Feed-Forward neural network; 2) Identify the bug-report dialogs from separated dialogs by modeling the original dialog to the graph-structured dialog and leveraging the graph neural network to learn the contextual information; 3) Synthesize the bug reports by utilizing the TextCNN model and Transfer Learning network to classify the sentences into three groups: observed behaviors (OB), expected behaviors (EB), and steps to reproduce the bug (SR). BugListener is evaluated on six open source projects. The results show that: for bug report identification, BugListener achieves the average F1 of 74.21%, improving the best baseline by 10.37%; and for bug report synthesis task, BugListener could classify the OB, EB, and SR sentences with the F1 of 67.37%, 87.14%, and 65.03%, improving the best baselines by 7.21%, 7.38%, 5.30%, respectively. A human evaluation also confirms the effectiveness of BugListener in generating relevant and accurate bug reports. These demonstrate the significant potential of applying BugListener in community-based software development, for promoting bug discovery and quality improvement.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑