I found this sample code.
https://code.google.com/p/ddd-cqrs-sample/
It seems very complete and well organized. Not a wireframe, just a sample project with very detailed and explicit ways to do something. BUT incomplete. And this raises some doubts.
They answer questions well. Check your google group at https://groups.google.com/forum/#!forum/ddd-cqrs-sample
OK The fact is that they have a client in SALES BC and a client / leader in CRM BC. I think we all agree, pointing to the same "person." Let me say that in the sales sequence a person begins as a Lead, then becomes a Client, buying something that makes him a Client.
My question is: why do they have three divisions of the representation of the same "person"? Doesn't that look like a “cumulative aggregate core”? I do not know if such a thing exists. It bothers me a bit to have three tables in the Client / Customer / Leads database for the same “thing”. The plus in this example is not clear (CRM is not implemented) how you communicate between BC. I read their documentation, but I could not find any valuable information about this.
How will this process be? Let me say that you need to add this Lead / Customer / Client address to send the order. Which one would you choose? I assume that ShippingAddress is in Shipping BC? With an identifier indicating? Customer? Customer? Should I add the address directly to the client? For example, for direct mail, since it has nothing to do with delivery?
source share