Authors:
Johannes Wettinger
;
Uwe Breitenbücher
and
Frank Leymann
Affiliation:
University of Stuttgart, Germany
Keyword(s):
Cloud Computing, DevOps, API, APIfication, Service, Web, REST.
Related
Ontology
Subjects/Areas/Topics:
API Management
;
Cloud Computing
;
Cloud Computing Enabling Technology
;
Cloud Resource Virtualization and Composition
;
Virtualization Technologies
;
Xaas
Abstract:
APIs are a popular means to expose functionality provided by Cloud-based systems, which are utilized to
integrate and orchestrate application as well as management functionality in a programmatic manner. In the
domain of application management, they are used to fully automate management processes, for example, to
deploy Cloud-based Web applications or back-ends for mobile apps. However, as not all required functionality
is exposed through an API natively, such processes additionally involve a multitude of other heterogeneous
technologies such as scripting languages and deployment automation tooling. Consequently, combining
different technologies in an efficient manner is a complex integration challenge. In this paper, we present a
generic approach for automatically generating API implementations for arbitrary executables such as scripts
and compiled programs, which are not natively exposed as APIs. This APIfication tackles the aforementioned
integration challenges by unifying the inv
ocation of heterogeneous technologies while avoiding the costly and
manual wrapping of existing executables because it does not scale. We further present the modular and extensible
open-source framework ANY2API that implements our APIfication approach. Furthermore, we evaluate the
approach and the framework by measuring the overhead of generating and using API implementations. In
addition, we conduct a detailed case study to confirm the technical feasibility of the approach.
(More)