Continuando a série sobre problemas comuns na modelagem de processos em BPMN (veja os artigos anteriores aqui e aqui), hoje iremos falar de uma situação bastante recorrente que constatamos nos nossos treinamentos, que é o uso de tarefas para sinalizar o resultado de gateways no processo.
Para explicar melhor o que queremos dizer, veja o exemplo abaixo:
Perceba que a pessoa que modelou o processo, para demonstrar os resultados do gateway relativo à atividade “Avaliar Reembolso”, optou por criar duas tarefas em cada um dos fluxos de sequencia ligados ao gateway, nomeando-as como “Aprovado” e “Reprovado”.
O elemento Tarefa (Task) de BPMN se refere a um trabalho que é efetivamente realizado dentro de um processo. Uma tarefa deve, essencialmente, indicar uma ação a ser realizada, que consuma algum recurso (como a tarefa “Avaliar Reembolso” no exemplo acima).
Logo, concluímos que não faz sentido utilizar uma tarefa apenas para indicar uma mudança de status ou sinalizar os resultados de um gateway.
Qual então seria a forma correta de modelar este caso? Veja no exemplo atualizado abaixo:
A abordagem correta (e mais simples!) é simplesmente nomear os fluxos de sequencia ligados ao gateway. No caso acima, cada fluxo de sequência foi nomeado com os resultados possíveis da tarefa de Avaliar reembolso, ou seja, “Aprovado” ou “Reprovado”.
Com isto, o desenho do processo fica mais limpo e fácil de interpretar. Simples e prático! :-)