In CloudPortal™ Business Manager, user can perform certain actions to achieve a desired business purpose. These actions can be considered as business transactions that help in achieving this business purpose. A workflow is a multi-stage process that consists of multiple phases. Every phase consists of a set of activities, (smallest unit of work in a workflow) that should be completed successfully in order to complete the phase. All phases should be completed to complete a business transaction.
A business transaction contains certain details. CloudPortal Business Manager checks these details and decides which workflow is suitable to complete the business transaction. A workflow is considered successful only if it satisfies the rule that all the activities in the configured buckets are successful. When the workflow is complete, the business transaction would also be completed successfully.
All the phases are executed in a sequential order. A phase consists of activities that are customer driven, service provider driven, and system driven.
The activities in a given phase occurs in parallel. System-driven activities occur automatically. However, others require manual input for the workflow to complete. Activities have built-in capabilities to retry. You can configure the number of times an activity can retry. The activity is run for a specified number of times and gets completed only if the conditions are satisfied.
A task is created by an activity when it requires some human intervention. Each task has a role associated to it and any user with that role can act on the task if it still pending. Following are the instances in which a task is created:
- InternalApprovalActivity- Creates a task for the users with role mentioned in the property to approve or reject the business transaction.
- CollectPaymentInfoActivity - Creates a task for user having the ROLE_ACCOUNT_BILLING_ADMIN role requesting for credit card information.
- TenantOwnerApprovalActivity - Creates a task for users having the ROLE_ACCOUNT_ADMIn role to approve or reject the business transaction.
In the out-of-the-box configuration, there are pre-defined workflows. In general, activities can be customized. It is also possible to create custom activity types.
Consider an example of changing the state of an account from new to active. If this state conversion has a mandatory approval activity to be performed by a administrator, CloudPortal Business Manager generates a task for the person responsible to approve and sends a mail requesting them to approve. The related activity ensures that the task is completed by indicating that there are pending tasks for the administrator. Once the administrator checks the pending tasks and approves or rejects based on the business transaction details, the workflow proceeds to the next phase or gets completed if it reaches the last phase.
As shown in the figure below, let us consider a business transaction is raised to change the tenant state from New to Active. CloudPortal Business Manager will check for the suitable workflow which is mapped in transactionWorkflowmap.xml
. This file defines the requirement to match the workflow with the business transaction and the suitable workflow is triggered. You can find the details of the workflow defined in workflows.xml
file. In the workflow, there will be various activities running in parallel in various phases (represented as 1, 2, 3 and 4 in the figure).
Figure 1. Example of a workflow for Tenant State change from NEW to ACTIVE