A feature location approach for mapping application features extracted from crowd-based screencasts to source code

被引:2
作者
Moslehi, Parisa [1 ]
Adams, Bram [3 ]
Rilling, Juergen [2 ]
机构
[1] Concordia Univ, Ambient Software Engn Grp ASEG Lab, Montreal, PQ, Canada
[2] Concordia Univ, Dept Comp Sci & Software Engn, Montreal, PQ, Canada
[3] Queens Univ, Kingston, ON, Canada
关键词
Crowd-based documentation; Mining video content; Speech analysis; Feature location; Software traceability; Information extraction; Software documentation; TOPIC MODELS; SEARCH;
D O I
10.1007/s10664-020-09874-z
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Crowd-based multimedia documents such as screencasts have emerged as a source for documenting requirements, the workflow and implementation issues of open source and agile software projects. For example, users can show and narrate how they manipulate an application's GUI to perform a certain functionality, or a bug reporter could visually explain how to trigger a bug or a security vulnerability. Unfortunately, the streaming nature of programming screencasts and their binary format limit how developers can interact with a screencast's content. In this research, we present an automated approach for mining and linking the multimedia content found in screencasts to their relevant software artifacts and, more specifically, to source code. We apply LDA-based mining approaches that take as input a set of screencast artifacts, such as GUI text and spoken word, to make the screencast content accessible and searchable to users and to link it to their relevant source code artifacts. To evaluate the applicability of our approach, we report on results from case studies that we conducted on existing WordPress and Mozilla Firefox screencasts. We found that our automated approach can significantly speed up the feature location process. For WordPress, we find that our approach using screencast speech and GUI text can successfully link relevant source code files within the top 10 hits of the result set with median Reciprocal Rank (RR) of 50% (rank 2) and 100% (rank 1). In the case of Firefox, our approach can identify relevant source code directories within the top 100 hits using screencast speech and GUI text with the median RR = 20%, meaning that the first true positive is ranked 5 or higher in more than 50% of the cases. Also, source code related to the frontend implementation that handles high-level or GUI-related aspects of an application is located with higher accuracy. We also found that term frequency rebalancing can further improve the linking results when using less noisy scenarios or locating less technical implementation of scenarios. Investigating the results of using original and weighted screencast data sources (speech, GUI, speech and GUI) that can result in having the highest median RR values in both case studies shows that speech data is an important information source that can result in having RR of 100%.
引用
收藏
页码:4873 / 4926
页数:54
相关论文
共 75 条
  • [1] ADRIAN K, J SOFTWARE MAINTENAN, V22, P191
  • [2] Ali N., 2012, 2012 12th IEEE Working Conference on Source Code Analysis and Manipulation (SCAM 2012), P174, DOI 10.1109/SCAM.2012.26
  • [3] Nguyen AT, 2012, IEEE INT CONF AUTOM, P70, DOI 10.1145/2351676.2351687
  • [4] [Anonymous], 2008, Advances in neural information processing systems
  • [5] [Anonymous], 2013, SOURCE CODE SIMILARI
  • [6] [Anonymous], 2014, FUTURE SOFTWARE ENG
  • [7] Asuncion Hazeline U., 2010, Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering-Volume, P95, DOI DOI 10.1145/1806799.1806817
  • [8] Analyzing and mining a code search engine usage log
    Bajracharya, Sushil Krishna
    Lopes, Cristina Videira
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2012, 17 (4-5) : 424 - 466
  • [9] Theory of Aspects as Latent Topics
    Baldi, Pierre F.
    Lopes, Cristina V.
    Linstead, Erik J.
    Bajracharya, Sushil K.
    [J]. ACM SIGPLAN NOTICES, 2008, 43 (10) : 543 - 562
  • [10] VT-Revolution: Interactive Programming Video Tutorial Authoring and Watching System
    Bao, Lingfeng
    Xing, Zhenchang
    Xia, Xin
    Lo, David
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2019, 45 (08) : 823 - 838