@inproceedings {INPROC-2017-74,
   author = {Frank Leymann and Uwe Breitenb{\"u}cher and Sebastian Wagner and Johannes Wettinger},
   title = {{Native Cloud Applications: Why Monolithic Virtualization Is Not Their Foundation}},
   booktitle = {Cloud Computing and Services Science},
   publisher = {Springer International Publishing},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {16--40},
   type = {Konferenz-Beitrag},
   month = {Juli},
   year = {2017},
   isbn = {978-3-319-62594-2},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems,     D.2.12 Software Engineering Interoperability},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Due to the current hype around cloud computing, the term `native cloud application' becomes increasingly popular. It suggests an application to fully benefit from all the advantages of cloud computing. Many users tend to consider their applications as cloud native if the application is just bundled as a monolithic virtual machine or container. Even though virtualization is fundamental for implementing the cloud computing paradigm, a virtualized application does not automatically cover all properties of a native cloud application. In this work, which is an extension of a previous paper, we propose a definition of a native cloud application by specifying the set of characteristic architectural properties, which a native cloud application has to provide. We demonstrate the importance of these properties by introducing a typical scenario from current practice that moves an application to the cloud. The identified properties and the scenario especially show why virtualization alone is insufficient to build native cloud applications. We also outline how native cloud applications respect the core principles of service-oriented architectures, which are currently hyped a lot in the form of microservice architectures. Finally, we discuss the management of native cloud applications using container orchestration approaches as well as the cloud standard TOSCA.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2017-74&engl=0}
}
@inproceedings {INPROC-2017-23,
   author = {Christian Endres and Uwe Breitenb{\"u}cher and Frank Leymann and Johannes Wettinger},
   title = {{Anything to Topology - A Method and System Architecture to Topologize Technology-Specific Application Deployment Artifacts}},
   booktitle = {Proceedings of the 7th International Conference on Cloud Computing and Services Science (CLOSER 2017), Porto, Portugal},
   publisher = {SCITEPRESS},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {180--190},
   type = {Konferenz-Beitrag},
   month = {April},
   year = {2017},
   isbn = {978-989-758-243-1},
   keywords = {Application Deployment; Topology Crawling; TOSCA; Configuration Management; Chef},
   language = {Deutsch},
   cr-category = {D.2.9 Software Engineering Management,     D.2.11 Software Engineering Software Architectures,     D.2.13 Software Engineering Reusable Software},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {In recent years, many application deployment technologies have emerged such as configuration management tools, e.g., Chef and Juju, infrastructure and platform technologies, e.g., Cloud Foundry and OpenStack, as well as container-based approaches, e.g., Docker. As a result, many repositories exist which contain executable and heavily used artifacts that can be used with these technologies, e.g., to deploy a WordPress application. However, to automate the deployment of more complex applications, typically, multiple of these technologies have to be used in combination. Thus, often, diverse artifacts stored in different repositories need to be integrated. This requires expertise about each technology and leads to a manual, complex, and error-prone integrationstep. Inthispaper, wetackletheseissues: Wepresentamethodandsystemarchitecturethatenables crawling repositories in order to transform the contained artifacts into technology-agnostic topology models, each describing the components that get installed as well as their dependencies. We show how these topologies can be combined to model the deployment of complex applications and how the resulting topology can be deployed automatically by one runtime. To prove the feasibility, we developed and evaluated a prototype based on the TOSCA standard and conducted a case study for Chef artifacts.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2017-23&engl=0}
}
@inproceedings {INPROC-2017-12,
   author = {Christian Endres and Uwe Breitenb{\"u}cher and Michael Falkenthal and Oliver Kopp and Frank Leymann and Johannes Wettinger},
   title = {{Declarative vs. Imperative: Two Modeling Patterns for the Automated Deployment of Applications}},
   booktitle = {Proceedings of the 9th International Conference on Pervasive Patterns and Applications (PATTERNS)},
   publisher = {Xpert Publishing Services},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {22--27},
   type = {Konferenz-Beitrag},
   month = {Februar},
   year = {2017},
   isbn = {978-1-61208-534-0},
   keywords = {Modeling Patterns; Application Deployment and Management; Automation; Cloud Computing},
   language = {Englisch},
   cr-category = {C.0 Computer Systems Organization, General,     D.2.9 Software Engineering Management,     D.2.13 Software Engineering Reusable Software},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Parallele und Verteilte Systeme, Anwendersoftware;     Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {In the field of cloud computing, the automated deployment of applications is of vital importance and supported by diverse management technologies. However, currently there is no systematic knowledge collection that points out commonalities, capabilities, and differences of these approaches. This paper aims at identifying common modeling principles employed by technologies to create automatically executable models that describe the deployment of applications. We discuss two fundamental approaches for modeling the automated deployment of applications: imperative procedural models and declarative models. For these two approaches, we identified (i) basic pattern primitives and (ii) documented these approaches as patterns that point out frequently occurring problems in certain contexts including proven modeling solutions. The introduced patterns foster the understanding of common application deployment concepts, are validated regarding their occurrence in established state-of-the-art technologies, and enable the transfer of that knowledge.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2017-12&engl=0}
}
@inproceedings {INPROC-2016-19,
   author = {Frank Leymann and Christoph Fehling and Sebastian Wagner and Johannes Wettinger},
   title = {{Native Cloud Applications: Why Virtual Machines, Images and Containers Miss the Point!}},
   booktitle = {Proceedings of the 6th International Conference on Cloud Computing and Service Science (CLOSER 2016)},
   address = {Rome},
   publisher = {SciTePress},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {7--15},
   type = {Konferenz-Beitrag},
   month = {April},
   year = {2016},
   keywords = {Cloud Computing; Virtualization; Cloud Migration; SOA; Microservices; Continuous Delivery},
   language = {Englisch},
   cr-category = {D.2.9 Software Engineering Management,     D.2.11 Software Engineering Software Architectures,     K.6 Management of Computing and Information Systems,     H.4.1 Office Automation},
   contact = {leymann@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Due to the current hype around cloud computing, the term {\^a}€śnative cloud application{\^a}€ť becomes increasingly popular. It suggests an application to fully benefit from all the advantages of cloud computing. Many users tend to consider their applications as cloud native if the application is just bundled in a virtual machine image or a container. Even though virtualization is fundamental for implementing the cloud computing paradigm, a virtualized application does not automatically cover all properties of a native cloud application. In this work, we propose a definition of a native cloud application by specifying the set of characteristic architectural properties, which a native cloud application has to provide. We demonstrate the importance of these properties by introducing a typical scenario from current practice that moves an application to the cloud. The identified properties and the scenario especially show why virtualization alone is insufficient to build native cloud applications. Finally, we outline how native cloud applications respect the core principles of service-oriented architectures, which are currently hyped a lot in the form of microservice architectures.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2016-19&engl=0}
}
@inproceedings {INPROC-2015-56,
   author = {C. Timurhan Sungur and Uwe Breitenb{\"u}cher and Frank Leymann and Johannes Wettinger},
   title = {{Executing Informal Processes}},
   booktitle = {Proceedings of the 17th International Conference on Information Integration and Web-based Applications \& Services (iiWAS 2015)},
   publisher = {ACM},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {391--400},
   type = {Konferenz-Beitrag},
   month = {Dezember},
   year = {2015},
   keywords = {Informal processes; Agent-centered processes; Human-centric processes; Process execution; TOSCA; APIfication},
   language = {Englisch},
   cr-category = {H.4.1 Office Automation,     H.5.3 Group and Organization Interfaces},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Processes involving knowledge workers, such as decisionmaking processes, research processes, development processes, maintenance processes, etc. play a critical role for many organizations because they represent a valuable amount of the work an organization delivers. Therefore, supporting and automating such processes is vitally important for organizations. In our previous work, we have proposed a resource-centric approach called Informal Process Essentials (IPE) to support and to provide a certain degree of automation. The approach enables specifying required resources including autonomous agents of an informal process for accomplishing process goals through creating and initializing IPE models. Initializing an IPE model results in the acquirement of resources that collaboratively work towards the goals specified by the model. In this work, we provide an approach to automating the enactment of such resource-centric informal processes in two steps: (i) integrating resources of informal processes and (ii) executing informal processes. The approach we introduce enables the inclusion of different resource domains, e.g., IT resources, human resources, etc., and resource deployment environments, e.g., OpenTOSCA, Docker, etc. to model and enact informal processes. During the execution, the resources made available through the integration are acquired and engaged for goals of modeled informal processes. To validate the introduced concepts, we apply the approach to a detailed case study that realizes these two steps based on existing approaches and technologies, in particular, the OpenTOSCA ecosystem, an knowledge base, and an APIfication approach.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-56&engl=0}
}
@inproceedings {INPROC-2015-55,
   author = {Uwe Breitenb{\"u}cher and Tobias Binz and Oliver Kopp and Frank Leymann and Johannes Wettinger},
   title = {{A Modelling Concept to Integrate Declarative and Imperative Cloud Application Provisioning Technologies}},
   booktitle = {Proceedings of the 5th International Conference on Cloud Computing and Services Science (CLOSER 2015)},
   publisher = {SciTePress},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {487--496},
   type = {Konferenz-Beitrag},
   month = {Mai},
   year = {2015},
   keywords = {Cloud Application Provisioning; Automation; Declarative Modelling; Imperative Modelling},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Parallele und Verteilte Systeme, Anwendersoftware;     Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Efficient application provisioning is one of the most important issues in Cloud Computing today. For that purpose, various provisioning automation technologies have been developed that can be generally categorized into two different flavors: (i) declarative approaches are based on describing the desired goals whereas (ii) imperative approaches are used to describe explicit sequences of low-level tasks. Since modern Cloud-based business applications become more and more complex, employ a plethora of heterogeneous components and services that must be wired, and require complex configurations, the two kinds of technologies have to be integrated to model the provisioning of such applications. In this paper, we present a process modelling concept that enables the seamless integration of imperative and declarative provisioning models and their technologies while preserving the strengths of both flavors. We validate the technical feasibility of the approach by applying the concept to the workflow language BPEL and evaluate its features by several criteria.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-55&engl=0}
}
@inproceedings {INPROC-2015-39,
   author = {Johannes Wettinger and Vasilios Andrikopoulos and Frank Leymann},
   title = {{Enabling DevOps Collaboration and Continuous Delivery Using Diverse Application Environments}},
   booktitle = {Proceedings of the 23rd International Conference on Cooperative Information Systems (CoopIS 2015)},
   publisher = {Springer},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   type = {Konferenz-Beitrag},
   month = {Oktober},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Aiming to provide the means for efficient collaboration between development and operations personnel, the DevOps paradigm is backed by an increasingly growing collection of tools and reusable artifacts for application management. Continuous delivery pipelines are established based on these building blocks by implementing fully automated, end-to-end application delivery processes, which significantly shorten release cycles to reduce risks and costs as well as gaining a critical competitive advantage. Diverse application environments need to be managed along the pipeline such as development, build, test, and production environments. In this work we address the need for systematically specifying and maintaining diverse application environment topologies enriched with environment-specific requirements in order to implement continuous delivery pipelines. Beside the representation of such requirements, we focus on their systematic and collaborative resolution with respect to the individual needs of the involved application environments.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-39&engl=0}
}
@inproceedings {INPROC-2015-19,
   author = {Santiago G{\'o}mez S{\'a}ez and Vasilios Andrikopoulos and Roberto Jim{\'e}nez S{\'a}nchez and Frank Leymann and Johannes Wettinger},
   title = {{Dynamic Tailoring and Cloud-based Deployment of Containerized Service Middleware}},
   booktitle = {Proceedings of the 8th International Conference on Cloud Computing (CLOUD 2015)},
   address = {New York, USA},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {1--8},
   type = {Konferenz-Beitrag},
   month = {Juni},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   contact = {Santiago G{\'o}mez S{\'a}ez: santiago.gomez-saez@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The emergence and consolidation of container-based virtualization techniques has simplified and accelerated the development, provisioning, and deployment of applications for the Cloud. When considering the case of composite service-based applications that rely on service middleware solutions for their operation, container-based virtualization offers the opportunity for rapid and efficient building and deployment of lightweight, optimally configured middleware instances. As such, it provides an ideal tool for the purposes of cloudifying existing middleware solutions and offering them as part of larger PaaS offerings. As part of this effort, our investigation focuses on leveraging and evaluating a container-based virtualization environment towards enabling the assembly, provisioning, and execution of dynamically tailored instances to satisfy service middleware communication requirements of specific applications. For these purposes we scope the discussion on one particular type of messaging middleware for composite service applications, the Enterprise Service Bus (ESB) technology.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-19&engl=0}
}
@inproceedings {INPROC-2015-17,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{DynTail - Dynamically Tailored Deployment Engines for Cloud Applications}},
   booktitle = {Proceedings of the 8th International Conference on Cloud Computing (CLOUD)},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {421--428},
   type = {Konferenz-Beitrag},
   month = {Juni},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Shortening software release cycles increasingly becomes a critical competitive advantage, not exclusively for software vendors in the field of Web applications, mobile apps, and the Internet of Things. Today's users, customers, and other stakeholders expect quick responses to occurring issues and feature requests. DevOps and Cloud computing are two key paradigms to enable rapid, continuous deployment and delivery of applications utilizing automated software delivery pipelines. However, it is a highly complex and sophisticated challenge to implement such pipelines by installing, configuring, and integrating corresponding general-purpose deployment automation tooling. Therefore, we present a method in conjunction with a framework and implementation to dynamically generate tailored deployment engines for specific application stacks to deploy corresponding applications. Generated deployment engines are packaged in a portable manner to run them on various platforms and infrastructures. The core of our work is based on generating APIs for arbitrary deployment executables such as scripts and plans that perform different tasks in the automated deployment process. As a result, deployment tasks can be triggered through generated API endpoints, abstracting from lower-level, technical details of different deployment automation tooling.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-17&engl=0}
}
@inproceedings {INPROC-2015-12,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Any2API - Automated APIfication}},
   booktitle = {Proceedings of the 5th International Conference on Cloud Computing and Services Science (CLOSER 2015)},
   address = {Stuttgart},
   publisher = {SciTePress},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {475--486},
   type = {Konferenz-Beitrag},
   month = {Mai},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.12 Software Engineering Interoperability,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   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 invocation 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.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-12&engl=0}
}
@inproceedings {INPROC-2015-01,
   author = {Johannes Wettinger and Vasilios Andrikopoulos and Frank Leymann},
   title = {{Automated Capturing and Systematic Usage of DevOps Knowledge for Cloud Applications}},
   booktitle = {Proceedings of the IEEE International Conference on Cloud Engineering (IC2E 2015)},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {60--65},
   type = {Konferenz-Beitrag},
   month = {M{\"a}rz},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {DevOps is an emerging paradigm to actively foster the collaboration between system developers and operations in order to enable efficient end-to-end automation of software deployment and management processes. DevOps is typically combined with Cloud computing, which enables rapid, on-demand provisioning of underlying resources such as virtual servers, storage, or database instances using APIs in a self-service manner. Today, an ever-growing amount of DevOps tools, reusable artifacts such as scripts, and Cloud services are available to implement DevOps automation. Thus, informed decision making on the appropriate approach(es) for the needs of an application is hard. In this work we present a collaborative and holistic approach to capture DevOps knowledge in a knowledgebase. Beside the ability to capture expert knowledge and utilize crowdsourcing approaches, we implemented a crawling framework to automatically discover and capture DevOps knowledge. Moreover, we show how this knowledge is utilized to deploy and operate Cloud applications.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-01&engl=0}
}
@inproceedings {INPROC-2014-68,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Standards-based DevOps Automation and Integration Using TOSCA}},
   booktitle = {Proceedings of the 7th International Conference on Utility and Cloud Computing (UCC 2014)},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {59--68},
   type = {Konferenz-Beitrag},
   month = {Dezember},
   year = {2014},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {DevOps is an emerging paradigm to tightly integrate developers with operations personnel. This is required to enable fast and frequent releases in the sense of continuously delivering software. Users and customers of today's Web applications and mobile apps running in the Cloud expect fast feedback to problems and feature requests. Thus, it is a critical competitive advantage to be able to respond quickly. Beside cultural and organizational changes that are necessary to implement DevOps in practice, tooling is required to implement end-to-end automation of deployment processes. Automation is the key to efficient collaboration and tight integration between development and operations. The DevOps community is constantly pushing new approaches, tools, and open-source artifacts to implement such automated processes. However, as all these proprietary and heterogeneous DevOps automation approaches differ from each other, it is hard to integrate and combine them to deploy applications in the Cloud. In this paper we present a systematic classification of DevOps artifacts and show how different kinds of artifacts can be transformed toward TOSCA, an emerging standard in this field. This enables the seamless and interoperable orchestration of arbitrary artifacts to model and deploy application topologies. We validate the presented approach by a prototype implementation, show its practical feasibility by a detailed case study, and evaluate its performance.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-68&engl=0}
}
@inproceedings {INPROC-2014-56,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Compensation-based vs. Convergent Deployment Automation for Services Operated in the Cloud}},
   booktitle = {Proceedings of the 12th International Conference on Service-Oriented Computing (ICSOC 2014)},
   publisher = {Springer-Verlag},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {336--350},
   type = {Konferenz-Beitrag},
   month = {November},
   year = {2014},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Leading paradigms to develop and operate applications such as continuous delivery, configuration management, and the merge of development and operations (DevOps) are the foundation for various techniques and tools to implement automated deployment. To expose such applications as services (SaaS) to users and customers these approaches are typically used in conjunction with Cloud computing to automatically provision and manage underlying resources such as storage or virtual machines. A major class of these automation approaches follows the idea of converging toward a desired state of a resource (e.g., a middleware component deployed on a virtual machine). This is achieved by repeatedly executing idempotent scripts until the desired state is reached. Because of major drawbacks of this approach, we present an alternative deployment automation approach based on compensation and fine-grained snapshots using container virtualization. We further perform an evaluation comparing both approaches in terms of difficulties at design time and performance at runtime.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-56&engl=0}
}
@inproceedings {INPROC-2014-46,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{DevOpSlang - Bridging the Gap Between Development and Operations}},
   booktitle = {Proceedings of the 3rd European Conference on Service-Oriented and Cloud Computing (ESOCC 2014)},
   publisher = {Springer-Verlag},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {108--122},
   type = {Konferenz-Beitrag},
   month = {September},
   year = {2014},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {DevOps is an emerging paradigm to eliminate the split and barrier between developers and operations personnel that traditionally exists in many enterprises today. The main promise of DevOps is to enable continuous delivery of software in order to enable fast and frequent releases. This enables quick responses to changing requirements of customers and thus may be a critical competitive advantage. In this work we propose a language called DevOpSlang in conjunction with a methodology to implement DevOps as an efficient means for collaboration and automation purposes. Efficient collaboration and automation are the key enablers to implement continuous delivery and thus to react to changing customer requirements quickly.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-46&engl=0}
}
@inproceedings {INPROC-2014-38,
   author = {Johannes Wettinger and Katharina G{\"o}rlach and Frank Leymann},
   title = {{Deployment Aggregates - A Generic Deployment Automation Approach for Applications Operated in the Cloud}},
   booktitle = {Proceedings of the 18th International Enterprise Distributed Object Computing Conference Workshops and Demonstrations (International Workshop on Engineering Cloud Applications \& Services, EnCASE 2014)},
   publisher = {IEEE Computer Society Press},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {173--180},
   type = {Workshop-Beitrag},
   month = {September},
   year = {2014},
   doi = {10.1109/EDOCW.2014.34},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {One of the most essential requirements to make use of the benefits of Cloud computing is fully automated provisioning and deployment of applications including all related resources. This leads to crucial cost reductions when deploying and operating applications in the Cloud because manual processes are slow, error-prone, and thus costly. Both Cloud providers and the open-source community provide a huge variety of tools, APIs, domain-specific languages, and reusable artifacts to implement deployment automation. However, the meta-models behind these approaches are diverse. This diversity makes it challenging to combine different approaches, avoiding vendor lock-in and tooling lock-in. In this work we propose deployment aggregates as a generic means to use and orchestrate different kinds of deployment approaches. We define a generic meta-model and show its relation to existing meta-models in the domain of deployment automation. Moreover, we discuss how existing artifacts can be used as deployment aggregates as a result of transformation and enrichment.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-38&engl=0}
}
@inproceedings {INPROC-2014-22,
   author = {Johannes Wettinger and Tobias Binz and Uwe Breitenb{\"u}cher and Oliver Kopp and Frank Leymann and Michael Zimmermann},
   title = {{Unified Invocation of Scripts and Services for Provisioning, Deployment, and Management of Cloud Applications Based on TOSCA}},
   booktitle = {Proceedings of the 4th International Conference on Cloud Computing and Services Science (CLOSER 2014)},
   publisher = {SciTePress},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {559--568},
   type = {Konferenz-Beitrag},
   month = {April},
   year = {2014},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems,     C.2.4 Distributed Systems},
   contact = {E-mail: johannes.wettinger@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {There are several script-centric approaches, APIs, and tools available to implement automated provisioning, deployment, and management of applications in the Cloud. The automation of all these aspects is key for reducing costs. However, most of these approaches are script-centric and provide proprietary solutions employing different invocation mechanisms, interfaces, and state models. Moreover, most Cloud providers offer proprietary Web services or APIs to be used for provisioning and management purposes. Consequently, it is hard to create deployment and management plans integrating several of these approaches. The goal of our work is to come up with an approach for unified invocation of scripts and services without handling each proprietary interface separately. A prototype realizes the presented approach in a standards-based manner using the Topology and Orchestration Specification for Cloud Applications (TOSCA).},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-22&engl=0}
}
@inproceedings {INPROC-2014-21,
   author = {Uwe Breitenb{\"u}cher and Tobias Binz and K{\'a}lm{\'a}n K{\'e}pes and Oliver Kopp and Frank Leymann and Johannes Wettinger},
   title = {{Combining Declarative and Imperative Cloud Application Provisioning based on TOSCA}},
   booktitle = {Proceedings of the IEEE International Conference on Cloud Engineering (IC2E)},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {87--96},
   type = {Konferenz-Beitrag},
   month = {M{\"a}rz},
   year = {2014},
   doi = {10.1109/IC2E.2014.56},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The automation of application provisioning is one of the most important issues in Cloud Computing. The Topology and Orchestration Specification for Cloud Applications (TOSCA) supports automating provisioning by two different flavors: (i) declarative processing is based on interpreting application topology models by a runtime that infers provisioning logic whereas (ii) imperative processing employs provisioning plans that explicitly describe the provisioning tasks to be executed. Both flavors come with benefits and drawbacks. This paper presents a means to combine both flavors to resolve drawbacks and to profit from benefits of both worlds: we propose a standards-based approach to generate provisioning plans based on TOSCA topology models. These provisioning plans are workflows that can be executed fully automatically and may be customized by application developers after generation. We prove the technical feasibility of the approach by an end-to-end open source toolchain and evaluate its extensibility, performance, and complexity.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-21&engl=0}
}
@inproceedings {INPROC-2014-19,
   author = {Vasilios Andrikopoulos and Santiago G{\'o}mez S{\'a}ez and Frank Leymann and Johannes Wettinger},
   title = {{Optimal Distribution of Applications in the Cloud}},
   booktitle = {Proceedings of the 26th Conference on Advanced Information Systems Engineering (CAiSE 2014)},
   editor = {Matthias Jarke and John Mylopoulos and Christoph Quix},
   publisher = {Springer},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   series = {Lecture Notes in Computer Science (LNCS)},
   pages = {1--15},
   type = {Konferenz-Beitrag},
   month = {Juni},
   year = {2014},
   keywords = {application topology; distribution optimization; cloud computing; operational expenses},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   contact = {vasilios.andrikopoulos@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {In an environment of constant change and variation driven by competition and innovation, a software service can rarely remain stable. Being able to manage and control the evolution of services is therefore an important goal for the Service-Oriented paradigm. This work extends existing and widely-adopted theories from software engineering, programming languages, service oriented computing and other related fields to provide the fundamental ingredients required to guarantee that spurious results and inconsistencies that may occur due to uncontrolled service changes are avoided. The presented work provides a unifying theoretical framework for controlling the evolution of services that deals with structural, behavioral and QoS level-induced service changes in a type-safe manner. The goal of the work is to ensure correct version transitions so that previous and future clients can use a service in a consistent manner.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-19&engl=0}
}
@inproceedings {INPROC-2014-01,
   author = {Johannes Wettinger and Vasilios Andrikopoulos and Steve Strauch and Frank Leymann},
   title = {{Characterizing and Evaluating Different Deployment Approaches for Cloud Applications}},
   booktitle = {Proceedings of the IEEE International Conference on Cloud Engineering (IC2E 2014)},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {205--214},
   type = {Konferenz-Beitrag},
   month = {M{\"a}rz},
   year = {2014},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Fully automated provisioning and deployment in order to reduce the costs for managing applications is one of the most essential requirements to make use of the benefits of Cloud computing. Several approaches and tools are available to automate the involved processes. The DevOps community, for example, provides tooling and artifacts to realize deployment automation on Infrastructure as a Service level in a mostly application-oriented manner. Platform as a Service frameworks are also available for the same purpose. In this paper we categorize and characterize available deployment approaches independently from the underlying technology used. For this purpose, we choose Web applications with different technology stacks and analyze their specific deployment requirements. Afterwards, we provision these applications using each of the identified types of deployment approaches in the Cloud. Finally, we discuss the evaluation results and derive recommendations which deployment approach to use based on the deployment requirements of an application.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-01&engl=0}
}
@inproceedings {INPROC-2013-49,
   author = {Uwe Breitenb{\"u}cher and Tobias Binz and Oliver Kopp and Frank Leymann and Johannes Wettinger},
   title = {{Integrated Cloud Application Provisioning: Interconnecting Service-Centric and Script-Centric Management Technologies}},
   booktitle = {Proceedings of the 21st International Conference on Cooperative Information Systems (CoopIS 2013)},
   address = {Stuttgart},
   publisher = {Springer Berlin Heidelberg},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   series = {Lecture Notes in Computer Science},
   volume = {8185},
   pages = {130--148},
   type = {Konferenz-Beitrag},
   month = {September},
   year = {2013},
   isbn = {978-3-642-41029-1},
   doi = {10.1007/978-3-642-41030-7_9},
   keywords = {Cloud Application Provisioning; Integration; Management Scripts; Management Services},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Parallele und Verteilte Systeme, Anwendersoftware;     Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Modern Cloud applications employ a plethora of components and XaaS offerings that need to be configured during provisioning. Due to increased heterogeneity, complexity is growing and existing approaches reach their limits if multiple different provisioning and configuration technologies are involved. They are not able to integrate them in an automated, flexible, and customizable way. Especially combining proprietary management services with script-centric configuration management technologies is currently a major challenge. To enable automated provisioning of such applications, we introduce Generic Lifecycle Management Planlets that provide a means to combine custom provisioning logic with common provisioning tasks. We implemented planlets for provisioning and customization of components and XaaS offerings based on both SOAP and RESTful Web services as well as configuration management technologies such as Chef to show the feasibility of the approach. By using our approach, multiple technologies can be combined seamlessly.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-49&engl=0}
}
@inproceedings {INPROC-2013-39,
   author = {Christoph Demont and Uwe Breitenb{\"u}cher and Oliver Kopp and Frank Leymann and Johannes Wettinger},
   title = {{Towards Integrating TOSCA and ITIL}},
   booktitle = {Proceedings of the 5th Central-European Workshop on Services and their Composition (ZEUS 2013)},
   editor = {Oliver Kopp and Niels Lohmann},
   publisher = {CEUR-WS.org},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   series = {CEUR Workshop Proceedings},
   volume = {1029},
   pages = {28--31},
   type = {Workshop-Beitrag},
   month = {September},
   year = {2013},
   language = {Englisch},
   cr-category = {H.4.1 Office Automation},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The integration of low level management functionalities provided by TOSCA and high level processes as defined by ITIL may provide significant improvement opportunities to the application provider as on both levels workflow technology can be employed. In this paper, we present Key Performance Indicator Analysis Plans as first idea how both approaches can be integrated.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-39&engl=0}
}
@inproceedings {INPROC-2013-21,
   author = {Johannes Wettinger and Vasilios Andrikopoulos and Steve Strauch and Frank Leymann},
   title = {{Enabling Dynamic Deployment of Cloud Applications Using a Modular and Extensible PaaS Environment}},
   booktitle = {Proceedings of the 6th International Conference on Cloud Computing (CLOUD 2013)},
   editor = {IEEE Computer Society},
   publisher = {IEEE Computer Society},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {478--485},
   type = {Konferenz-Beitrag},
   month = {Juli},
   year = {2013},
   keywords = {Middleware Abstraction; Infrastructure Abstraction; Middleware-oriented Deployment; PaaS Model; Cloud Computing},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The Platform as a Service (PaaS) model promotes the development and deployment of applications on top of middleware solutions offered by the provider. Deploying an application in this model entails both the deployment of the application on top of the platform, but potentially also the deployment of the middleware components required by the application. Existing works enable the abstraction from the underlying infrastructure and allow for the creation of generic deployment plans for middleware components that automate the deployment of applications. In this paper we propose a middleware-oriented deployment approach that defines how the deployment of middleware components can be defined in a manner that allows to offer them as PaaS building blocks, and enable the automatic deployment of application components on them. We also present an evaluation of our proposal, together with the lessons learned during this activity.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-21&engl=0}
}
@inproceedings {INPROC-2013-10,
   author = {Johannes Wettinger and Michael Behrendt and Tobias Binz and Uwe Breitenb{\"u}cher and Gerd Breiter and Frank Leymann and Simon Moser and Isabell Schwertle and Thomas Spatzier},
   title = {{Integrating Configuration Management with Model-Driven Cloud Management Based on TOSCA}},
   booktitle = {Proceedings of the 3rd International Conference on Cloud Computing and Services Science (CLOSER 2013); Aachen, Germany, May 8-10, 2013},
   publisher = {SciTePress},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   pages = {437--446},
   type = {Konferenz-Beitrag},
   month = {Mai},
   year = {2013},
   keywords = {Model-Driven Management; Configuration Management; Service Management; Cloud Services; DevOps},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     K.6 Management of Computing and Information Systems},
   contact = {E-Mail: johannes.wettinger@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The paradigm of Cloud computing introduces new approaches to manage IT services going beyond concepts originating in traditional IT service management. The main goal is to automate the whole management of services to reduce costs and to make management tasks less error-prone. Two different service management paradigms are used in practice: configuration management and model-driven Cloud management. The latter one aims to be a holistic management approach for services in the Cloud. However, both management paradigms are originating in different backgrounds, thus model-driven Cloud management does not cover all aspects of configuration management that are key for Cloud services. This paper presents approaches for integrating configuration management with model-driven Cloud management and how they can be realized based on the OASIS Topology and Orchestration Specification for Cloud Applications and Chef, a popular configuration management tool. These approaches enable the creation of holistic and highly portable service models.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-10&engl=0}
}
@inproceedings {INPROC-2013-09,
   author = {Johannes Wettinger and Oliver Kopp and Frank Leymann},
   title = {{Improving Portability of Cloud Service Topology Models Relying on Script-Based Deployment}},
   booktitle = {Proceedings of the 5th Central European Workshop on Services and their Composition (ZEUS 2013)},
   publisher = {CEUR Workshop Proceedings},
   institution = {Universit{\"a}t Stuttgart, Fakult{\"a}t Informatik, Elektrotechnik und Informationstechnik, Germany},
   type = {Workshop-Beitrag},
   month = {Februar},
   year = {2013},
   issn = {1613-0073},
   keywords = {Portability; Service Topology; Topology Model; Service Deployment; Cloud Computing},
   language = {Englisch},
   cr-category = {D.2.13 Software Engineering Reusable Software,     D.2.11 Software Engineering Software Architectures},
   contact = {E-Mail: johannes.wettinger@iaas.uni-stuttgart.de},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Portability is key for services running in the Cloud to prevent vendor lock-in. Today, many Cloud services are portable and can thus be moved from one Cloud provider to another. However, the management of these services is often bound to provider-specific management tooling. Thus, the way of management of a particular Cloud service may completely change when moving it to another Cloud provider. This paper presents concepts to improve the portability of Cloud service topology models that are deployed and managed using scripts. We highlight the challenges of a semi-automatic procedure to generate portable TOSCA-compliant topology model components based on Juju topology model components.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-09&engl=0}
}
@article {ART-2016-26,
   author = {Uwe Breitenb{\"u}cher and Christian Endres and K{\'a}lm{\'a}n K{\'e}pes and Oliver Kopp and Frank Leymann and Sebastian Wagner and Johannes Wettinger and Michael Zimmermann},
   title = {{The OpenTOSCA Ecosystem - Concepts \& Tools}},
   journal = {European Space project on Smart Systems, Big Data, Future Internet - Towards Serving the Grand Societal Challenges - Volume 1: EPS Rome 2016},
   publisher = {SciTePress},
   pages = {112--130},
   type = {Artikel in Zeitschrift},
   month = {Dezember},
   year = {2016},
   isbn = {978-989-758-207-3},
   doi = {10.5220/0007903201120130},
   keywords = {TOSCA; OpenTOSCA; Orchestration; Management; Cloud},
   language = {Englisch},
   cr-category = {D.2.2 Software Engineering Design Tools and Techniques,     D.2.9 Software Engineering Management},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Parallele und Verteilte Systeme, Anwendersoftware;     Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Automating the provisioning and management of Cloud applications is one of the most important issues in Cloud Computing. The Topology and Orchestration Specification for Cloud Applications (TOSCA) is an OASIS standard for describing Cloud applications and their management in a portable and interoperable manner. TOSCA enables modeling the application's structure in the form of topology models and employs the concept of executable management plans to describe all required management functionality regarding the application. In this paper, we give an overview of TOSCA and the OpenTOSCA Ecosystem, which is an implementation of the TOSCA standard. The ecosystem consists of standard-compliant tools that enable modeling application topology models and automating the provisioning and management of the modeled applications.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2016-26&engl=0}
}
@article {ART-2016-22,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Michael Falkenthal and Frank Leymann},
   title = {{Collaborative Gathering and Continuous Delivery of DevOps Solutions through Repositories}},
   journal = {Computer Science - Research and Development},
   publisher = {Springer},
   type = {Artikel in Zeitschrift},
   month = {November},
   year = {2016},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Collaboration is a key aspect for establishing DevOps-oriented processes because diverse experts such as developers and operations personnel need to efficiently work together to deliver applications. For this purpose, highly automated continuous delivery pipelines are established, consisting of several stages and their corresponding application environments (development, test, production, etc.). The DevOps community provides a huge variety of tools and reusable artifacts (i.e. DevOps solutions such as deployment engines, configuration definitions, container images, etc.) to implement such application environments. This paper presents the concept of collaborative solution repositories, which are based on established software engineering practices. This helps to systematically maintain and link diverse solutions. We further discuss how discovery and capturing of such solutions can be automated. To utilize this knowledge (made of linked DevOps solutions), we apply continuous delivery principles to create diverse knowledge base instances through corresponding pipelines. Finally, an integrated architecture is outlined and validated using a prototype implementation.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2016-22&engl=0}
}
@article {ART-2016-09,
   author = {Johannes Wettinger and Vasilios Andrikopoulos and Frank Leymann and Steve Strauch},
   title = {{Middleware-oriented Deployment Automation for Cloud Applications}},
   journal = {IEEE Transactions on Cloud Computing},
   publisher = {IEEE},
   type = {Artikel in Zeitschrift},
   month = {Februar},
   year = {2016},
   issn = {2168-7161},
   doi = {10.1109/TCC.2016.2535325},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Fully automated provisioning and deployment of applications is one of the most essential prerequisites to make use of the benefits of Cloud computing in order to reduce the costs for managing applications. A huge variety of approaches, tools, and providers are available to automate the involved processes. The DevOps community, for instance, provides tooling and reusable artifacts to implement deployment automation in an application-oriented manner. Platform-as-a-Service frameworks are available for the same purpose. In this work we systematically classify and characterize available deployment approaches independently from the underlying technology used. For motivation and evaluation purposes, we choose Web applications with different technology stacks and analyze their specific deployment requirements. Afterwards, we provision these applications using each of the identified types of deployment approaches in the Cloud to perform qualitative and quantitative measurements. Finally, we discuss the evaluation results and derive recommendations to decide which deployment approach to use based on the deployment requirements of an application. Our results show that deployment approaches can also be efficiently combined if there is no 'best fit' for a particular application.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2016-09&engl=0}
}
@article {ART-2016-08,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Enhancing Cloud Application DevOps Using Dynamically Tailored Deployment Engines}},
   journal = {Services Transactions on Cloud Computing},
   publisher = {Online},
   volume = {4},
   number = {1},
   pages = {1--15},
   type = {Artikel in Zeitschrift},
   month = {Januar},
   year = {2016},
   issn = {2326-7550},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   ee = {http://hipore.com/stcc/2016/IJCC-Vol4-No1-2016b.pdf},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Shortening software release cycles increasingly becomes a critical competitive advantage as today's users, customers, and other stakeholders expect quick responses to occurring issues and feature requests. DevOps practices and Cloud computing are two key paradigms to tackle these issues by enabling rapid and continuous delivery of applications, utilizing automated software delivery pipelines. However, it is a complex and sophisticated challenge to implement such pipelines by installing, configuring, orchestrating, and integrating the required deployment automation solutions. Therefore, we present a method in conjunction with a framework and implementation to dynamically generate tailored deployment automation engines for specific application stacks, which are packaged in a portable manner to run them on various platforms and infrastructures. The core of our work is based on generating APIs for arbitrary deployment executables such as scripts and plans that perform different tasks in the automated deployment process. As a result, deployment tasks can be triggered through generated API endpoints, abstracting from lower-level, technical details of diverse deployment automation tooling. Beside a quantitative evaluation, we discuss two case studies in this context, one focusing on microservice architectures, the other one considering application functionality and its relation to deployment functionality.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2016-08&engl=0}
}
@article {ART-2015-11,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Oliver Kopp and Frank Leymann},
   title = {{Streamlining DevOps Automation for Cloud Applications using TOSCA as Standardized Metamodel}},
   journal = {Future Generation Computer Systems},
   publisher = {Elsevier},
   pages = {317--332},
   type = {Artikel in Zeitschrift},
   month = {August},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {DevOps as an emerging paradigm aims to tightly integrate developers with operations personnel. This enables fast and frequent releases in the sense of continuously delivering new iterations of a particular application. Users and customers of today's Web applications and mobile apps running in the Cloud expect fast feedback to problems and feature requests. Thus, it is a critical competitive advantage to be able to respond quickly. Besides cultural and organizational changes that are necessary to apply DevOps in practice, tooling is required to implement end-to-end automation of deployment processes. Automation is the key to efficient collaboration and tight integration between development and operations. The DevOps community is constantly pushing new approaches, tools, and open-source artifacts to implement such automated processes. However, as all these proprietary and heterogeneous DevOps automation approaches differ from each other, it is hard to integrate and combine them to deploy applications in the Cloud using an automated deployment process. In this paper we present a systematic classification of DevOps artifacts and show how different kinds of artifacts can be discovered and transformed toward TOSCA, which is an emerging standard. We present an integrated modeling and runtime framework to enable the seamless and interoperable integration of different approaches to model and deploy application topologies. The framework is implemented by an open-source, end-to-end toolchain. Moreover, we validate and evaluate the presented approach to show its practical feasibility based on a detailed case study, in particular considering the performance of the transformation toward TOSCA.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2015-11&engl=0}
}
@article {ART-2015-09,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Compensation and Convergence - Comparing and Combining Deployment Automation Approaches}},
   journal = {International Journal of Cooperative Information Systems},
   publisher = {World Scientific},
   type = {Artikel in Zeitschrift},
   month = {August},
   year = {2015},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Leading paradigms to develop, deploy, and operate applications such as continuous delivery, configuration management, and the merge of development and operations (DevOps) are the foundation for various techniques and tools to implement automated deployment. To make such applications available for users and customers, these approaches are typically used in conjunction with Cloud computing to automatically provision and manage underlying resources such as storage and virtual servers. A major class of these automation approaches follow the idea of converging toward a desired state of a resource (e.g., a middleware component deployed on a virtual machine). This is achieved by repeatedly executing idempotent scripts to reach the desired state. Because of major drawbacks of this approach, we discuss an alternative deployment automation approach based on compensation and fine-grained snapshots using container virtualization. We perform an evaluation comparing both approaches in terms of difficulties at design time and performance at runtime. Moreover, we discuss concepts, strategies, and implementations to effectively combine different deployment automation approaches.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2015-09&engl=0}
}
@article {ART-2014-09,
   author = {Johannes Wettinger and Tobias Binz and Uwe Breitenb{\"u}cher and Oliver Kopp and Frank Leymann},
   title = {{Streamlining Cloud Management Automation by Unifying the Invocation of Scripts and Services Based on TOSCA}},
   journal = {International Journal of Organizational and Collective Intelligence (IJOCI), Volume 4, Issue 2},
   publisher = {IGI Global},
   pages = {45--63},
   type = {Artikel in Zeitschrift},
   month = {April},
   year = {2014},
   keywords = {DevOps; Management Operation; Management Plan; Topology and Orchestration Specification for Cloud Applications (TOSCA); Unified Invocation},
   language = {Englisch},
   cr-category = {D.2.11 Software Engineering Software Architectures,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {Today, there is a huge variety of script-centric approaches, APIs, and tools available to implement automated provisioning, deployment, and management of applications in the Cloud. The automation of all these aspects is key for reducing costs. However, most of these approaches are script-centric and provide proprietary solutions employing different invocation mechanisms, interfaces, and state models. Moreover, most Cloud providers offer proprietary APIs to be used for provisioning and management purposes. Consequently, it is hard to create deployment and management plans that integrate multiple of these approaches. The goal of the authors work is to come up with an approach for unifying the invocation of scripts and services without handling each proprietary interface separately. A prototype realizes the presented approach in a standards-based manner using the Topology and Orchestration Specification for Cloud Applications (TOSCA).},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2014-09&engl=0}
}
@inbook {INBOOK-2016-05,
   author = {Johannes Wettinger and Uwe Breitenb{\"u}cher and Frank Leymann},
   title = {{Streamlining APIfication by Generating APIs for Diverse Executables Using Any2API}},
   series = {Cloud Computing and Services Science},
   publisher = {Springer International Publishing},
   series = {Communications in Computer and Information Science},
   volume = {581},
   pages = {216--238},
   type = {Beitrag in Buch},
   month = {Februar},
   year = {2016},
   doi = {10.1007/978-3-319-29582-4_12},
   isbn = {978-3-319-29581-7},
   keywords = {API; APIfication; Service; Web; REST; DevOps; Deployment; Cloud computing},
   language = {Englisch},
   cr-category = {D.2.12 Software Engineering Interoperability,     C.2.4 Distributed Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {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.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INBOOK-2016-05&engl=0}
}
@inbook {INBOOK-2016-04,
   author = {Uwe Breitenb{\"u}cher and Tobias Binz and Oliver Kopp and K{\'a}lm{\'a}n K{\'e}pes and Frank Leymann and Johannes Wettinger},
   title = {{Hybrid TOSCA Provisioning Plans: Integrating Declarative and Imperative Cloud Application Provisioning Technologies}},
   series = {Cloud Computing and Services Science},
   publisher = {Springer International Publishing},
   series = {Communications in Computer and Information Science},
   volume = {581},
   pages = {239--262},
   type = {Beitrag in Buch},
   month = {Februar},
   year = {2016},
   doi = {10.1007/978-3-319-29582-4_13},
   isbn = {978-3-319-29581-7},
   keywords = {Cloud application provisioning; TOSCA; Hybrid plans; Automation; Declarative modelling; Imperative modelling; Integration},
   language = {Englisch},
   cr-category = {K.6 Management of Computing and Information Systems},
   department = {Universit{\"a}t Stuttgart, Institut f{\"u}r Parallele und Verteilte Systeme, Anwendersoftware;     Universit{\"a}t Stuttgart, Institut f{\"u}r Architektur von Anwendungssystemen},
   abstract = {The efficient provisioning of complex applications is one of the most challenging issues in Cloud Computing. Therefore, various provisioning and configuration management technologies have been developed that can be categorized as follows: imperative approaches enable a precise specification of the low-level tasks to be executed whereas declarative approaches focus on describing the desired goals and constraints. Since complex applications employ a plethora of heterogeneous components that must be wired and configured, typically multiple of these technologies have to be integrated to automate the entire provisioning process. In a former work, we presented a workflow modelling concept that enables the seamless integration of imperative and declarative technologies. This paper is an extension of that work to integrate the modelling concept with the Cloud standard TOSCA. In particular, we show how Hybrid Provisioning Plans can be created that retrieve all required information about the desired provisioning directly from the corresponding TOSCA model. We validate the practical feasibility of the concept by extending the OpenTOSCA runtime environment and the workflow language BPEL.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INBOOK-2016-04&engl=0}
}