DocumentCode :
46651
Title :
Automated API Property Inference Techniques
Author :
Robillard, Martin P. ; Bodden, Eric ; Kawrykow, D. ; Mezini, M. ; Ratchford, T.
Author_Institution :
Sch. of Comput. Sci., McGill Univ., Montreal, QC, Canada
Volume :
39
Issue :
5
fYear :
2013
fDate :
May-13
Firstpage :
613
Lastpage :
637
Abstract :
Frameworks and libraries offer reusable and customizable functionality through Application Programming Interfaces (APIs). Correctly using large and sophisticated APIs can represent a challenge due to hidden assumptions and requirements. Numerous approaches have been developed to infer properties of APIs, intended to guide their use by developers. With each approach come new definitions of API properties, new techniques for inferring these properties, and new ways to assess their correctness and usefulness. This paper provides a comprehensive survey of over a decade of research on automated property inference for APIs. Our survey provides a synthesis of this complex technical field along different dimensions of analysis: properties inferred, mining techniques, and empirical results. In particular, we derive a classification and organization of over 60 techniques into five different categories based on the type of API property inferred: unordered usage patterns, sequential usage patterns, behavioral specifications, migration mappings, and general information.
Keywords :
application program interfaces; data mining; pattern classification; application programming interfaces; automated API property inference technique; behavioral specifications; empirical results; general information; migration mappings; mining techniques; properties inferred; sequential usage patterns; technique classification; unordered usage patterns; Association rules; Context; Itemsets; Programming; Protocols; Software engineering; API evolution; API property; API usage pattern; data mining; interface; pattern mining; programming rules; protocols; specifications;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2012.63
Filename :
6311409
Link To Document :
بازگشت