Re: Value object with set of aggregate roots?

"[email protected] [domaindrivendesign]" <[email protected]> 07 Jul 2015 15:05:25 -0700
Newsgroups gmane.comp.programming.domain-driven-design
Message-ID <[email protected]>
The state of an aggregate is, of course, mutable. A picture (snapshot) of an aggregates state at a given point in time is immutable. It does not make sense for an aggregate to have more then one state at the exact same point in time (Maybe unless you are modeling quantums?). Therefore the snapshot as a concept could be considered immutable (even if its implementation isn't).  I try to step back and ask some other questions first. I'm probably wrong and definitively far away from beeing able to give any sound advise, but nevertheless...
 

 > We have a hexagonal architecture, where a single hexagon handles a specific type of calculation using a separate product (and therefore a separate bounded context).
 

 What is "product"? A third party product/legacy system or an aggregate? Why does each product have to be in a separate bounded context? Does the term "product" really has a considerably different meaning in those contexts? Mixing tactical and strategical patterns of DDD in a single sentence like this might be a hint that there is a more severe problem waiting.
 

 After all, for me, the most interesting question at hand is: Who or what will be responsible for composing a snapshot of the state of a bunch of aggregate roots divided by context boundaries? 
 

 Have you got your boundaries right?
 

 Thomas