Hi,
I'm currently evaluating workflow engines for a new project. I'm impressed with the work that's gone into Activiti but I have one requirement that has come in that I’m not sure it is actually possible with Activiti. The idea is that for some sections of our system, we need the workflow to be less rigid. What I mean by this is that we want to give some users the ability to arbitrary change the workflow of a currently inflight process.
For example, say I have deployed a Process Definition which users are allowed to use in our system. After a while we then have multiple inflight Process Instances using this Definition. For one of these Process Instances, a user should be able to, on the fly, remove an upcoming Task. We want to be able to do this without affecting the overall Process Definition and without affecting other inflight Process Instances using the same Definition. The ability to arbitrarily add tasks to an inflight Process Instance would also be useful.
I’ve had a look through the forums and other sources and haven’t been able to find a solution to this. Adding these tasks into the initial BPMN definitions from which the Process Definitions are created is unfortunately not an option. We need this to be very customisable and changeable on the fly and not have an overly complex workflow definition.
Does anybody know if this sort of thing is actually possible in Activiti? If not is this something that is on the roadmap or this is something that is likely to never be possible in Activiti?
Any help would be greatly appreciated.
Cheers,
James