Como modelar agregados no DDD sem over-engineering
No Domain-Driven Design, o agregado é uma unidade de consistência transacional. Isso significa que todas as operações que modificam o estado interno de um agregado devem ser atômicas — ou tudo é salvo, ou nada é salvo. A fronteira do agregado define exatamente quais objetos compartilham essa garantia.