Temporal analysis of API usage concepts

Software Engineering(2012)

引用 62|浏览42
暂无评分
摘要
Software reuse through Application Programming Interfaces (APIs) is an integral part of software development. The functionality offered by an API is not always accessed uniformly throughout the lifetime of a client program. We propose Temporal API Usage Pattern Mining to detect API usage patterns in terms of their time of introduction into client programs. We detect concepts as distinct groups of API functionality from the change history of a client program. We locate those concepts in the client change history and detect temporal usage patterns, where a pattern contains a set of concepts that were added into the client program in a specific temporal order. We investigated the properties of temporal API usage patterns through a multiple-case study of three APIs and their use in up to 19 client software projects. Our technique was able to detect a number of valuable patterns in two out of three of the APIs investigated. Further investigation showed some patterns to be relatively consistent between clients, produced by multiple developers, and not trivially derivable from program structure or API documentation.
更多
查看译文
关键词
application program interfaces,data mining,software reusability,API usage concepts,API usage pattern detection,application programming interfaces,client change history,client program,software development,software reuse,temporal API usage pattern mining,temporal analysis,API Usability,API Usage,Mining Software Repositories,Software Reuse,Usage Pattern
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要