Aller au contenu
Filtrer les règles par style d’implémentation
Style
Tactique
Sévérité
majeure
S’applique à
  • Modèle (domain)

AGG-13 · Ne pas découper un vrai invariant ​

Style
Tactique
Sévérité
majeure
S’applique à
  • Modèle (domain)

Signal ​

  • Deux données qui doivent rester cohérentes se retrouvent dans deux aggregates.
  • Un découpage retire un état dérivé des parties (un statut calculé à partir des lignes), sans event de synchronisation ni délai validé par le métier.

Pourquoi ​

Petit ne veut pas dire minimal. La bonne taille, c’est l’aggregate root et ce qui doit rester cohérent avec lui, rien de plus. Garder les parties dans leur aggregate tant que leur regroupement n’a pas de coût avéré.

Exceptions ​

Un découpage justifié par AGG-12, avec une eventual consistency acceptée par le métier (AGG-10).

Correction ​

Garder l’invariant dans un seul aggregate. Ne découper que pour un coût mesuré ou estimé.