I am well aware of the difference between pools and lanes. However, I couldn’t find an advantage of using pools in BPMN other than following BPMN principals. Let me explain:
From the process engine perspective, when using pools it will create two separate process. What is the advantage of creating two different process if they are highly coupled meaning the two instance (if we have two pools) will depend only on each other
For example, in this BPMN if an instance of the hotel process was terminating (error for example/ or manual shutdown) before sending the message flow the instance of the above process must also be terminated because it will never receive a message form the instance that was created.
I don’t see the advantage of using pools instead of lanes other than BPMN conventions.
Please correct me if I am wrong. thank you very much.
You use different pools for collaboration. That means that just if you use pools you can express message flows. If you use one pool with lanes the pool would orchestrate the tasks. That means that inside a pool you can’t send a message that you will recipe later in the same pool.
For a technical workflow that works well but as soon as you think about the human workflow it is not working.
More than that in a technical workflow that will be executed you are going to define the roles for the human task inside the properties panel. Lanes would not be executed and are just there for documentation. So sometimes it could be useful to have them but depending on how many different roles you are including in your technical workflow it can be confusing too and make the model hard to read.
I attached an example for your case. I am assuming that you have one system (expand pool) that interacts with two human workflows (hotel employee and customer, both are collapsed). So if it is one system that orchestrate the workflow it would make sense to model it into one pool and then maybe use the lanes for documentation.
So it always depends on the use case, how you should design your BPMN Model. I hope this answers helps.