We have a project where we want to link 2 enterprise systems together using JMS.
In a nutshell, system 1 sends a message to the queue.
Systems2 picks up that message, does a whole load of processing in the background for about 30mintues and then sends a message back to the queue for System1 to pick up.

Can we get away with 1 queue or do we need 2?
If we have 2 queues then, System1 writes to queue1, System2 picks up.
When system2 is ready, it writes to queue2 and System1 picks it up.

Which approach would be the best?
If anyone knows of any limitations to these approaches, or any better solutions, then please do share

Thanks
Damien