No artigo anterior, iniciamos o estudo da notação BPMN apresentando os elementos task e sequence flow, utilizados para representar a sequência lógica de atividades a serem executadas para a realização do processo. Neste artigo estudaremos um novo elemento de fluxo.
Gateways são os elementos de BPMN responsáveis por controlar iterações do fluxo, criando caminhos alternativos ou paralelos no mapeamento do processo ou unificando fluxos para continuação em uma mesma sequência de atividades.
Gateways são elementos chave na modelagem de processos de negócio, pois permitem descrever não apenas o “dia feliz” do processo, em que as atividades acontecem sempre da mesma maneira ou na mesma sequência, mas prever possíveis exceções conhecidas do negócio, ou beneficiar a duração do processo através da paralelização de atividades.
O gateway é conectado ao fluxo através de setas de fluxo de sequência e é representado visualmente por um losango. O símbolo interno do losango identifica a interpretação lógica representada.
Gateway exclusivo (Databased Exclusive Gateway)
Representa uma condição de fluxo exclusiva, em que apenas um dos caminhos criados a partir do gateway será seguido, de acordo com uma informação a ser testada.
Este gateway pode ser representado visualmente como o losango vazio ou com um marcador de “x”.
Quando o processo em execução atingir este gateway, o processo deverá verificar a condição indicada, e apenas uma das saídas do gateway dará seguimento. Semanticamente, este gateway funciona como um “ou”, já que ou um ou outro caminho será seguido – nunca mais de um.
Os conectores de sequência de saída deste gateway podem apresentar descrições que ajudem a identificar qual a condição para que o fluxo siga por aquele caminho.
Além de realizar separação de fluxos, o gateway também pode unificar fluxos distintos em uma única sequência de atividades. Neste caso, o gateway exclusivo implica no entendimento que, dos caminhos que convergem a ele, o primeiro que chegar dará continuidade no fluxo do processo.

No exemplo acima, o gateway “Resultado da avaliação” testará o resultado da atividade anterior. Se na execução da atividade “Avaliar artigo” o usuário aceitar o conteúdo, o fluxo seguirá pela saída superior “Conteúdo aceito”, e as atividades “Realizar revisão final do artigo” e “Publicar artigo” serão realizadas. Se o usuário rejeitar o conteúdo, o fluxo seguirá pela saída “Conteúdo rejeitado”, e apenas a atividade “Cancelar artigo” será realizada. Por fim, se o usuário optar por requerer ajustes, o fluxo seguirá a sequência “Requer ajustes”, iniciando a atividade “Ajustar artigo”. Ao terminá-la, note que o fluxo seguirá novamente para a atividade de “Avaliar artigo”. Ainda no exemplo acima, note a utilização do gateway exclusivo para convergir dois dos fluxos criados. Isto garante que a atividade “Comunicar partes interessadas” só aconteça depois que a tarefa “Publicar artigo” ou a tarefa “Cancelar artigo” for executada, de acordo com o fluxo iniciado pelo gateway anterior.
Gateway paralelo (Parallel Gateway)
A paralelização de trabalho em um diagrama BPMN é possível com a utilização do gateway paralelo. Este gateway representa a divisão de um fluxo em dois ou mais que serão executados paralelamente. Todos os caminhos que saem deste gateway são executados.
Este gateway é representado visualmente como o losango com um marcador de “+” dentro dele.
Semanticamente, este gateway funciona como um “e”, já que um e outro caminho serão executados.
Quando este gateway é utilizado para realizar a convergência de fluxos, ele garantirá que todos os fluxos paralelos sejam concluídos, chegando até ele antes de dar continuidade ao fluxo de saída.

No exemplo acima, o primeiro gateway paralelo produz dois fluxos que serão executados paralelamente. Enquanto a tarefa “Escrever artigo” é realizada, as atividades “Selecionar imagens” e “Tratar imagens” também podem ser executadas. Ainda no exemplo acima, o segundo gateway faz a convergência dos fluxos, garantindo que a tarefa “Realizar diagramação” só seja executada depois que “Escrever artigo” e “Tratar imagens” tenham sido finalizadas.
Gateway inclusivo (Databased Inclusive Gateway)
Representa uma condição de fluxo inclusiva, em que pode haver uma combinação dos caminhos criados a partir do gateway, de acordo com uma informação a ser verificada. Este gateway é representado visualmente como o losango com um marcador de círculo dentro dele.
Quando o processo em execução atingir este gateway, o processo deverá avaliar a condição relacionada, e uma ou mais das saídas do gateway poderão dar seguimento.
Semanticamente, este gateway funciona como um “e/ou”, já que o caminho a ser seguido pode ser um e/ou outro, de acordo com as informações e a lógica do negócio.
Quando este gateway é utilizado para realizar a convergência de fluxos, ele garantirá que todos os fluxos que estiverem em execução sejam concluídos, chegando até ele antes de dar continuidade à sequência de atividades.

No exemplo acima, o gateway “Documentos necessários” testará o resultado da atividade anterior. Se na execução da atividade “Identificar documentação necessária” o usuário identificar a necessidade de um, dois, ou três dos documentos requeridos, cada um dos fluxos será executado. Por exemplo, se para um processo em execução for identificada a necessidade da Negativa civil e Negativa criminal, mas não a de débitos, o processo seguirá pelas saídas “Negativa civil” e “Negativa criminal”, mas não pela “Certidão negativa de débitos”. Assim, as atividades “Anexar negativa civil” e “Anexar negativa criminal” deverão ser executadas. Em outro processo, pode ser possível que uma combinação diferente de documentos seja requerida. Ainda no exemplo acima, note a utilização do gateway inclusivo para convergir os fluxos criados. Isto garante que a atividade “Analisar validade dos documentos” só aconteça depois que todos os fluxos que forem iniciados pelo gateway anterior sejam executados, para então a atividade ser iniciada. No exemplo citado, a tarefa de analisar validade dos documentos só será iniciada depois que as tarefas “Anexar negativa civil” e “Anexar negativa criminal”, mas sem que ocorra a atividade “Anexar negativa de débitos”.
Algumas coisas importantes que devem ser observadas ao utilizar gateways:
- Diferente dos diamantes dos tradicionais fluxogramas, os gateways em BPMN não são apenas pontos de divisão binária do fluxo. É possível (e muito mais vantajoso!) utilizá-los para realizar testes mais complexos do que o tradicional “sim/não”. Isto vale para todos os tipos de gateway nesta notação.
- Nos gateways exclusivo e inclusivo, onde o fluxo é direcionado com base em uma condição, a informação a ser validada (para identificar que fluxo o gateway deve seguir) já deve ter sido obtida anteriormente no processo.
- Embora a notação não coloque isto como uma regra obrigatória, é sempre uma boa prática descrever, nos conectores de sequência que saem destes gateways com decisão, que valor resultante da condição deve ser verdadeiro para que o fluxo siga por aquele caminho. (Veja nos exemplos aplicados como os conectores de sequência que saem dos gateways exclusivo e inclusivo possuem descrições associadas às suas linhas.) Isto deixará o diagrama mais claro para a leitura dos que venham a consultá-lo futuramente!
BPMN 2.0 possui outros tipos de gateways, como os baseados em eventos, por exemplo. estes gateways, entretanto, são utilizados em casos mais especializados (a partir do nível 2 – analítico, de acordo com a classificação de Bruce Silver).
Em nosso próximo artigo:
um estudo sobre os eventos e os principais gatilhos para início e fim de processos.
Confira todos os artigos deste guia de BPMN Nível 1:
- Um guia para iniciar estudos em BPMN (I): Atividades e sequência
- Um guia para iniciar estudos em BPMN (II): Gateways (você está aqui)
- Um guia para iniciar estudos em BPMN (III): Eventos de Início e Fim
- Um guia para iniciar estudos em BPMN (IV): Eventos Intermediários
- Um guia para iniciar estudos em BPMN (V): Subprocessos
- Um guia para iniciar estudos em BPMN (VI): Swimlanes e Artefatos
