In the first part of this blog series, I covered the four-eyes principle in a nutshell, and Business Process Modelling and Notation (BPMN) models represent that principle. In this second blog, I will go into the features of the Business Process Server (BPS) profile that enables it to execute the BPMN models, the code behind the models and WSO2 Enterprise Integrator (WSO2 EI) tooling.
WSO2 EI BPS profile
As the documentation states, the BPS is capable of the following:
- Executing business workflows compliant with BPMN, Web Services Business Process Execution Language (WS-BPEL) and Web Services Human Task (WS-HumanTask) specifications;
- Facilitating workflows with heterogeneous enterprise services and human interactions;
- Modeling, deploying, managing and monitoring workflows.
Activiti powers the BPS for BMPN execution and Apache ODE does that for BPEL execution. The BPS capabilities are Incorporated as a profile into the WSO2 Enterprise Integrator.
WSO2 EI tooling
WSO2 EI tooling documentation states that it provides user-friendly, configuration-driven capabilities. Eclipse’s integrated development environment is the inspiration for the WSO2 EI tooling. It is a simple graphical editor ideal for developing and managing services, features and artifacts. Figure 1 depicts the user interface of WSO2 EI Tooling.
Figure 1: WSO2 EI Tooling Dashboard
Review process code
Below is an image of the source code of the four-eyes principle as presented in the first part of this blog series. As stated in that blog post, Activiti engine executes BPMN models in the BPS profile. This role of Activiti is evident in figure 2, by the namespace declaration and the prefix activiti for the start event extension elements.
Figure 2: Four-eyes principle
Figure 3: First review process
Figure 4: Exception handling process
In this post, the re-use of existing WSO2 knowledge, as suggested in the first part of this blog series, becomes clear. The XML know-how of a technical team is still relevant and therefore the learning curve is minimized.