Command granularity

Coordinator
Nov 24, 2011 at 6:51 PM

With the requirements currently outlined for the Sponsorship application, is it better to have aggregate-level change commands and events (such as SponsorChanged (Id, NewName, NewEmail, NewAddress, NewTelephoneNumber)), or would we profit from finer-grained comands (SponsorEMailChanged, SponsorNameChanged, SponsorAddressChanged, SponsorTelephoneNumberChanged commands)?

I know that in principle, finer-grained commands can have benefits, but I think it's unlikely that the application will ever need to differentiate. And we don't really have good groupings, so we'd need one command per domain object property, which I think might become combersome. Therefore, I'd tend to think it's more practical to use coarse-grained change commands for this application (less code to maintain, faster to write, probably good enough), but I'd like to hear your opinions. What do you think?

SponsorChanged or SponsorName/EMail/Address/TelephoneNumberChanged?

Coordinator
Nov 24, 2011 at 7:14 PM

I think you cannot tell yet because we have to recheck the specs with Martin.