APIUaaS: a reference architecture for facilitating API usage from a data analytics perspective

Source code examples are key resources for software developers to learn application programming interfaces (APIs) and to understand corresponding usage patterns. Developers usually have to utilise, evaluate and understand code examples from multiple sources, which involve heavy manually processing e...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IET software Jg. 13; H. 5; S. 466 - 478
Hauptverfasser: Zhao, Jitong, Liu, Yan
Format: Journal Article
Sprache:Englisch
Veröffentlicht: The Institution of Engineering and Technology 01.10.2019
Schlagworte:
ISSN:1751-8806, 1751-8814, 1751-8814
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Source code examples are key resources for software developers to learn application programming interfaces (APIs) and to understand corresponding usage patterns. Developers usually have to utilise, evaluate and understand code examples from multiple sources, which involve heavy manually processing efforts. To reduce such efforts, there has been growing interest in developing source code mining and recommendation systems. This study proposes API usage as a service (APIUaaS), a reference architecture for facilitating API usage, which allows infrastructures to be built for recommending proper API code examples based on semi-automatic data analytics. This reference architecture contains five logical layers and six global-level architectural concerns. API queries are accepted from programmers, and corresponding code example candidates are extracted from the data sources layer. The detailed structural links between API elements and source codes are captured and stored in the data model & code assets layer. During the recommendation phase, API usages mining, clustering and ranking algorithms are enabled in the knowledge discover & intelligent model layer. Services such as code assist and bug detection are assembled in the API usage services layer. Finally, the authors evaluate APIUaaS from three perspectives: rationality, feasibility, and usability.
ISSN:1751-8806
1751-8814
1751-8814
DOI:10.1049/iet-sen.2018.5355