@inproceedings {INPROC-2017-08,
   author = {Florian Haupt and Frank Leymann and Anton Scherer and Karolina Vukojevic-Haupt},
   title = {{A Framework for the Structural Analysis of REST APIs}},
   booktitle = {Proceedings of the IEEE International Conference on Software Architecture (ICSA 2017)},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   type = {Conference Paper},
   month = {April},
   year = {2017},
   doi = {10.1109/ICSA.2017.40},
   keywords = {REST; interface description language; analysis},
   language = {German},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {Today, REST APIs have established as a means for realizing distributed systems and are supposed to gain even more importance in the context of Cloud Computing, Internet of Things, and Microservices. Nevertheless, many existing REST APIs are known to be not well-designed, resulting in the absence of desirable quality attributes that truly RESTful systems entail. Although existing analysis show, that many REST APIs are not fully REST compliant, it is still an open issue how to improve this deficit and where to start. In this work, we introduce a framework for the structural analysis of REST APIs based on their description documents, as this allows for a comprehensive, well-structured analysis approach that also includes analyzing the corresponding API description languages. A first validation builds on a set of 286 real world API descriptions available as Swagger documents, and comprises their transformation into a canonical metamodel for REST APIs as well as a metrics-based analysis and discussion of their structural characteristics with respect to compliance with the REST architectural style.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2017-08&engl=1}
}
@inproceedings {INPROC-2015-43,
   author = {Karolina Vukojevic-Haupt and Santiago G{\'o}mez S{\'a}ez and Florian Haupt and Dimka Karastoyanova and Frank Leymann},
   title = {{A Middleware-centric Optimization Approach for the Automated Provisioning of Services in the Cloud}},
   booktitle = {Proceedings of the 7th IEEE International Conference on Cloud Computing Technology and Science},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {174--179},
   type = {Conference Paper},
   month = {December},
   year = {2015},
   doi = {10.1109/CloudCom.2015.86},
   keywords = {on-demand provisioning; cloud; service-oriented computing; eScience; optimization; dynamic provisioning; SOC},
   language = {English},
   cr-category = {C.2.4 Distributed Systems,     D.2.11 Software Engineering Software Architectures,     I.6.7 Simulation Support Systems},
   contact = {karolina.vukojevic@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {The on-demand provisioning of services, a cloud-based extension for traditional service-oriented architectures, improves the handling of services in usage scenarios where they are only used rarely and irregularly. However, the standard process of service provisioning and de-provisioning shows still some shortcomings when applying it in real world. In this paper, we introduce a middleware-centric optimization approach that can be integrated in the existing on-demand provisioning middleware in a loosely coupled manner, changing the standard provisioning and de-provisioning behavior in order to improve it with respect to cost and time. We define and implement a set of optimization strategies, evaluate them based on a real world use case from the eScience domain and provide qualitative as well as quantitative decision support for effectively selecting and parametrizing a suitable strategy. Altogether, our work improves the applicability of the existing on-demand provisioning approach and system in real world, including guidance for selecting the suitable optimization strategy for specific use cases.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-43&engl=1}
}
@inproceedings {INPROC-2015-23,
   author = {Karolina Vukojevic-Haupt and Florian Haupt and Frank Leymann and Lukas Reinfurt},
   title = {{Bootstrapping Complex Workflow Middleware Systems into the Cloud}},
   booktitle = {Proceedings of the 11th IEEE International Conference on e-Science},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {126--135},
   type = {Conference Paper},
   month = {September},
   year = {2015},
   doi = {10.1109/eScience.2015.69},
   keywords = {Bootware; Cloud; Bootstrapping; On-demand Provisioning; Dynamic Provisioning; eScience; SOC; Automatic Provisioning; Automatic Deployment; Optimization; Integration},
   language = {English},
   cr-category = {C.2.4 Distributed Systems,     D.2.11 Software Engineering Software Architectures},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {The use of Cloud infrastructures together with provisioning technologies can be successfully applied in scenarios where resources are only needed rarely and irregularly, for example simulation workflows in the eScience domain. There has already been proposed a solution for the on-demand provisioning of services required by workflows, but how to automatically provision the needed workflow middleware itself is still an open issue. Although many provisioning technologies are available, it is currently not possible to use them in an integrated, flexible and automated way. The main idea presented in this paper is a multistep bootstrapping process, starting with a minimal local software component and ending up with a complex workflow middleware running in the Cloud. This minimal software component is called bootware. We define the key requirements for the bootware, present its architecture and discuss the main design decisions and how they fulfil the requirements. The bootware enables to provision complex workflow middleware systems on-demand and automatically in the Cloud and therefore reduces resource consumption and costs.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-23&engl=1}
}
@inproceedings {INPROC-2015-10,
   author = {Florian Haupt and Frank Leymann and Cesare Pautasso},
   title = {{A conversation based approach for modeling REST APIs}},
   booktitle = {12th Working IEEE / IFIP Conference on Software Architecture - WICSA 2015},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   type = {Conference Paper},
   month = {May},
   year = {2015},
   language = {German},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {Conversations are a well-known concept in service design to describe complex interactions between a client and one or multiple services. The REST architectural style constrains the characteristics of clients, servers and their interactions in REST architectures which consequently has an impact on conversations in such systems. The relation between conversations and REST architectures and how such RESTful conversations can be characterized has not been studied in detail yet. In this paper we discuss the characteristics of conversations in REST architectures and introduce an initial set of commonly used conversation types. Based on this, we propose to use conversations as a modeling tool for the design of REST APIs at a higher level of abstraction. We also introduce a corresponding interaction centric metamodel for REST APIs. The characterization of RESTful conversations enables a new interaction centric viewpoint on REST architectures which can be also applied for modeling REST APIs on an abstraction level that enables users to focus on the essential functionality of their REST API.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2015-10&engl=1}
}
@inproceedings {INPROC-2014-77,
   author = {Karolina Vukojevic-Haupt and Florian Haupt and Dimka Karastoyanova and Frank Leymann},
   title = {{Replicability of Dynamically Provisioned Scientific Experiments}},
   booktitle = {IEEE International Conference on Service Oriented Computing \& Applications (SOCA 2014)},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {119--124},
   type = {Conference Paper},
   month = {November},
   year = {2014},
   doi = {10.1109/SOCA.2014.54},
   keywords = {replicability; SOC; SOA; Cloud; on-demand provisioning and deprovisioning; eScience},
   language = {English},
   cr-category = {C.2.4 Distributed Systems,     D.2.11 Software Engineering Software Architectures},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {The ability to repeat an experiment, known as replicability, is a basic concept of scientific research and also an important aspect in the field of eScience. The principles of Service Oriented Computing (SOC) and Cloud Computing, both based on high runtime dynamicity, are more and more adopted in the eScience domain. Simulation experiments exploiting these principles introduce significant challenges with respect to replicability. Current research activities mainly focus on how to exploit SOC and Cloud for eScience, while the aspect of replicability for such experiments is still an open issue. In this paper we define a general method to identify points of dynamicity in simulation experiments and to handle them in order to enable replicability. We systematically examine different types of service binding strategies, the main source of dynamicity, and derive a method and corresponding architecture to handle this dynamicity with respect to replicability. Our work enables scientists to perform simulation experiments that exploit the dynamicity and flexibility of SOC and Cloud Computing but still are repeatable.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-77&engl=1}
}
@inproceedings {INPROC-2014-34,
   author = {Karolina Vukojevic-Haupt and Florian Haupt and Dimka Karastoyanova and Frank Leymann},
   title = {{Service Selection for On-demand Provisioned Services}},
   booktitle = {Proceedings of the 18th IEEE International EDOC Conference (EDOC 2014)},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {120--127},
   type = {Conference Paper},
   month = {September},
   year = {2014},
   doi = {10.1109/EDOC.2014.25},
   language = {English},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {Service selection is an important concept in service oriented architectures that enables the dynamic binding of services based on functional and non-functional requirements. The introduction of the concept of on-demand provisioned services significantly changes the nature of services and as a consequence the traditional service selection process does not fit anymore. Existing approaches for service selection rely on the always on semantic of services, an assumption that is not valid for on-demand provisioned services. We tackle this problem by adapting the traditional service selection process and by defining an additional step covering the changes introduced by the concept of on-demand provisioning. Our solution comprises an extended architecture for on-demand provisioning, a metamodel for a service registry and a detailed definition and discussion of the adapted and extended service selection process. The work presented in this paper allows keeping the advantages of dynamic service binding at runtime and combining them with the advantages of Cloud computing exploited through the concept of on-demand provisioning.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-34&engl=1}
}
@inproceedings {INPROC-2014-33,
   author = {Florian Haupt and Markus Fischer and Dimka Karastoyanova and Frank Leymann and Karolina Vukojevic-Haupt},
   title = {{Service Composition for REST}},
   booktitle = {Proceedings of the 18th IEEE International EDOC Conference (EDOC 2014)},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {110--119},
   type = {Conference Paper},
   month = {September},
   year = {2014},
   issn = {1541-7719},
   doi = {10.1109/EDOC.2014.24},
   keywords = {Service Composition; REST; BPEL},
   language = {English},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {One of the key strengths of service oriented architectures, the concept of service composition to reuse and combine existing services in order to achieve new and superior functionality, promises similar advantages when applied to resources oriented architectures. The challenge in this context is how to realize service composition in compliance with the constraints defined by the REST architectural style and how to realize it in a way that it can be integrated to and benefit from existing service composition solutions. Existing approaches to REST service composition are mostly bound to the HTTP protocol and often lack a systematic methodology and a mature and standards based realization approach. In our work, we follow a comprehensible methodology by deriving the key requirements for REST service composition directly from the REST constraints and then mapping these requirements to a standard compliant extension of the BPEL composition language. We performed a general requirements analysis for REST service composition, defined a meta model for a corresponding BPEL extension, realized this extension prototypically and validated it based on a real world use case from the eScience domain. Our work provides a general methodology to enable REST service composition as well as a realization approach that enables the combined composition of WSDL and REST services in a mature and robust way.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-33&engl=1}
}
@inproceedings {INPROC-2014-24,
   author = {Florian Haupt and Frank Leymann and Alexander Nowak and Sebastian Wagner},
   title = {{Lego4TOSCA: Composable Building Blocks for Cloud Applications}},
   booktitle = {Proceedings of the 7th IEEE International Conference on Cloud Computing (CLOUD 2014)},
   editor = {IEEE},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {160--167},
   type = {Conference Paper},
   month = {July},
   year = {2014},
   isbn = {978-1-4799-5062-1},
   doi = {10.1109/CLOUD.2014.31},
   keywords = {Cloud; TOSCA},
   language = {English},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {The Topology and Orchestration Specification for Cloud Applications (TOSCA) enables the description, provisioning, and management of complex cloud applications in a portable way. TOSCA, therefore, provides a comprehensive yet complex set of mechanisms that may hinder users from unleashing its power due to misusing or neglecting parts of those mechanisms. TOSCA has just been standardized and, although it seems to be highly adopted in industry, there is a lack of systematic research of its features and capabilities. In this work we discuss the design of basic building blocks for cloud applications, called node types, and show how they can benefit from a deep integration with TOSCA. We developed a generic architecture for the realization of TOSCA node types, show an implementation of this architecture and validate it based on a sample cloud application. Our work gives an insight into the capabilities of TOSCA with respect to enable the creation of portable cloud services based on a set of composable building blocks.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-24&engl=1}
}
@inproceedings {INPROC-2014-23,
   author = {Florian Haupt and Dimka Karastoyanova and Frank Leymann and Benjamin Schroth},
   title = {{A Model-Driven Approach for REST Compliant Services}},
   booktitle = {Web Services (ICWS), 2014 IEEE International Conference on},
   editor = {IEEE},
   publisher = {IEEE},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   pages = {129--136},
   type = {Conference Paper},
   month = {July},
   year = {2014},
   isbn = {978-1-4799-5053-9},
   doi = {10.1109/ICWS.2014.30},
   keywords = {REST; MDSD},
   language = {English},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {The design of applications that comply to the REST architectural style requires observing a given set of architectural constraints. Following these constraints and therefore designing REST compliant applications is a non-trivial task often not fulfilled properly. There exist several approaches for the modeling and formal description of REST applications, but most of them do not pay any attention to how these approaches can support or even force REST compliance. In this paper we propose a model driven approach for modeling REST services. We introduce a multi layered model which enables (partially) enforcing REST compliance by separating different concerns through separate models. We contribute a multi layered meta-model for REST applications, discuss the connection to REST compliance and show an implementation of our approach based on the proposed meta-model and method. As a result our approach provides a holistic method for the design and realization of REST applications exhibiting the desired level of compliance to the constraints of the REST architectural style.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2014-23&engl=1}
}
@inproceedings {INPROC-2013-45,
   author = {Tobias Binz and Uwe Breitenb{\"u}cher and Florian Haupt and Oliver Kopp and Frank Leymann and Alexander Nowak and Sebastian Wagner},
   title = {{OpenTOSCA - A Runtime for TOSCA-based Cloud Applications}},
   booktitle = {Proceedings of 11th International Conference on Service-Oriented Computing (ICSOC'13)},
   publisher = {Springer Berlin Heidelberg},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   series = {LNCS},
   volume = {8274},
   pages = {692--695},
   type = {Demonstration},
   month = {December},
   year = {2013},
   doi = {10.1007/978-3-642-45005-1_62},
   keywords = {TOSCA; Cloud Applications; Automation; Management; Portability},
   language = {English},
   cr-category = {K.1 The Computer Industry,     K.6.4 System Management,     D.2.12 Software Engineering Interoperability},
   contact = {a href=``http://www.iaas.uni-stuttgart.de/institut/mitarbeiter/binz''Tobias Binz/ a},
   department = {University of Stuttgart, Institute of Parallel and Distributed Systems, Applications of Parallel and Distributed Systems;     University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {TOSCA is a new standard facilitating platform independent description of Cloud applications. OpenTOSCA is a runtime for TOSCA-based Cloud applications. The runtime enables fully automated plan-based deployment and management of applications defined in the OASIS TOSCA packaging format CSAR. This paper outlines the core concepts of TOSCA and provides a system overview on OpenTOSCA by describing its modular and extensible architecture, as well as presenting our prototypical implementation. We demonstrate the use of OpenTOSCA by deploying and instantiating the school management and learning application Moodle.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-45&engl=1}
}
@inproceedings {INPROC-2013-43,
   author = {Tim Waizenegger and Matthias Wieland and Tobias Binz and Uwe Breitenb{\"u}cher and Florian Haupt and Oliver Kopp and Frank Leymann and Bernhard Mitschang and Alexander Nowak and Sebastian Wagner},
   title = {{Policy4TOSCA: A Policy-Aware Cloud Service Provisioning Approach to Enable Secure Cloud Computing}},
   booktitle = {On the Move to Meaningful Internet Systems: OTM 2013 Conferences},
   editor = {Robert Meersman and Herve Panetto and Tharam Dillon and Johann Eder and Zohra Bellahsene and Norbert Ritter and Pieter De Leenheer and Dou Deijing},
   address = {Heidelberg},
   publisher = {Springer Berlin Heidelberg},
   institution = {University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Germany},
   series = {Lecture Notes in Computer Science (LNCS)},
   volume = {8185},
   pages = {360--376},
   type = {Conference Paper},
   month = {September},
   year = {2013},
   isbn = {978-3-642-41029-1},
   doi = {10.1007/978-3-642-41030-7_26},
   keywords = {Cloud Computing, TOSCA, Cloud Service, Cloud Management, Policy-Framework, Security, Green-IT, Sustainable Cloud Service},
   language = {English},
   cr-category = {D.2.7 Software Engineering Distribution, Maintenance, and Enhancement,     D.2.9 Software Engineering Management,     D.2.13 Software Engineering Reusable Software},
   contact = {tim.waizenegger@informatik.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Parallel and Distributed Systems, Applications of Parallel and Distributed Systems;     University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {With the growing adoption of Cloud Computing, automated deployment and provisioning systems for Cloud applications are becoming more prevalent. They help to reduce the onboarding costs for new customers as well as the financial impact of managing Cloud Services by automating these previously manual tasks. With the widespread use of such systems, the adoption of a common standard for describing Cloud applications will provide a crucial advantage by enabling reusable and portable applications. TOSCA, a newly published standard by OASIS with broad industry participation provides this opportunity. Besides the technical requirements of running and managing applications in the cloud, non-functional requirements, like cost, security, and environmental issues, are of special importance when moving towards the automated provisioning and management of Cloud applications. In this paper we demonstrate how non-functional requirements are defined in TOSCA using policies. We propose a mechanism for automatic processing of these formal policy definitions in a TOSCA runtime environment that we have developed based on the proposed architecture of the TOSCA primer. In order to evaluate our approach, we present prototypical implementations of security policies for encrypting databases and for limiting the geographical location of the Cloud servers. We demonstrate how our runtime environment is ensuring these policies and show how they affect the deployment of the application.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=INPROC-2013-43&engl=1}
}
@article {ART-2017-04,
   author = {Florian Haupt and Frank Leymann and Karolina Vukojevic-Haupt},
   title = {{API Governance Support through the Structural Analysis of REST APIs}},
   journal = {Computer Science – Research and Development},
   publisher = {Springer},
   type = {Article in Journal},
   month = {July},
   year = {2017},
   keywords = {REST; interface description language; analysis; API governance},
   language = {English},
   cr-category = {D.2.11 Software Engineering Software Architectures},
   contact = {florian.haupt@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2017-04&engl=1}
}
@article {ART-2016-20,
   author = {Karolina Vukojevic-Haupt and Florian Haupt and Frank Leymann},
   title = {{On-demand provisioning of workflow middleware and services into the cloud: an overview}},
   journal = {Computing},
   publisher = {Springer Wien},
   type = {Article in Journal},
   month = {October},
   year = {2016},
   doi = {10.1007/s00607-016-0521-x},
   isbn = {full-text view-only version: http://rdcu.be/lL8H},
   keywords = {on-demand provisioning; cloud; service-oriented computing; eScience; dynamic provisioning; SOC; automatic provisioning; automatic deployment},
   language = {English},
   cr-category = {C.2.4 Distributed Systems,     D.2.11 Software Engineering Software Architectures,     I.6.7 Simulation Support Systems},
   contact = {karolina.vukojevic@iaas.uni-stuttgart.de},
   department = {University of Stuttgart, Institute of Architecture of Application Systems},
   abstract = {One of the core principles in service oriented computing is that services are always on and available. There are however domains where running services all the time is not suitable, for example when applying simulations workflows in the eScience domain. The simulation services orchestrated by these workflows are typically used only rarely and irregularly, keeping them running all the time would result in a significant waste of resources. As a consequence, we developed the approach of on-demand provisioning of workflow middleware and services. In this paper we will give an overview about our work. We will present the motivation and main idea of our solution approach and will also provide details about some of the results of our work. The overview about our previous and current work is then complemented by a detailed discussion and comparison of the roles involved in both concepts, traditional service oriented computing as well as our newly developed on-demand provisioning approach.},
   url = {http://www2.informatik.uni-stuttgart.de/cgi-bin/NCSTRL/NCSTRL_view.pl?id=ART-2016-20&engl=1}
}