Common Understanding Wiki
A Common Knowledge Source of Terms and Definitions
Allocation Environment Components
The Allocation Environment allows a CloudSocket Broker to select a BPaaS Design Package (previously created via the Design Environment) and create a BPaaS Bundle ready to be published in the Marketplace and deployed in the Execution Environment. The Allocation Environment uses the selected BPaaS Design Package as the basic key part of the BPaaS Bundle (Level III process) to be created, containing the Business Process Model (Level-I process), the Executable Workflow Model (Level-II process) and additional meta-data (such as domain-specific (business-level) KPI, ontological mappings, etc.).
In fact, the Allocation Environment provides a user interface to complete the definition of the BPaaS Bundle with all the additional information required to deploy and execute it.
A BPaaS Bundle binds an Executable Workflow Model with the concrete Atomic Services and Cloud Infrastructures that will be invoked and selected by the workflow, respectively, when executed. A BPaaS Bundle also contains rules to guide the BPaaS Execution Environment in choosing the Workflow Engine instance that will execute the workflow model.
In the creation of a BPaaS Bundle, the CloudSocket Broker is responsible for defining the overall pricing and SLA for the bundle as a whole, taking into account the price and the SLA of all the resources – e.g. workflow engine, atomic services and cloud infrastructures - configured in the bundle.
The BPaaS Bundle is a data structure containing all the information required by the Execution Environment (to deploy, execute, account, monitor and assess a BPaaS) and by the Marketplace (to allow the BPaaS Customer to effectively search the bundles of interest). Such information includes:
- Business process Model
- Workflow Model
- Workflow allocation
- Atomic Service allocation
- Software Component allocation
- KPI model
- Service Level Agreement (SLA)
- Pricing model
- Business Process Metadata
The Bundle Instantiator is the UI component allowing a CloudSocket Broker to create a new BPaaS Bundle. Since a Bundle is conceptually a commercial “packaging” of an Executable Workflow Model, the creation of a draft Bundle necessarily starts with the selection of an workflow model from the BPaaS Design Environment.
Tasks performed by the Bundle Instantiator:
- Browse the workflow models from the Design Environment
- Instantiate a new BPaaS Bundle selecting one workflow model
The Bundle Designer is the main UI component of the BPaaS Allocation Environment. It provides all the functionality allowing a CloudSocket Broker to configure (fill or edit) the sections of a BPaaS Bundle and move it from the initial Draft (incomplete) state to the Consistent (ready to be published) state.
The Bundle Designer includes four main sub-components that allows to define allocation respectively for:
- Atomic Services
- Software Components
- Bundle Metadata
The Bundle Browser is the UI component allowing a Broker to explore and manage the Bundle Repository. The component shows to the Broker a list of all the Bundles he/she has created along with their status (Draft, Consistent or Published)
Tasks performed by the Bundle Browser:
- Browse the BPaaS Bundle related to the authenticated broker, stored into the Bundle Repository
- Enable the editing of the BPaaS Bundle not already marked as published
- Duplicate an existing BPaaS Bundle
Bundle Repository Manager
The Bundle Repository Manager acts as a management interface to the Bundle Repository for all the other components of the BPaaS Allocation Environment
Tasks performed by the Bundle Repository Manager:
- Provide a list of descriptors of the bundles in the Bundles Repository.
- Search for a bundle in the Bundle Repository.
- Load a bundle from the Bundle Repository into the memory.
- Save a bundle from the memory into the Bundle Repository.
- Delete a bundle from the Bundle Repository.
- Change the state of a bundle
The Bundle Manager implements all the business logic required by the Bundle Designer UI and its sub- components.
Tasks performed by the Bundle Manager: this server-side component manages in memory the Bundle currently edited by the Broker.
The Bundle Publisher is responsible for publishing the BPaaS Bundle in the Marketplace. The Bundle Manager forwards to the Bundle Publisher the Bundle currently in memory and delegates it to perform all the interactions with the Marketplace management API required to get the Bundle published.
Tasks performed by the Bundle Publisher: this server-side component is responsible to publish a Bundle into the Marketplace.
The Persistency-management Layer contains the Bundle Repository where the BPaaS Bundles are stored. The Bundle Repository is multi-tenant so that each CloudSocket Broker can browse and edit only the Bundles owned by him/her.
Allocation Environment does not expose any API.
The CloudSocket Broker access the Allocation Environment web application.
After the login phase, he\she is redirected to the main page and can access the Allocation Environment clicking the respective application available in the Applications section.
The Allocation Environment has basically two menus:
- My bundles: contains all the BPaaS Bundles related to the broker, he can access here in order to browse existing bundle or to create a new one
- My brands: contains all the brands related to the broker, the brands are used by the Marketplace Environment to identify who is the seller of the Bundle
The broker can create a new BPaaS Bundle by clicking the Create button inside the My bundles menu.
Immediately is opened a form that contains all the sections related to the new bundle. The name is the only mandatory field required to save the new BPaaS Bundle and it is unique, so is impossible to have two bundles with the same names.
The entry point of the bundle is the selection of the Design Package that can be performed by using the button Browse design packages. The browse open a new window that shows all the Design Packages registered into the Design Environment. The broker can browse them, view all the details, select the proper one and confirm the selection by clicking the Confirm selection button.
After the confirm, the model files (both Business process and Executable workflow) are imported into the new BPaaS Bundle and if there wasn't a name and description set in the bundle, this process populate them using the name and description of the Design Package.
In the Marketplace metadata section the broker can specify:
- the brand: this is shown in the marketplace as the seller of the bundle
- the description: this is the commercial description that is shown in the marketplace
- the commercial image: this is the image shown in the marketplace
- pricing: composed by fee, currency and frequency
- categorization: preselected categories are proposed following the APCQ process categorization
- tags: the broker can create new tags or select tags already registered into the environment
In the deployment section the broker can configure all the aspects related to the allocation of Software Component and Atomic Services. For now, this configuration is provided uploading a CAMEL file, in the next future the Allocation Environment will provide a component to configure all this aspects.
After configuring and saving all the required sections, the state of the bundle change from DRAFT to CONSISTENT. In the CONSISTENT state, the broker can decide to publish the bundle into the Marketplace.
After the publication of the bundle, the state change into PUBLISHED. The broker could decide to update or unpublish the bundle from the marketplace.