I have a business process that begins with the system (i.e. a daemon) processing some input (xml input). The processinstance transitions through several custom processing nodes. At a certain point in the process it must pause/fork to subprocesses that require user input (i.e. via webapp). The number of users that each must execute the subprocess varies and is determined during the initial processing of the input xml.
What I want to do is be able to create the subprocess instances from the main process so I can get a process id and store it in a db table along with my users id. Then, when the user logs in the first time I can retrieve the processid and signal it so they can begin the subprocess. When all users have completed the their respective subprocess I want to then continue the main process.
Any ideas on how I should model this? Do I need to programmatically add the fork and process-state nodes? Should I even be using process-state nodes or should I simply put the main process in a wait state and create the subprocesses, basically decoupling the subprocesses from the main process? Any input would be appreciated.