"Digitalize your Business"

Browse the innovation items of the project


2.1 PaaS/SaaS support of CAMEL


2.1 PaaS/SaaS support of CAMEL

Research Problem

With the proper definition of the business processes and respective workflows, in the Design, Environment,the Allocation and Execution Environments enable the deployment and adaptive provisioning of workflows in the cloud. Therefore, tThe Allocation Environment, in particular,  enables the mapping of abstract workflows to deployable and executable solutions, namely BPaaS Bundles, by receiving sematically enriched models from the Design Environment, which are translated into a technical allocation description. The identified research challenges are introduced by the means of the business process “Sending Christams Greeting Cards”, which was introduced in D5.1. This business process requires three different kinds of services, an email service, a CRM service and a card designer service, which need to be mapped to respective allocation decisions constituting an executable business process solution that is deployable in the cloud.
Such allocation decisions need to be modelled before being passed for execution to the BPaaS Execution Environment. In this respect, By by considering the current cloud modelling languages, we can see that most of them focus only on one level: either (a) the infrastructure / IaaS level and or (b) the platform / PaaS level. For instance, if we consider the CAMEL language being used in the CloudSocket project, CAMEL this language was able to cover the IaaS level only. As such, the main research goal is to be able to extend CAMEL in order to support the two levels above the IaaS one, i.e., the levels of PaaS & SaaS.


The solution that we have adopted was to appropriately extend CAMEL in order to cover the PaaS and SaaS levels. The respective meta-model extensions over the PaaS level are visualised in the following figure. These extensions were performed by maintaining the current modelling style and pattern in CAMEL, especially in terms of the coverage of the type and instance levels. The extensions mainly focused on the modelling of Both both PaaS and SaaS services are considered as external components, like VMs, with respect to the core user application, like VMs. To this end, corresponding concepts were introduced to cover these notions. In addition, SaaS services are were mapped to the corresponding workflow tasks for which theythat realise their functionality. Moreover, the notion of an internal service component, as a special kind of internal (application) component was introduced to also cover the modelling of internal SaaS components. For this notion, the mapping to respective workflow realised tasks as in the case of (external) SaaS was also introduced.

At the instance level, the same hierarchy as in the type level is was introduced mapping PaaSInstances and SaaSInstances to ExternalComponentInstances. For SaaSInstances, the actual location is specified, in case that a external SaaS is offered in different locations. On the other hand, In the case of a PaaSInstances , there is a correspondingare association were associated to the suitable feature of the model of the respective cloud provider corresponding's provider model (i.e.,such that such an association can be regarded as a mapping to the actual PSaaS offering supplied by a certain cloud provider).
Different kinds of configuration are now enabled by this CAMEL extension:

(a) script-based configuration via OS-specific commands;
(b) PaaS-based configurations.

In this way, one can specify multiple configurations per application component and switch from one to another one, if the respective need arises. For instance, if the component is migrated from a IaaS service to a PaaS, then we could also switch from a script-based to a PaaS-based configuration for that component.
Apart from covering the allocation decisions, CAMEL was also extended in order to enable the posing of PaaS related requirements. Such requirements span particular aspects of the PaaS service, such as the programming environments that are supported and the middleware services that are offered. Component requirements in terms mainly of external components, like containers, and their corresponding version are posed at the deployment model level. Such requiremens can then be exploited for filtering the possible PaaS solution space.
The monitoring of PaaS services / components was also enabled by providing additional extensions to the execution and metric meta-models. At the execution meta-model, a PaaS measurement concept was introduced, while at the metric meta-model a binding of metrics to PaaS components was covered.
More detailed specification and analysis of the PaaS/SaaS CAMEL extension can be found in the download section of this page at the respective deliverables.



CloudSocket Deliverable 3.3
CloudSocket Deliverable 3.4
CAMEL Domain Specific Language (DSL)



Additional Information

Originator: Kyriakos Kritikos (FORTH)
Technology Readiness Level: 5
Related CloudSocket Environment: Allocation