Motivated by the complexity and difficulty of engineering time-critical cloud applications, we investigated the methodology and software workbench to provide full application life cycle support to the software engineer. For this purpose we present a novel high-level concept that is concentrated on exchanging the complex, dynamic data using OASIS TOSCA standard, mainly used in static contexts. This methodology enables specifying an application logic, provisioning, deploying, monitoring, and dynamical adaptation to changing conditions. It can be applied effectively to the interchange of dynamically changing data in order to maintain Quality of Service. By extending TOSCA with dynamic mapping of Qualify of Service and runtime attributes related to the application and underlying architecture we show that TOSCA can be used to exchange data and reconfigure on-demand compute resources whilst the application is in the process of design, infrastructure provisioning, runtime or adaptation. To demonstrate that our novel research contributions can be realised, we implemented SWITCH IDE, which showcases this concept through its development workflow which offers application and underlying infrastructure description, manipulation and reconfiguration of QoS and runtime attributes. Our approach differs in that it supports the concept of dynamic TOSCA by directly enabling application runtime to be reconfigured on the fly.
Read full abstract