Analyzing temporal API usage patterns

  • Authors:
  • Gias Uddin;Barthelemy Dagenais;Martin P. Robillard

  • Affiliations:
  • School of Computer Science, McGill University, Montréal, QC Canada;School of Computer Science, McGill University, Montréal, QC Canada;School of Computer Science, McGill University, Montréal, QC Canada

  • Venue:
  • ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software reuse through Application Programming Interfaces (APIs) is an integral part of software development. As developers write client programs, their understanding and usage of APIs change over time. Can we learn from long-term changes in how developers work with APIs in the lifetime of a client program? We propose Temporal API Usage Mining to detect significant changes in API usage. We describe a framework to extract detailed models representing addition and removal of calls to API methods over the change history of a client program. We apply machine learning technique to these models to semi-automatically infer temporal API usage patterns, i.e., coherent addition of API calls at different phases in the life-cycle of the client program.