A Field Study of How Developers Locate Features in Source Code

Author : Damevski, Kostadin; Shepherd, David; Pollock, Lori

Date : Jan 2015
Publisher : Springer
Journal : Empirical Software Engineering
Pages : 1–24
Keyword(s) : concern location, field study, software developer behavior, feature location, code search, field study
Document Type : Article

Abstract :

Our current understanding of how programmers perform feature lo- cation during software maintenance is based on controlled studies or interviews, which are inherently limited in size, scope and realism. Replicating controlled studies in the eld can both explore the ndings of these studies in wider contexts and study new factors that have not been previously encountered in the laboratory setting. In this paper, we report on a eld study about how software developers perform feature location within source code during their daily development activities. Our study is based on two complementary eld data sets: one that re- ects complete IDE activity of 67 professional developers over approximately one month, and another that re ects usage of an IR-based code search tool by nearly 600 developers. Analyzing this data, we report results on how often developers use which type of code search tools, on the types of queries and retrieval strategies used by developers, and on patterns of developer feature location behavior following code search. The results of the study suggest that there is (1) a need for helping developers to devise better code search queries; (2) a lack of adoption of niche code search tools; (3) a need for code search tool to handle both lookup and exploratory queries; and (4) a need for better integration between code search, structured navigation, and debugging tools in feature location tasks.

Paper Link