Conexões BPMN
Introdução
No BPMN 2.0, os connecting objects são usados para definir as relações e o fluxo de informações entre diferentes elementos em um modelo de processo. Eles conectam atividades, events e gateways, orientando o fluxo do processo ou transmitindo data e mensagens. Os principais connecting objects são sequence flows, message flows e associações.
Sequence Flow
Um sequence flow define a ordem em que atividades, events e gateways são realizados em um processo. Mostra o progresso lógico das tarefas de um passo para o próximo.
Este representa a ordem em que as tarefas devem ser executadas, retratado como uma linha reta que termina com uma ponta de seta. Pode indicar um caminho condicional ou padrão.
- Exemplo: Um sequence flow conecta a tarefa “Enviar Aplicação” à tarefa “Revisar Aplicação”, indicando que a revisão ocorre após o envio.
- Tipos de Sequence Flows:
- Sequence Flow Normal: O fluxo padrão entre atividades.
- Sequence Flow Condicional: Um sequence flow que só prossegue se uma condição específica for atendida (indicado por um pequeno losango).
- Sequence Flow Padrão: O fluxo alternativo se nenhuma condição for cumprida (indicado por uma barra diagonal no ponto de início).
- Caso de Uso: Use sequence flows para guiar o progresso passo a passo do processo, assegurando que as atividades sejam executadas em uma ordem específica.
Message Flow
Um message flow representa a comunicação entre diferentes participantes ou processos, geralmente quando fazem parte de diferentes pools. É usado para mostrar a troca de informações entre processos, que podem operar de forma independente.
O conector de message flow ilustra a comunicação entre diferentes pools ou através de fronteiras organizacionais, como departamentos. Não é destinado a ligar events ou atividades dentro do mesmo pool. Este conector é representado por uma linha tracejada, começando com um círculo e terminando com uma ponta de seta aberta.
- Exemplo: Um message flow conecta a tarefa “Enviar Fatura” em um pool (representando o fornecedor) a uma tarefa “Receber Fatura” em outro pool (representando o cliente), indicando que a fatura é enviada entre eles.
- Caso de Uso: Use message flows para descrever a comunicação entre diferentes entidades ou participantes de negócios (representados como pools separados), como quando uma empresa envia um pedido para outra.
Associação
Uma associação conecta artefatos (como data objects, text annotations ou grupos) com flow objects (atividades, events, gateways) para fornecer contexto ou esclarecer a relação entre os elementos. Associações não impactam a sequência do processo, mas são usadas para documentação e detalhes adicionais.
Este elemento é representado como uma linha pontilhada, sem seta ou círculo. Serve para ligar um event, atividade ou gateway a um artefato.
- Exemplo: Uma associação conecta a tarefa “Gerar Relatório” a um “Documento de Relatório” (um data object), indicando que essa tarefa produz o documento.
- Tipos de Associações:
- Associação Normal: Conecta elementos como tarefas a data objects ou anotações.
- Associação Direcional: Mostra o fluxo de data de ou para uma tarefa (indicado com uma seta).
- Associação Bidirecional: Indica relações de mão dupla entre elementos (indicada com duas setas).
- Caso de Uso: Use associações quando quiser vincular informações adicionais (por exemplo, data objects, text annotations) a tarefas ou eventos sem afetar o fluxo do processo.
Pontos-chave sobre os Connecting Objects
- Sequence Flow: Define a ordem das tarefas ou events dentro de um único processo (dentro de um pool). Usado para especificar o fluxo de atividades, condições e decisões.
- Message Flow: Representa a comunicação entre diferentes participantes ou processos (entre pools). Usado quando processos trocam informações ou desencadeiam ações em outro processo.
- Associação: Liga informações adicionais como data, documentos ou anotações às atividades, fornecendo contexto ou explicação, mas sem controlar o fluxo do processo.
Exemplo
Imagine um processo para gerenciar pedidos de clientes:
- Sequence Flow: Após receber um pedido, o sistema processa o pedido e o envia para entrega. Cada etapa (recebimento, processamento, entrega) é conectada por sequence flows.
- Message Flow: Quando o pedido é processado, uma mensagem é enviada para uma empresa de transporte externa para cuidar da entrega. Esta comunicação é representada por um message flow entre as duas entidades.
- Associação: Um data object “Pedido do Cliente” é associado à tarefa “Receber Pedido” para indicar que essa tarefa lida com os dados do pedido.
Resumo
- Sequence Flow: Administra a ordem das atividades dentro de um único processo.
- Message Flow: Facilita a comunicação entre diferentes entidades ou pools.
- Associação: Liga artefatos como data ou anotações aos elementos de fluxo, fornecendo contexto adicional.
Esses connecting objects são fundamentais para definir como as tarefas e os events são conectados, como os dados se movem através dos processos e como os processos interagem entre si em um modelo BPMN.