Revisiting, Benchmarking and Exploring API Recommendation: How Far are We?
Application Programming Interfaces (APIs), which encapsulate the implementation of specific functions as interfaces, greatly improve the efficiency of modern software development. As the number of APIs grows up fast nowadays, developers can hardly be familiar with all the APIs and usually need to search for appropriate APIs for usage. So lots of efforts have been devoted to improving the API recommendation task. However, it has been increasingly difficult to gauge the performance of new models due to the lack of a uniform definition of the task and a standardized benchmark. For example, some studies regard the task as a code completion problem, while others recommend relative APIs given natural language queries. To reduce the challenges and better facilitate future research, in this paper, we revisit the API recommendation task and aim at benchmarking the approaches. Specifically, the paper groups the approaches into two categories according to the task definition, i.e., query-based API recommendation and code-based API recommendation. We study 11 recently-proposed approaches along with 4 widely-used IDEs. One benchmark named APIBench is then built for the two respective categories of approaches. Based on APIBench, we distill some actionable insights and challenges for API recommendation. We also achieve some implications and directions for improving the performance of recommending APIs, including appropriate query reformulation, data source selection, low resource setting, user-defined APIs, and query-based API recommendation with usage patterns.
Thu 18 MayDisplayed time zone: Hobart change
13:45 - 15:15 | Recommender systemsDEMO - Demonstrations / Technical Track / SEIP - Software Engineering in Practice / Journal-First Papers at Level G - Plenary Room 1 Chair(s): Kevin Moran George Mason University | ||
13:45 15mTalk | Autonomy Is An Acquired Taste: Exploring Developer Preferences for GitHub Bots Technical Track Amir Ghorbani University of Victoria, Nathan Cassee Eindhoven University of Technology, Derek Robinson University of Victoria, Adam Alami Aalborg University, Neil Ernst University of Victoria, Alexander Serebrenik Eindhoven University of Technology, Andrzej WÄ…sowski IT University of Copenhagen, Denmark Pre-print | ||
14:00 15mTalk | Flexible and Optimal Dependency Management via Max-SMT Technical Track Donald Pinckney Northeastern University, Federico Cassano Northeastern University, Arjun Guha Northeastern University and Roblox Research, Jonathan Bell Northeastern University, Massimiliano Culpo np-complete, S.r.l., Todd Gamblin Lawrence Livermore National Laboratory Pre-print | ||
14:15 15mTalk | Towards More Effective AI-assisted Programming: A Systematic Design Exploration to Improve Visual Studio IntelliCode's User Experience SEIP - Software Engineering in Practice Priyan Vaithilingam Harvard University, Elena Glassman Harvard University, Peter Groenwegen , Sumit Gulwani Microsoft, Austin Z. Henley Microsoft, Rohan Malpani , David Pugh , Arjun Radhakrishna Microsoft, Gustavo Soares Microsoft, Joey Wang , Aaron Yim | ||
14:30 7mTalk | DeepLog: Deep-Learning-Based Log Recommendation DEMO - Demonstrations Yang Zhang Hebei University of Science and Technology, Xiaosong Chang Hebei University of Science and Technology, Lining Fang Hebei University of Science and Technology, Yifan Lu Hebei University of Science and Technology | ||
14:37 7mTalk | ShellFusion: An Answer Generator for Shell Programming Tasks via Knowledge Fusion DEMO - Demonstrations Zhongqi Chen School of Software Engineering, Sun Yat-sen University, Neng Zhang School of Software Engineering, Sun Yat-sen University, Pengyue Si School of Software Engineering, Sun Yat-sen University, ChenQinde School of Software Engineering, Sun Yat-sen University, Chao Liu Chongqing University, Zibin Zheng School of Software Engineering, Sun Yat-sen University | ||
14:45 7mTalk | Revisiting, Benchmarking and Exploring API Recommendation: How Far are We? Journal-First Papers Yun Peng Chinese University of Hong Kong, Shuqing Li The Chinese University of Hong Kong, Wenwei Gu The Chinese University of Hong Kong, Yichen LI The Chinese University of Hong Kong, Wenxuan Wang The Chinese University of Hong Kong, Cuiyun Gao Harbin Institute of Technology, Michael Lyu The Chinese University of Hong Kong | ||
14:52 7mTalk | Semantically-enhanced Topic Recommendation Systems for Software Projects Journal-First Papers Maliheh Izadi Delft University of Technology, Mahtab Nejati University of Waterloo, Abbas Heydarnoori Bowling Green State University | ||
15:00 7mTalk | Code Librarian: A Software Package Recommendation System SEIP - Software Engineering in Practice Lili Tao JP Morgan Chase & Co, Alexandru-Petre Cazan JP Morgan Chase & Co, Senad Ibraimoski JP Morgan Chase & Co, Sean Moran JP Morgan Chase & Co |