Aller au contenu
Filtrer les règles par style d’implémentation
Style
Les deux styles
Sévérité
majeureMajeure si le code contredit la relation déclarée. Question pour une intégration absente de la context map.
S’applique à
  • Structure et décisions
  • Adapters driven

MAP-01 · Le code met en œuvre la relation déclarée dans la context map ​

Style
Les deux styles
Sévérité
majeureMajeure si le code contredit la relation déclarée. Question pour une intégration absente de la context map.
S’applique à
  • Structure et décisions
  • Adapters driven

Signal ​

  • Le diff ajoute une dépendance vers un autre bounded context (client HTTP, consumer de messages, import) que la context map ne liste pas.
  • Le code contredit la relation déclarée. Par exemple, la context map annonce une anticorruption layer, mais le code utilise telles quelles les représentations du bounded context upstream : en pratique, la relation est conformist.
  • Le code s’appuie sur une évolution d’API que le bounded context upstream n’a jamais promise.

Pourquoi ​

Une relation mal identifiée est un piège. On se croit dans une relation customer-supplier, avec un fournisseur qui livrera de nouvelles API. On découvre tard que l’on est conformist, et le projet dérape ou échoue. La context map existe pour forcer cette réflexion tôt.

Exceptions ​

Une relation conformist choisie et déclarée.

Correction ​

Mettre à jour la context map dans la même merge request, avec le pattern de chaque côté.

Si l’intégration apporte peu, se demander si les deux bounded contexts ne devraient pas suivre chacun leur chemin (separate ways). Une intégration a toujours un coût.