Sando
- 11 November 2012
- conference paper
- conference paper
- Published by Association for Computing Machinery (ACM)
Abstract
Developers heavily rely on Local Code Search (LCS)---the execution of a text-based search on a single code base---to find starting points in software maintenance tasks. While LCS approaches commonly used by developers are based on lexical matching and often result in failed searches or irrelevant results, developers have not yet migrated to the various research approaches that have made significant advancements in LCS. We hypothesize that two of the major reasons for this lack of migration are as follows. First, developers do not know which approach is the best, due to a lack of comparative field studies and the discrepancies in the underlying LCS process that these research approaches address. Second, developers lack access to a stable implementation of most of the research approaches. To address these issues, we studied a number of LCS approaches, distilled the general component structure underlying these approaches and, based on this structure, developed a LCS tool and framework, called Sando. Currently used by developers at ABB, Inc. and elsewhere, Sando also supports the flexible extension of its components to rapidly disseminate research advancements, and allows for user-based evaluation of competing approaches.Keywords
This publication has 8 references indexed in Scilit:
- Concept location using formal concept analysis and information retrievalACM Transactions on Software Engineering and Methodology, 2012
- PortfolioPublished by Association for Computing Machinery (ACM) ,2011
- Feature location by IR modules and call graphPublished by Association for Computing Machinery (ACM) ,2009
- Automatically capturing source code context of NL-queries for software maintenance and reusePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- Source Code Retrieval for Bug Localization Using Latent Dirichlet AllocationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- Feature location via information retrieval based filtering of a single scenario execution tracePublished by Association for Computing Machinery (ACM) ,2007
- Using natural language program analysis to locate and understand action-oriented concernsPublished by Association for Computing Machinery (ACM) ,2007
- An Exploratory Study of How Developers Seek, Relate, and Collect Relevant Information during Software Maintenance TasksIEEE Transactions on Software Engineering, 2006