2
respostas

[Sugestão] fluxo de trabalho

Ao pensar em processos de negócio, há um fluxo de trabalho subjacente. Por exemplo, matricular um aluno é um processo de alto nível, e a partir disso, operações mais granulares são orquestradas.

Usando esse serviço de negócio, podemos encapsular domínios relacionados. Por exemplo, um aluno no nosso modelo acadêmico e um registro financeiro no domínio financeiro estão relacionados de alguma forma. Com um serviço de negócio, conseguimos encapsular esses detalhes complexos e simplificar o processo, tornando-o mais próximo do que é discutido no domínio de negócio.

Para criar um serviço de negócio, é necessário seguir algumas etapas:

Identificar o processo de negócio que você deseja expor. Se não houver um processo de negócio, não haverá necessidade de um serviço de domínio. Identificar os domínios necessários para esse processo. Esses domínios podem residir em diferentes serviços de dados ou serviços de domínio. Definir a API do serviço de negócio, concentrando-se no domínio, não nos detalhes de dados subjacentes. O serviço de negócio receberá a solicitação e fará chamadas aos serviços de dados e serviços de domínio apropriados para atender à solicitação. Essa abordagem ajuda a separar e encapsular domínios relacionados em serviços independentes, facilitando a manutenção e a escalabilidade do sistema.

2 respostas

Olá! Parece que você já tem uma boa compreensão do conceito de serviços de negócio em microsserviços e como eles podem ser usados para encapsular processos de negócio complexos. No exemplo que você deu, o processo de matricular um aluno envolve vários domínios, como o acadêmico e o financeiro. Em um sistema de microsserviços bem projetado, um serviço de negócio para matricular um aluno poderia ser criado para encapsular todas as operações necessárias, chamando os serviços de dados ou serviços de domínio apropriados.

Vamos pegar o exemplo da matrícula de um aluno. Primeiro, identificamos o processo de negócio que queremos expor - neste caso, a matrícula de um aluno. Em seguida, identificamos os domínios necessários para esse processo. Neste caso, precisamos do domínio do aluno (para criar um novo registro de aluno) e do domínio financeiro (para criar um novo registro financeiro para o aluno).

Depois, definimos a API do serviço de negócio. Esta API deve se concentrar no processo de negócio (matricular um aluno), e não nos detalhes de dados subjacentes. Por exemplo, a API pode ter um método matricularAluno que aceita os detalhes do aluno e as informações de pagamento como parâmetros.

Finalmente, o serviço de negócio receberá a solicitação (por exemplo, através do método matricularAluno) e fará chamadas aos serviços de dados e serviços de domínio apropriados para atender à solicitação. Por exemplo, ele pode chamar um método criarAluno no serviço de dados do aluno e um método criarRegistroFinanceiro no serviço de dados financeiro.

Espero ter ajudado e bons estudos!

Perfeito entendi!

Obrigado