We're planning to develop a lightweight CRM (customers, orders, resources etc) application in WPF with Prism.v4. We already built a outlookbar-like usercontrol and use the microsoft ribbons. There exist additional regions, but these are the essential ones for this scenario.
Furthermore there exists an infrastructure dll with all the models, repositories, interfaces etc etc.
After some brainstorming we came up with the following fact:
The customermodule needs nothing to know about the ordersmodule (the ordersmodule knows the customer models). But we want the usercomfort to load all orders which belong to a specific customer. So in customer-detail-mode (customer ribbontab and customer outlookbar items are injected) we want a ribbonbutton to navigate from "customer detail" to "this customers orders".
The question is: how to achieve this without breaking the loose coupling?
Our approach: giving the customer-ribbontab a region for other modules interaction with customers. Because the ordermodule defenitively knows about the customer (based on the 1:n relation from our datamodel).
Thank you in advance