WebAPIRec: Recommending Web APIs to Software Projects via Personalized Ranking

05/01/2017
by   Ferdian Thung, et al.
0

Application programming interfaces (APIs) offer a plethora of functionalities for developers to reuse without reinventing the wheel. Identifying the appropriate APIs given a project requirement is critical for the success of a project, as many functionalities can be reused to achieve faster development. However, the massive number of APIs would often hinder the developers' ability to quickly find the right APIs. In this light, we propose a new, automated approach called WebAPIRec that takes as input a project profile and outputs a ranked list of web APIs that can be used to implement the project. At its heart, WebAPIRec employs a personalized ranking model that ranks web APIs specific (personalized) to a project. Based on the historical data of web API usages, WebAPIRec learns a model that minimizes the incorrect ordering of web APIs, i.e., when a used web API is ranked lower than an unused (or a not-yet-used) web API. We have evaluated our approach on a dataset comprising 9,883 web APIs and 4,315 web application projects from ProgrammableWeb with promising results. For 84.0 return correct APIs that are used to implement the projects in the top-5 positions. This is substantially better than the recommendations provided by ProgrammableWeb's native search functionality. WebAPIRec also outperforms McMillan et al.'s application search engine and popularity-based recommendation.

READ FULL TEXT
research
06/11/2023

ARIST: An Effective API Argument Recommendation Approach

Learning and remembering to use APIs are difficult. Several techniques h...
research
05/27/2019

FairSearch: A Tool For Fairness in Ranked Search Results

Ranked search results and recommendations have become the main mechanism...
research
05/30/2022

Retrieving and Ranking Relevant JavaScript Technologies from Web Repositories

The selection of software technologies is an important but complex task....
research
08/10/2021

Diversity-aware Web APIs Recommendation with Compatibility Guarantee

With the ever-increasing prevalence of web APIs (Application Programming...
research
05/28/2020

Large-Scale Microtask Programming

To make microtask programming more efficient and reduce the potential fo...
research
01/03/2020

CryptoExplorer: An Interactive Web Platform Supporting Secure Use of Cryptography APIs

Research has shown that cryptographic APIs are hard to use. Consequently...

Please sign up or login with your details

Forgot password? Click here to reset