Heuristic and Neural Network based Prediction of Project-Specific API Member Access
Thu 26 Aug 2021 04:10 - 04:20 - Analytics & Software Evolution—Libraries and APIs 1 Chair(s): Massimiliano Di Penta
Code completion is to predict the rest of a statement a developer is typing. Although advanced code completion approaches have greatly improved the accuracy of code completion in modern IDEs, it remains challenging to predict project-specific API method invocations or field accesses because little knowledge about such elements could be learned in advance. To this end, in this paper we propose an accurate approach called HeeNAMA to suggesting the next project-specific API member access. HeeNAMA focuses on a specific but common case of code completion: suggesting the following member access whenever a project-specific API instance is followed by a dot on the right hand side of an assignment. By focusing on such a specific case, HeeNAMA can take full advantages of the context of the code completion, including the type of the left hand side expression of the assignment, the identifier on the left hand side, the type of the base instance, and similar assignments typed in before. All such information together enables highly accurate code completion. Given an incomplete assignment, HeeNAMA generates the initial candidate set according to the type of the base instance, and excludes those candidates that are not type compatible with the left hand side of the assignment. If the enclosing project contains assignments highly similar to the incomplete assignment, it makes suggestions based on such assignments. Otherwise, it selects the one from the initial candidate set that has the greatest lexical similarity with the left hand side of the assignment. Finally, it employs a neural network to filter out risky predictions, which guarantees high precision. Evaluation results on open-source applications suggest that compared to the state-of-the-art approaches and the state-of-the-practice tools HeeNAMA improves precision and recall by 70.68% and 25.23%, relatively.
Wed 25 AugDisplayed time zone: Athens change
16:00 - 17:00 | Analytics & Software Evolution—Libraries and APIs 1Research Papers / Industry Papers / Journal First +12h Chair(s): Yi Li Nanyang Technological University, Davide Di Ruscio University of L'Aquila | ||
16:00 10mPaper | Embedding App-Library Graph for Neural Third Party Library Recommendation Research Papers Bo Li Swinburne University of Technology, Qiang He Swinburne University of Technology, Feifei Chen Deakin University, Xin Xia Huawei Technologies, Li Li Monash University, John Grundy Monash University, Yun Yang Swinburne University of Technology DOI | ||
16:10 10mPaper | Heuristic and Neural Network based Prediction of Project-Specific API Member Access Journal First | ||
16:20 10mPaper | Data-Driven Extract Method Recommendations: A Study at ING Industry Papers David van der Leij Delft University of Technology; ING, Jasper Binda ING, Robbert van Dalen ING, Pieter Vallen ING, Yaping Luo ING; Eindhoven University of Technology, Maurício Aniche Delft University of Technology DOI Pre-print | ||
16:30 30mLive Q&A | Q&A (Analytics & Software Evolution—Libraries and APIs 1) Research Papers |
Thu 26 AugDisplayed time zone: Athens change
04:00 - 05:00 | Analytics & Software Evolution—Libraries and APIs 1Journal First / Research Papers / Industry Papers Chair(s): Massimiliano Di Penta University of Sannio | ||
04:00 10mPaper | Embedding App-Library Graph for Neural Third Party Library Recommendation Research Papers Bo Li Swinburne University of Technology, Qiang He Swinburne University of Technology, Feifei Chen Deakin University, Xin Xia Huawei Technologies, Li Li Monash University, John Grundy Monash University, Yun Yang Swinburne University of Technology DOI | ||
04:10 10mPaper | Heuristic and Neural Network based Prediction of Project-Specific API Member Access Journal First | ||
04:20 10mPaper | Data-Driven Extract Method Recommendations: A Study at ING Industry Papers David van der Leij Delft University of Technology; ING, Jasper Binda ING, Robbert van Dalen ING, Pieter Vallen ING, Yaping Luo ING; Eindhoven University of Technology, Maurício Aniche Delft University of Technology DOI Pre-print | ||
04:30 30mLive Q&A | Q&A (Analytics & Software Evolution—Libraries and APIs 1) Research Papers |