Title
FOCUS: a recommender system for mining API function calls and usage patterns
Abstract
Software developers interact with APIs on a daily basis and, therefore, often face the need to learn how to use new APIs suitable for their purposes. Previous work has shown that recommending usage patterns to developers facilitates the learning process. Current approaches to usage pattern recommendation, however, still suffer from high redundancy and poor run-time performance. In this paper, we reformulate the problem of usage pattern recommendation in terms of a collaborative-filtering recommender system. We present a new tool, FOCUS, which mines open-source project repositories to recommend API method invocations and usage patterns by analyzing how APIs are used in projects similar to the current project. We evaluate FOCUS on a large number of Java projects extracted from GitHub and Maven Central and find that it outperforms the state-of-the-art approach PAM with regards to success rate, accuracy, and execution time. Results indicate the suitability of context-aware collaborative-filtering recommender systems to provide API usage patterns.
Year
DOI
Venue
2019
10.1109/ICSE.2019.00109
Proceedings of the 41st International Conference on Software Engineering
Keywords
Field
DocType
recommender system,api mining,api usage pattern,api recommendation
Recommender system,Systems engineering,Software engineering,Computer science,Software,Redundancy (engineering),Execution time,Java
Conference
ISSN
ISBN
Citations 
0270-5257
978-1-7281-0870-4
7
PageRank 
References 
Authors
0.43
23
6
Name
Order
Citations
PageRank
Phuong Nguyen1367.08
Juri Di Rocco210721.07
Davide Di Ruscio374468.81
Lina Ochoa470.77
Thomas Degueule5183.05
Massimiliano Di Penta65703265.47