The role of BPMN in a Service Oriented Architecture

Often BPMN models are made to document existing processes in a company. Which is a first step, because the transparency serves a purpose. The purpose is to improve the process. Only to know a process and to monitor a process is valuable as a first step, but in the end improvements need to be made.

One improvement may be to automate certain parts of the process or to integrate them better. This can be done in various ways. One way is to develop new software, that does fulfill the specification given in the process models. Another way is to change existing software – especially the exchange of information between it. A third possibility could be to execute BPMN processes as workflows, if they represent workflow relevant parts and after a BPMN execution environment has been established.

But the most visionary possibility is that the BPMN processes are used as web service composition. Either by encasulating the existing or new developed software by web services, or by inclusion of pubic webservices – which can be done in simple cases. However a critical success factor in this approach is
1) the reusability of the web services and
2) the integration of the processes over the web services.

If the integration of processes over the web services is left to BPMN alone, then this can be only applied to simple cases. Standard Business Processes need to be integrated on their own, and the BPMN serves as a layer for automation, i.e. for triggering the next step that would otherwise wait for completion too long. Also it can be used for event correlation and as a result the trigger of a next step.

This approach works good, if the underlying Business Process Implementation follows certain criteria. This is already mentioned 1) and 2) and furthermore
3) the Business Process Implementation itself is modeled and thereby transparent and
4) It is flexible – i.e. Extensible.

If a Business Process Implementation fulfils 1) through 4) i want to call it a “Business Process Platform”.

So in a Business Process Platform BPMN can serve as the means to document the implemented Business Processes for the Purpose of Transparency and an index for Extension Points.

So in essence the Business Process Platform provides the Web Services, which are documented by BPMN. As we said these need to be consumed. If we have an execution environment, that is able to execute BPMN processes for the consumption of these web services, then I would call it a “BPMN Composite Environment”. If we have a Toolset, that allows the integrated model driven development of Composition Content and Platform Extensions, I would call it a Composite Integrated Development Environment. or Composite IDE.

So BPMN can play the role of glue in such a scenario. However also other model types are needed – most obviously WSDL.

This entry was posted in BPMN, Business Process Platform and tagged , , , , , . Bookmark the permalink.

Leave a Reply