Publication Type

Journal Article

Version

publishedVersion

Publication Date

8-2018

Abstract

Concern localization refers to the process of locating code units that match a particular textual description. It takes as input textual documents such as bug reports and feature requests and outputs a list of candidate code units that are relevant to the bug reports or feature requests. Many information retrieval (IR) based concern localization techniques have been proposed in the literature. These techniques typically represent code units and textual descriptions as a bag of tokens at one level of abstraction, e.g., each token is a word, or each token is a topic. In this work, we propose a multi-abstraction concern localization technique named MULAB. MULAB represents a code unit and a textual description at multiple abstraction levels. Similarity of a textual description and a code unit is now made by considering all these abstraction levels. We combine a vector space model (VSM) and multiple topic models to compute the similarity and apply a genetic algorithm to infer semi-optimal topic model configurations. We also propose 12 variants of MULAB by using different data fusion methods. We have evaluated our solution on 175 concerns from 9 open source Java software systems. The experimental results show that variant COMBMNZ-DEF performs better than other variants, and also outperforms the state-of-art baseline called PR (PageRank based algorithm), which is proposed by Scanniello et al. (Empir Softw Eng 20(6): 1666-1720 2015) in terms of effectiveness and rank.

Keywords

Concern localization, Multi-Abstraction, Text retrieval, Topic modeling, Data fusion

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

Empirical Software Engineering

Volume

23

Issue

4

First Page

2279

Last Page

2322

ISSN

1382-3256

Identifier

10.1007/s10664-017-9585-2

Publisher

Springer Verlag (Germany)

Copyright Owner and License

Authors

Additional URL

https://doi.org/10.1007/s10664-017-9585-2

Share

COinS