Modelagem de domínio
Fluxo
- Identificar atores, objetivos, comandos, fatos e regras.
- Coletar termos reais e expor sinônimos e colisões.
- Construir cenários felizes, limites, falhas e tempo.
- Formular invariantes e owner de cada decisão.
- Agrupar comportamento por consistência e mudança conjunta.
- Testar boundaries contra casos que os atravessam.
- Atualizar glossário, contexto e ADR autorizados.
Padrões
- Nomear pelo domínio, não pela camada técnica.
- Distinguir entidade, valor, evento e projeção pelo comportamento.
- Manter invariantes junto do owner capaz de garanti-las.
- Não criar aggregate grande por conveniência de consulta.
- Separar bounded contexts quando o mesmo termo tem modelos legítimos distintos.
- Usar eventos no passado e comandos no imperativo.
- Validar o modelo com exemplos e contraexemplos.
Validação
- Linguagem consistente em spec, código, UI e dados.
- Cenários que exercitam invariantes e transições.
- Ownership sem escrita concorrente indefinida.
- Decisões registradas apenas na fonte autorizada.
Leia references/standards.md para artefatos, heurísticas e padrões de modelagem.