Title :
CONQUER: A Tool for NL-Based Query Refinement and Contextualizing Code Search Results
Author :
Roldan-Vega, Manuel ; Mallet, Greg ; Hill, Emily ; Fails, Jerry Alan
Author_Institution :
Dept. of Comput. Sci., Montclair State Univ., Montclair, NJ, USA
Abstract :
Identifying relevant code to perform maintenance or reuse tasks is becoming increasingly difficult. Software systems continue to grow and evolve, and developers often find themselves searching within thousands to even millions of lines of code to identify code relevant to a particular maintenance task. Automated solutions are vital to help developers become more efficient at locating code to be modified when performing maintenance tasks. In order to address this need and help developers reduce the time spent finding and searching for relevant code, we have built an Eclipse-plug in, CONQUER, that helps developers identify relevant results by providing critical insight and context of how query words are used in the code. CONQUER leverages advanced natural language (NL) information in the source code to group, sort and display the results in a meaningful way. In addition, CONQUER analyzes the frequency and co-occurrence of words in the method result set to provide alternative phrases that can help further refine the query. This rich contextual hierarchy helps the developer quickly determine if the query is correct and hone in on relevant results. The NL-based organization of results reduces the number of relevance judgments the developers need to make, and thus can reduce the overall time for a maintenance task.
Keywords :
natural language processing; query processing; software maintenance; software tools; CONQUER tool; Eclipse-plug in; NL-based query refinement; advanced natural language information; code search contextualization; contextual hierarchy; query words; software maintenance task; software systems; source code; Context; Java; Maintenance engineering; Natural languages; Pragmatics; Software maintenance; feature location; software maintenance; source code search;
Conference_Titel :
Software Maintenance (ICSM), 2013 29th IEEE International Conference on
Conference_Location :
Eindhoven
DOI :
10.1109/ICSM.2013.84