|Wettinger, Johannes; Breitenbücher, Uwe; Leymann, Frank: Streamlining APIfication by Generating APIs for Diverse Executables Using Any2API. |
In: Helfert, Markus (Hrsg); Méndez Muñoz, Victor (Hrsg); Ferguson, Donald (Hrsg): Cloud Computing and Services Science.
Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik.
Communications in Computer and Information Science; 581, S. 216-238, englisch.
Springer International Publishing, 3. Februar 2016.
DOI: 10.1007/978-3-319-29582-4_12; ISBN: 978-3-319-29581-7.
Beitrag in Buch.
|CR-Klassif.||D.2.12 (Software Engineering Interoperability)|
C.2.4 (Distributed Systems)
|Keywords||API; APIfication; Service; Web; REST; DevOps; Deployment; Cloud computing|
For many of today's systems, diverse application and management functionality is exposed by APIs to be used for integration and orchestration purposes. One important use case is the implementation of fully automated deployment processes that are utilized to create instances of Web applications or back-ends for mobile apps. Not all functionality that needs to be integrated in this context is exposed through APIs natively: such processes typically require a multitude of other heterogeneous technologies such as scripting languages and deployment automation tooling. This makes it hard to seamlessly and efficiently combine and integrate different kinds of building blocks such as scripts and configuration definitions that are required. Therefore, in this paper, we present a generic approach to automatically generate API implementations for arbitrary executables such as scripts and compiled programs, which are not natively exposed as APIs. This APIfication enables the uniform invocation of various heterogeneous building blocks, but aims to avoid the costly and manual wrapping of existing executables. In addition, we present the modular and extensible open-source framework Any2API that implements the previously introduced APIfication approach. We evaluate the APIfication approach as well as the Any2API framework by measuring the overhead of generating and using API implementations. Moreover, a detailed case study is conducted to confirm the technical feasibility of the presented approach.
|Copyright||Springer International Publishing Switzerland |
|Abteilung(en)||Universität Stuttgart, Institut für Architektur von Anwendungssystemen|
|Eingabedatum||16. August 2016|