Pular para conteúdo
  • Marcelo Areco reviewers: [] created: 2026-07-02 updated: 2026-07-02 tags:
  • ddd
  • context-map
  • architecture

Context Map

Objetivo

O Context Map descreve como os Bounded Contexts da CoreFlow Platform se relacionam entre si.

Seu objetivo é definir dependências, contratos, fluxos de comunicação e responsabilidades, preservando o baixo acoplamento entre domínios.


Visão Geral

flowchart LR

Core((Core))

CRM
ERP
Finance
RH
WMS
BI
Service
AI

Core --> CRM
Core --> ERP
Core --> Finance
Core --> RH
Core --> WMS
Core --> BI
Core --> Service
Core --> AI

CRM --> Finance
CRM --> AI
CRM --> Notifications

ERP --> Finance
ERP --> WMS
ERP --> Notifications

RH --> Notifications

Finance --> BI

Service --> CRM

AI --> Core

Core

Fornece serviços compartilhados para toda a plataforma.

Não depende de nenhum produto.

Responsável por:

  • Authentication
  • Users
  • Companies
  • RBAC
  • Audit
  • Notifications
  • Files
  • Integrations
  • AI Gateway

CRM

Consome:

  • Authentication
  • Users
  • Companies
  • RBAC
  • Files
  • Notifications

Expõe:

  • Leads
  • Contacts
  • Accounts
  • Opportunities
  • Activities

ERP

Consome:

  • Core
  • Finance
  • Notifications

Expõe:

  • Products
  • Inventory
  • Purchases
  • Sales
  • Fiscal

Finance

Consome:

  • Core

Recebe eventos de:

  • CRM
  • ERP
  • RH

Produz indicadores para:

  • BI

RH

Consome:

  • Core

Publica:

  • Eventos de Funcionários
  • Eventos de Folha
  • Eventos de Benefícios

WMS

Consome:

  • ERP

Publica:

  • Movimentações
  • Inventário
  • Expedição

BI

Não altera dados.

Consome informações de todos os contextos para geração de indicadores.


Service

Relaciona-se principalmente com:

  • CRM
  • Users
  • Notifications

AI

Consome contexto de todos os módulos.

Nunca acessa diretamente tabelas de outro contexto.

Toda comunicação ocorre através de:

  • APIs
  • Serviços
  • Eventos
  • RAG

Tipos de Relacionamento

Relação Descrição
Shared Kernel Compartilhamento controlado
Customer/Supplier Dependência entre contextos
Conformist Consome contrato existente
ACL Anti-Corruption Layer
Open Host Service APIs públicas
Published Language Eventos e contratos

Comunicação

São permitidos:

  • REST
  • Eventos
  • Filas
  • Webhooks

É proibido:

  • JOIN entre bancos de contextos diferentes
  • Acesso direto a tabelas externas
  • Compartilhamento de entidades

Eventos

Exemplos:

CRM

  • LeadCreated
  • OpportunityWon

ERP

  • ProductCreated
  • StockUpdated

Finance

  • InvoiceIssued
  • PaymentReceived

RH

  • EmployeeHired

Princípios

Cada contexto:

  • possui autonomia;
  • possui ciclo de vida próprio;
  • possui banco lógico próprio;
  • evolui independentemente;
  • publica contratos estáveis.

Objetivo Final

Garantir uma arquitetura baseada em Domain-Driven Design onde os domínios da CoreFlow Platform permaneçam desacoplados, evoluam de forma independente e comuniquem-se apenas por contratos bem definidos.