Opendata, web and dolomites

Report

Teaser, summary, work performed and final results

Periodic Reporting for period 1 - DECIDE (DEvOps for trusted, portable and interoperable Multi-Cloud applications towards the Digital singlE market)

Teaser

The digital transformation from product to service economy means changes in the companies’ operating environment: they need to transform into service providers from product providers and be able to flexibly change their role in the value chain and markets. The main objective...

Summary

The digital transformation from product to service economy means changes in the companies’ operating environment: they need to transform into service providers from product providers and be able to flexibly change their role in the value chain and markets. The main objective of the DECIDE project is to ease the servitization of the software industry by providing a new generation of framework for multi-cloud service-based software, enabling techniques and mechanisms to design, develop, and dynamically deploy multi-cloud aware applications in an ecosystem of reliable, interoperable, and legally secured cloud services. For DECIDE, a multi-cloud native application is a distributed application over heterogeneous cloud resources whose components are deployed on different Cloud Service Providers (CSPs) and still, they all work in an integrated way and transparently for the end-user. There are several reasons for deploying an application in a multi-cloud architecture, the most important ones being: non-compliance of the CSPs to the agreed SLAs, avoidance of vendor lock-in, increasing reliability or improving other QoS concerns such as increasing performance or security, and finally, reducing costs. The application types that would benefit the most from such a multi-cloud approach are on the one hand, those that are critical to the business and that need to respond efficiently to the user’s needs in terms of performance, reliability and security and on the other hand, complex applications whose components need to be distributed over different CSPs due to their specific needs and requirements.

Developing, deploying and operating multi-cloud applications present the following challenges:
- Applications need to be responsive to hybrid/multi-cloud model scenario, in which an application that is executing in a private cloud bursts into a public cloud when the demand for computing capacity spikes.
- Means shall be provided to manage and assess cloud deployment alternatives to better support cloud re-deployment decisions.
- Existing cloud services shall be made available dynamically, broadly and cross border, so that software providers can re-use and combine cloud services, assembling a dynamic and re-configurable network of interoperable, legally secured, quality assessed (against SLAs) single and composite cloud services, facilitating the free flow of data.

The main goal of DECIDE is to provide a new generation of multi-cloud services-based software framework, enabling techniques, tools and mechanisms to design, develop, operate, and dynamically (re-)deploy multi-cloud aware applications in an ecosystem of reliable, interoperable, and legal compliant cloud services. DECIDE will provide architectural patterns and the needed supporting tools for developers and operators of multi-cloud application providers to develop and operate (following the DevOps approach), multi-cloud native applications that can be dynamically self-adapted and re-deployed using the “best” combination of cloud services in each moment (depending on the existing multi-cloud context considering both the multi-cloud application behaviour as well as the behaviour of the underlying used cloud offerings). Moreover, DECIDE will enhance the trustworthiness of multi-cloud application providers towards buyers and users of the SaaS applications by setting up an ecosystem of trusted, interoperable and legally compliant cloud services and the required mechanisms to register, discover, compose, use and assess them.

DECIDE will be validated in three use cases with strict non-functional requirements (NFR): clinical research platforms, network management and high availability.

Work performed

Main achievements for this period can be summarized as follows:
- First version of the functional requirements of all Key Results (DevOps framework, ARCHITECT, OPTIMUS, ADAPT, ACSmI), the overall architecture and of the DECIDE workflow, that is, how all DECIDE components work together. Sub-workflows, exceptions to the main workflow and additional entry points have also been identified.
- First working version of all individual components (ARCHITECT, OPTIMUS, ADAPT and ACSmI) covering the whole lifecycle of an application, from development to operation. ARCHITECT has developed a catalogue of patterns, a pattern compendium, and a recommendation engine. OPTIMUS allows for a classification of the application components and a simulation to obtain the most appropriate deployment topology taking as input the cloud offerings discovered by ACSmI and compliant with the requirements established by the developer. ACSmI also covers the contracting functionality and an initial version of the monitoring of the compliance of the SLAs in terms of availability. The current version of ADAPT allows for an automatic deployment and monitors the conditions of the application and the underlying components, especially regarding performance and availability. In addition to the core components, additional ones have been defined and implemented, namely the Application Controller and the Application Description that stores the characteristics of the application, and serves as unique interoperability point, the MCSLA editor, which composes the multi-cloud SLA taking into consideration the contracted cloud offerings, and the NFR editor that allows the developer in the definition of the non-functional requirements that (s)he wants to pay special consideration to.
- First integrated version of the DevOps framework. This first version follows a micro-service based architecture and is the entry point of DECIDE. It allows the creation of a DECIDE project and is the trigger of the application description, which is updated in the following phases of the DECIDE lifecycle.
- Definition of the use cases, accompanied by a set of functional requirements and user stories, which are also prioritized and traced also to the DECIDE framework requirements.
- Continuous market watch on competitors, value proposition of DECIDE as a whole, of the individual components and of a set of components that can be exploited jointly, accompanied by an analysis of the potential joint exploitation strategy and the individual business models that the DECIDE partners envision for their offerings. Furthermore, an initial IPR and the accompanying licenses have been defined.

Final results

The main innovations of DECIDE for this period can be summarized as follows:
- First version of the ‘Extended DevOps’ concept, that includes not only the continuous integration, continuous quality and continuous delivery approaches but also continuous architecting, pre-deployment and continuous adaption, supported by an ecosystem of cloud offerings, that allows for the selection of the most appropriate configuration of cloud services.
- Compendium of architectural patterns for multi-cloud aware applications and the supporting tool that recommends a set of patterns that fulfill certain requirements entered by the developer.
- Classification of the components of the application and of cloud offerings that allow for the simulation and selection of the most adequate deployment topology for that specific application and the underlying non-functional requirements.
- Automatic contracting and deployment on the set of selected cloud offerings, supported by the monitoring of the NFRs established for the components of the application and the underlying cloud offerings, launching a violation whenever a threshold is not met.

Website & more info

More info: http://www.decide-h2020.eu.