Divide and Conquer Mediation Route use cases
Do not try and model all use cases as single and highly complex Routes. Break a use case down into smaller bite size chunks that you can possibly use throughout several use cases.
While this might take a little more time to design it will reduce the build time and improve the scalability and reusability.
Remember, Routes in the same virtual machine can pass messages via endpoints (vm or direct-vm). If the Routes needing to communicate are not in the same virtual machine you can use message queues as a way of communicating.