RACK: Automatic API recommendation using crowdsourced knowledge

Traditional code search engines often do not perform well with natural language queries since they mostly apply keyword matching. These engines thus need carefully designed queries containing information about programming APIs for code search. Unfortunately, existing studies suggest that preparing a...

Full description

Saved in:
Bibliographic Details
Main Authors: RAHMAN, Mohammad M., ROY, Chanchal K., LO, David
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2016
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/3725
https://ink.library.smu.edu.sg/context/sis_research/article/4727/viewcontent/masud_SANER2016.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-4727
record_format dspace
spelling sg-smu-ink.sis_research-47272017-09-13T04:57:26Z RACK: Automatic API recommendation using crowdsourced knowledge RAHMAN, Mohammad M. ROY, Chanchal K. LO, David Traditional code search engines often do not perform well with natural language queries since they mostly apply keyword matching. These engines thus need carefully designed queries containing information about programming APIs for code search. Unfortunately, existing studies suggest that preparing an effective code search query is both challenging and time consuming for the developers. In this paper, we propose a novel API recommendation technique -- RACK that recommends a list of relevant APIs for a natural language query for code search by exploiting keyword-API associations from the crowdsourced knowledge of Stack Overflow. We first motivate our technique using an exploratory study with 11 core Java packages and 344K Java posts from Stack Overflow. Experiments using 150 code search queries randomly chosen from three Java tutorial sites show that our technique recommends correct API classes within the top 10 results for about 79% of the queries which is highly promising. Comparison with two variants of the state-of-the-art technique also shows that RACK outperforms both of them not only in Top-K accuracy but also in mean average precision and mean recall by a large margin. 2016-03-01T08:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/3725 info:doi/10.1109/SANER.2016.80 https://ink.library.smu.edu.sg/context/sis_research/article/4727/viewcontent/masud_SANER2016.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Stack Overflow Code search query reformulation keyword-API association crowdsourced knowledge Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Stack Overflow
Code search
query reformulation
keyword-API association
crowdsourced knowledge
Software Engineering
spellingShingle Stack Overflow
Code search
query reformulation
keyword-API association
crowdsourced knowledge
Software Engineering
RAHMAN, Mohammad M.
ROY, Chanchal K.
LO, David
RACK: Automatic API recommendation using crowdsourced knowledge
description Traditional code search engines often do not perform well with natural language queries since they mostly apply keyword matching. These engines thus need carefully designed queries containing information about programming APIs for code search. Unfortunately, existing studies suggest that preparing an effective code search query is both challenging and time consuming for the developers. In this paper, we propose a novel API recommendation technique -- RACK that recommends a list of relevant APIs for a natural language query for code search by exploiting keyword-API associations from the crowdsourced knowledge of Stack Overflow. We first motivate our technique using an exploratory study with 11 core Java packages and 344K Java posts from Stack Overflow. Experiments using 150 code search queries randomly chosen from three Java tutorial sites show that our technique recommends correct API classes within the top 10 results for about 79% of the queries which is highly promising. Comparison with two variants of the state-of-the-art technique also shows that RACK outperforms both of them not only in Top-K accuracy but also in mean average precision and mean recall by a large margin.
format text
author RAHMAN, Mohammad M.
ROY, Chanchal K.
LO, David
author_facet RAHMAN, Mohammad M.
ROY, Chanchal K.
LO, David
author_sort RAHMAN, Mohammad M.
title RACK: Automatic API recommendation using crowdsourced knowledge
title_short RACK: Automatic API recommendation using crowdsourced knowledge
title_full RACK: Automatic API recommendation using crowdsourced knowledge
title_fullStr RACK: Automatic API recommendation using crowdsourced knowledge
title_full_unstemmed RACK: Automatic API recommendation using crowdsourced knowledge
title_sort rack: automatic api recommendation using crowdsourced knowledge
publisher Institutional Knowledge at Singapore Management University
publishDate 2016
url https://ink.library.smu.edu.sg/sis_research/3725
https://ink.library.smu.edu.sg/context/sis_research/article/4727/viewcontent/masud_SANER2016.pdf
_version_ 1770573703615086592