On Mar 1, 9:25 pm, "@seagile" <
yves.reynh...@gmail.com> wrote:
> Is this within the same bounded context?
> Is it core to your system?
I'd say there are probably 2 separate bounded contexts, both of which
are core to the system:
1. Interaction of end-user with the system, e.g. registration, making
bookings, applying for loyalty programme
2. Tenant configuration and customisation. The level of customisation
offered to tenants is a first class feature and includes environment
configuration, content management and other enhancements.
> Can you "describe" the behavior on the RoomTypeContent (i.e. those are
> your commands)?
The commands relating to RoomTypeContent and other content-related
classes will represent changes made by the tenant administrators.
These are classic CRUD operations, e.g. CreateRoomTypeContent,
UpdateRoomTypeContent. This is the bit that's making me question
whether to go the domain events / CQRS route in the tenant
customisation bounded context. Updates could be managed via regular
ORM persistence without events / CQRS, or even using a separate CMS /
Wiki as Tom suggests..
However, I think there are still practical reasons why I might want to
use events / CQRS to manage these simpler CRUD operations (auditing,
exposure of events for cache updates, notifications etc). If the
project only involved CRUD, then domain events / CQRS might be over-
the-top, but if the infrastructure is already in place for other parts
of the system...