当前位置: X-MOL 学术Int. J. Softw. Eng. Knowl. Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Feedback2Code: A Deep Learning Approach to Identifying User-Feedback-Related Source Code Files
International Journal of Software Engineering and Knowledge Engineering ( IF 0.9 ) Pub Date : 2020-02-27 , DOI: 10.1142/s0218194020500011
Shuhan Yan 1 , Tianjiao Du 1 , Beijun Shen 1 , Yuting Chen 1 , Zhilei Ren 2
Affiliation  

Users frequently raise feedback when using software products. Feedback from users regarding their experiences and expectations and software defects they found adds values to software maintenance and evolution — software managers collect user feedback and then dispatch feedback issues that developers (and/or maintainers) need to track and process. Feedback tracking is often supported by open source platforms and collaborative software systems. Meanwhile, there still exists a gap between feedback issues and source code: since user feedback is usually informal and arbitrary, engineers have to spend much effort on comprehending issues and identifying which source code files need to be improved or fixed.This paper introduces a deep learning approach, Feedback2Code , which facilitates identification of user-feedback-related source code files. The core idea is to (1) explore latent semantics of user feedback and source code using several deep learning techniques such as Multi-Layer Perceptron (MLP), Convolutional Neutral Network (CNN) and skip-gram and (2) establish a multi-correlation model to explore linkages between feedback issues and source code files. Given a feedback issue, the linkages then allow engineers to identify source code files that are highly relevant to the issue.We have implemented Feedback2Code and evaluated it against ChangeAdvisor (a state-of-the-art approach) on 24 open source projects. The evaluation results clearly show the strength of Feedback2Code : for 103793 feedback issues, Feedback2Code successfully established 101190 feedback-code linkages and achieved a precision that is [Formula: see text] higher than that of ChangeAdvisor . Feedback2Code also achieved an MRR and an MAP that are [Formula: see text] and [Formula: see text] higher than those of ChangeAdvisor , respectively. Furthermore, we also found that a Feedback2Code -trained model can be easily transferred, allowing feedback-code linkages to be established in new projects with a little history data.

中文翻译:

Feedback2Code:一种识别与用户反馈相关的源代码文件的深度学习方法

用户在使用软件产品时经常提出反馈。用户关于他们的经验和期望以及他们发现的软件缺陷的反馈增加了软件维护和发展的价值——软件经理收集用户反馈,然后发送开发人员(和/或维护人员)需要跟踪和处理的反馈问题。反馈跟踪通常由开源平台和协作软件系统支持。同时,反馈问题和源代码之间仍然存在差距:由于用户反馈通常是非正式的和任意的,工程师不得不花费大量精力来理解问题并确定哪些源代码文件需要改进或修复。本文深入介绍了学习方法,Feedback2Code,它有助于识别与用户反馈相关的源代码文件。核心思想是 (1) 使用多层感知器 (MLP)、卷积中性网络 (CNN) 和 skip-gram 等多种深度学习技术探索用户反馈和源代码的潜在语义,以及 (2) 建立一个多相关模型来探索反馈问题和源代码文件之间的联系。鉴于反馈问题,这些链接允许工程师识别与该问题高度相关的源代码文件。我们已经实施了 Feedback2Code,并针对 24 个开源项目的 ChangeAdvisor(一种最先进的方法)对其进行了评估。评估结果清楚地显示了 Feedback2Code 的实力:对于 103793 个反馈问题,Feedback2Code 成功建立了 101190 个反馈代码链接,并达到了 [公式:见正文] 高于 ChangeAdvisor 的精度。Feedback2Code 还实现了 MRR 和 MAP,它们分别比 ChangeAdvisor 的 [Formula: see text] 和 [Formula: see text] 高。此外,我们还发现,Feedback2Code 训练的模型可以很容易地转移,允许在具有少量历史数据的新项目中建立反馈代码链接。
更新日期:2020-02-27
down
wechat
bug