When to use send/receive tasks, message events or a message event attached to a task?
I´m trying to model a process where the participants have to get authorizations from their superiors. I dont really get when I should use a message task, message event or even a message event attached to a task.
My process is about a budget control where a manager checks his expenditures monthly and if he has to change anything in it, he'd have to ask for his superior permission, who also asks for his superior permission, in an hierarchy.
Thats how the process would look like:
The process starts with a subprocess where an employee updates monthly the budget x expenditures worksheet.
Then the Manager analyzes the monthly budget/expenditure control sheet -> If there is any expenditures wrong -> Manager requests authorization from Executive Manager -> Executive Manager receives authorization request -> Exec. Manager analyzes request -> If Exec. Manager accepts request -> Exec. Manager requests authorization from Director -> Director receives authorization request -> Director analyzes request -> Director returns analyzes/authorization to Exec. Manager, who returns the authorizaton to the requester.
So my doubts would be:
1- When to use send/receive tasks or events in THIS case, and whats the real difference between them?
2- Are the receiving tasks/events really necessary? Or could I go from Manager sends authorization request, flowing to Exec manager analyzes request, since its in the same process and its explicit that if the Manager sends a request and the next task is to the Exec Manager analyze it, he has receiven it? Is it wrong if I dont have a task/event to receive the request?
3 - Theres also another gateway in the process there a didnt detail above, where the actor can ask the requester for more information after analyzing the request and before approving it. If Id consider the authorization request/approval as a subprocess, how could I map it to ask for more information before ending the subprocess? What i mean is how can I exchange messages between subprocesses and their main process before I end my subprocess?
I´m a new BPMN/Bizagi user and i dont know much yet about choreography diagrams, but would it be also interesting to map this authorization sub/process?
My process is in portuguese and isnt finished yet because im stuck with these doubts but im gonna attach it to my post, so you guys can check it and try to understand it better if my explanation isnt clear enough.