Monday, December 18, 2006

Classifications of BPM Suite support

What I would like to see in the next generation of BPM systems....The flexibility to choose between taylorism and anarchism :-)

Currently, a process instance will always follow a predefined process template, based on data and business rules (if... then....): the flow paradigma.Think: high volume, high standard processes. Mortgage processing.

But we can think of different other setups where expliciet procesmodels will not do, but where process orientation is still the good way to go. Some thoughts on possibilities:

A new view would be: the userdriven (knowledge) paradigma. In this approach, a process instance will follow a process template that can be (freely or selectively) manipulated by a user. I can see the selection of certain process sub-templates (oh, let's add these steps, and these, with these business rules) from a library (context aware) or total free tasks.Useful for situations where we can model processes and subprocesses, but the actual decision what templates need to apply for a certain instance it too complex to model in advance.Think: high volume, but lower standard processes. A lawsuit. Audit trail for free.

Another would be, to be able to define a template for a process in a collaborative way. An issue is born. Steps need to be taken, but not sure who what when. Not only can people define process elements, they can assign tasks to people and track progress + discussions. People can add tasks, explode tasks in subtasks, add business rules for paths in the process. A highly collaborative process environment. For instance, a sales pitch. Or a creative process, where people do want to track afterwards what happened, when, by whom.

Another would be a datadriven/event driven architecture. The ability to define a dataset (documents, data) and link incoming data to actions, that all need to take place in the context of a certain process instance. It is a concept close to the userdriven one, but now with automated startup of all types of subprocess templates, based on incoming data. A smart CRM system, that responds to customer communications (online, fax, mail, etc), and is able to relate these types of communications to each other, and take action on it.