Can a BPMN process begin with a start event, followed directly by a parallel gateway? This particular process can begin from a few different points, in no particular order, but all tasks must be complete in order for the process to continue. I was simply going to do as follows:
start event -> parallel gateway (three sequence flows) -> tasks in each sequence flow -> sequence flows merging to parallel gateway -> one sequence flow...
Amazingly I've never had to do this and I can't find an example to verify that it's legal (although looking at the Spec it appears to be). Could someone please help?
Thanks, vinny
Vinny,
I would be interested to know what the 3 starting tasks are...but I can see no reason why what you have proposed couldn't work: the logic that defines when the process has enough information to proceed will be defined within the process specification anyway...
An alternative would be to declare your startign event as the fact that all 3 starting tasks have concluded. Would make the diagram simpler but have no other advantages I can see...
Guy
Thanks for the response, Guy.
The entire process deals with preparing an Excel report. One initial path involves requesting data from a programmer. The programmer then prepares the information and delivers it. Another initial path involves getting data from a Website and pasting it into a worksheet. (I'll leave it at two processes for simplicity's sake.) When both of these processes are complete (in no particular order) the rest of the process can proceed (the rest is doing stuff in Excel using the data collected from the previous two subprocesses). I do need to show how the source data is derived.
Still okay to use the parallel gateway, you think?
Thanks again,
vinny
From a practical viewpoint what you are proposing is absolutely fine and would work in that it communicates what starts the process off.
You say you need to show how the source data is derived - why do you need to show that? If the programmer and website preparation of data are out of scope of your project then you don't need to show it and if they are in scope they will be on a another process model and so already shown (you could have them going in to a parallel gateway that in turn goes in to a link trigger that you use to start your process...) and they could be connected by an intermediate event.
Anyway - fairly accademic point: at this stage I cannot see anything wrong with your proposal providing you do document the logic of when your process starts in your process that gets triggered spec.
brought to you by enabling practitioners & organizations to achieve their goals using: