新手求教:DDD一些问题


有这样一个场景:

一个campaign 下面 有多个 activity ,一个activity 又对应多个prize ,一个prize只会属于一个pool(奖池控制),那这样一来 campaign 自然就成为一个聚合根了。

继续分析,用户来了,他会来参与这个互动,由于用户会有级别、用户与用户之间的关系等等,所以Account 成为一个实体,并且成为其领域内的聚合根。

那这样一个场景:一个用户参与了某个大型活动(里面有很多玩法),最后获得了奖励。

在这样的场景下,自然就创建了一个service,负责从campaign里拿到活动信息,然后去Acount中拿到用户信息,然后运行业务规则(比如:奖励次数是否超限等) ,最后发给奖励。

我的问题:
1、奖励规则的判断写在哪里?因为他跨越了2个实体,放在service中实现是否可靠?
2、如果写在service里,那如果 要实现奖励规则可配置,那怎么办?

不要把用户看得太重,不要考虑用户的参与。

orm / database 思想不要放到ddd中。

[该贴被brighthas于2014-01-18 07:38修改过]
[该贴被brighthas于2014-01-18 07:40修改过]