vendredi 3 avril 2015

BPMN Modeling Pattern to create another task without leaving the first

I am modeling a BPMN workflow using Oracle JDeveloper 11.0.6 which has to satisfy following requirements



  • "Process owner" issues a task to have customer's background check. at the same time he/she will progress to "pending for check result". I designed this using parallel gateway to split flow to "pending for check result" and "make background check"

  • "Administrative officer" will have a manaul process (not in the model) to perform background check in "make background check" human task. When he/shee issue a task, work flow will progress to "enter check result" human task. When the background check is completed he/she will fill data in a form to end "enter check result" task. This branch will then proceed to closing parallel gateway

  • In "pending for check result" human task, "process owner" will keep looking whether result is entered by "administrative officer" yet. However, he/she may start another process called "request additional documents" which will not make human task "pending for check result" changes its state.

  • When "process owner" sees that information entered by "administrative officer" is complete, he/she will click end task button to tell workflow that this task is completed. The flow will move on to another approval tasks before the process is ended.


My users has strict requirements that the "pending for check result" task must not be completed until chcek result is completed ("process owner" will click a button to confirm this). Calling "request additional document" must not change the state of "pending for check result" either.


Currently, I plan to add a button in ADF form to call a web service. This service will call "request additional documents" process without changing anything in current tasks ("pending for check result"). The problem is that this solution cannot be seen by people looking only at the workflow. They have to track down the code to understand entire flow (or reading my description).


My question is: Can we have a human task creating another human task or calling another process in BPMN without making the caller task changing its state? If it is possible, how to do it?


Aucun commentaire:

Enregistrer un commentaire