Automated API Recommendation

Many libraries have been used in the software project. With the increasing number of libraries used in a software project, developers often have to search multiple online resources to learn the usage of the APIs if the developers have no prior knowledge of certain libraries. This may lead to an incr...

Full description

Saved in:
Bibliographic Details
Main Author: Toh, Gao Han
Other Authors: Liu Yang
Format: Final Year Project
Language:English
Published: 2017
Subjects:
Online Access:http://hdl.handle.net/10356/70279
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:Many libraries have been used in the software project. With the increasing number of libraries used in a software project, developers often have to search multiple online resources to learn the usage of the APIs if the developers have no prior knowledge of certain libraries. This may lead to an increase in development time. Therefore, in this project, we developed Automated API Recommendation. Given the latest API detected, we will recommend APIs to the developers. To build the Automated API Recommendation, we had extracted the API sequence of every java source code file in the repository. We learned the usage pattern of the APIs by building the bigram model using the train datasets. Two techniques, MMR and kPrecision, were used to test the model. We were able to obtain an accuracy of 60.17% for kPrecision testing when k = 5 for forward bigram model. The benefit of Automated API Recommendation is that it gives instant recommendation to the users and it supports the usage of third-party java library. As long as the third-party API is in our API knowledge based, we will be able to recommend API.