Tuesday, November 26, 2013

It's Not Just People that Collaborate in Modern Processes

There is a lot of buzz around collaboration in process (AKA BPM) activity these days. It because work activities are getting more complex and more in need of specialized knowledge. This requires processes that adapt to multiple knowledge workers collaborating on a process instance or case. To that end, additional forms of process methods and structure are emerging under names like case management, social processes, unstructured processes, adaptable and dynamic processes.

Well, the same is starting to happen with process engines. Ideally all work could be on one engine and that engine would support all forms of process behavior. Realistically, organizations have multiple engines and styles available working in parallel. To this end there are new patterns of process engine, acting as agents, in cooperation today. As process mix best practice process snippets (portions of process) with evolving better practice patterns, process engines will have to learn to cooperate like and with people. In fact people and bots may become interchangeable. See http://jimsinur.blogspot.com/2013/09/agents-have-power-of-intelligent-and.html There are three styles I have seen to date:

Homogeneous Distributed Engines:

There are a few process engines that can support multiple process styles on top of multiple and collaborating process engines. Metasonic, with it's Subject Oriented BPM (S-BPM) method and distributed process engines, has the goods today.

Heterogeneous Distributed Engines:

There few vendors that support heterogeneous engines that they have bought at separate times and are trying to allow cooperation between these engines inside the family. They usually do this by having a common user experience and the ability to wrap and call these various engines or reusable features in and around their engines. IBM and OpenText come to mind. There are a few vendors who are engine independent who really do not require one of their process engines at all, but they tend to be for light workflows for now.

Intelligent Bidding Agents:

Agents do not necessarily need a process engine as they can act independently and fire off a request for another agent to perform an action. Precedence is negotiated as needed and dynamic by nature. An example of a goal directed vendor who leverages agents is WhiteStein (Living Systems in the US).  See http://jimsinur.blogspot.com/2013/10/agents-can-efectively-bid-for-process.html

Net; Net:

The days are numbered for architectures that dictate and enforce one process engine that all processes run on in the future. First of all, there are few engines that can support all the process styles necessary outside of the intelligent process engines. Secondly, most organizations are combining existing processes, applications and services that have their own engine. I think the more common model will be heterogeneous engines evolving to intelligent and independent agents held together by methods and emerging dynamic design techniques.