API Parameter Recommendation Based on Documentation Analysis
Date
2020-01-20
Authors
Xi, Yuan, 1994-
Advisor
Tan, Lin
Godfrey, Michael
Nagappan, Meiyappan
Godfrey, Michael
Nagappan, Meiyappan
Journal Title
Journal ISSN
Volume Title
Publisher
University of Waterloo
Abstract
Application Programming Interfaces (APIs) are widely used in today's software development, as they provide a easy and safe way to build more powerful applications with less code. However, learning how to use an API function correctly can sometimes be difficult. Software developers may spend a lot of time to learn a new library before they can become productive. When an unfamiliar API is to be used, they usually have to chase down documentation and code samples to figure out how to use the API correctly. This thesis proposes a new approach based on documentation analysis, helping developers learn to use APIs by recommending likely parameter candidates. Our approach analyzes the documentation information, extracts possible candidates from code context, and gives them as parameter suggestions.
To test the effectiveness of our approach, we process the documentation of 5 popular JavaScript libraries, and evaluate the approach on top 1,000 JavaScript projects from GitHub. We used 1,681 instances of API function calls for testing in total. On average, over 60% of the time the correct parameter is in the suggestion set generated by our approach.
Description
Keywords
API parameter recommendation, documentation analysis, JavaScript, software engineering, code completion
LC Subject Headings
Application program interfaces (Computer software), JavaScript (Computer program language), Software engineering