Publication Type

Conference Proceeding Article

Version

publishedVersion

Publication Date

6-2017

Abstract

Traditional code search engines often do not perform well with natural language queries since they mostly apply keyword matching. These engines thus require carefully designed queries containing information about programming APIs for code search. Unfortunately, existing studies suggest that preparing an effective query for code search is both challenging and time consuming for the developers. In this paper, we propose a novel code search tool-RACK-that returns relevant source code for a given code search query written in natural language text. The tool first translates the query into a list of relevant API classes by mining keyword-API associations from the crowdsourced knowledge of Stack Overflow, and then applies the reformulated query to GitHub code search API for collecting relevant results. Once a query related to a programming task is submitted, the tool automatically mines relevant code snippets from thousands of open-source projects, and displays them as a ranked list within the context of the developer's programming environment-the IDE. Tool page: http://www.usask.ca/~masud.rahman/rack.

Keywords

Tools, Natural languages, Programming, Search engines, Context, Search problems, Vocabulary

Discipline

Programming Languages and Compilers | Software Engineering

Research Areas

Cybersecurity

Publication

Proceedings of 39th IEEE/ACM International Conference on Software Engineering Companion, ICSE-C 2017; Buenos Aires, Argentina, 2017 May 20-28

Identifier

10.1109/ICSE-C.2017.11

Publisher

ACM

City or Country

Buenos Aires, Argentina

Additional URL

http://doi.org./10.1109/ICSE-C.2017.11

Share

COinS