BPMN 2.0 – Novos Diagramas e Elementos: Coreografia no detalhe

No artigo anterior (BPMN 2.0 – Novos Diagramas e Elementos: Introdução a Coreografia) introduzimos o assunto a respeito do Diagrama de Coreografia. Neste artigo nossa proposta é detalhar a coreografia, apresentando os principais elementos BPMN utilizados para uma modelagem completa do diagrama em questão.

O diagrama de coreografia abaixo apresenta os detalhes do comportamento da coreografia, descreveremos logo abaixo cada um dos elementos. 

Elementos do diagrama de coreografia

1. Evento (Event)
Os eventos são elementos comuns a ambos diagramas de coreografia e de orquestração. Representam algo que acontece durante o curso do processo e podem ser de três tipos distintos: Inicio, intermediário e fim.

Dos eventos utilizados no diagrama de orquestração, aplica-se na coreografia os eventos:

Início: simples (none), tempo (timer), condicional (conditional), sinal (signal), múltiplo (multiple).
Intermediário: simples (none), condicional (conditional), ligação (link) e múltiplo (multiple). Atachados a atividade: cancelamento (cancel), compensação (compensation), condicional (conditional), sinal (signal) e múltiplo (multiple).
Fim:  simples (none) e terminate.

Para uma leitura mais detalhada sobre eventos veja os artigos sobre eventos de início e fim e eventos intermediários.

2. Atividade (Activity)
especificação da OMG BPMN versão 2.0, descreve interações entre processos como sendo Message Exchange Patterns (MEPs) ou padrões de troca de mensagens.  A MEP é a Atividade (Activity) de uma coreografia, chamada também de Tarefa de Coreografia (Choreography Task).

Atividade - Interação entre os participantes

3. Desvio (Gateway)
Nos processos de orquestração, os gateways são usados para criar caminhos alternativos ou paralelos para o processo. Da mesma forma acontece na coreografia: as interações entre os participantes pode acontecer em seqüência, em paralelo, ou por meio de seleção exclusiva.

4. Participante (Participant)
Os participantes fazem parte da Atividade de coreografia e corresponde a uma piscina (pool) do diagrama de orquestração.

O participante que inicia a troca de mensagens (parte ativa) é representado pelo fundo branco, já o participante que recebe o primeiro comunicado (parte passiva) está representado com o fundo preenchido (aqui em cinza). O participante que inicia a comunicação pode ser representado na extremidade superior ou inferior da atividade, como demostrado na imagem abaixo:

As atividades de coreografia da esquerda e direita são equivalentes

5. Fluxo de Sequência (Sequence Flow)
É utilizado para demostrar a sequência das atividades de coreografia e só pode se conectar a outros objetos do fluxo como os eventos, gateways  e atividades de coreografia.

6. Mensagem (Message)
Representa a informação contida  na comunicação entre duas entidades ou processos. No caso da coreografia, representa a informação transmitida na comunicação entre os participantes.

A mensagem de início, transmitida pelo participante inicial, é representada pelo envelope de fundo branco e a mensagem de retorno (quando houver) é representada pelo envelope de fundo preenchido.

Mensagem - Elemento que representa a informação contida na comunicação entre os participantes.

Interação entre participantes  e atividade multi-instance
No exemplo abaixo, os participantes Cliente e Concessionária interagem na atividade Compra de automóvel e os participantes Concessionária e Fornecedores de Peças interagem na atividade Solicitação de Orçamento.

Atividade de Coreografia - Representa uma interação entre dois participantes (pools)

A atividade da esquerda, representa a comunicação entre o participante Cliente (que inicia a comunicação) e o participante Concessionária. Nesta atividade o Cliente comunica seu interesse na compra de um automóvel. Já a atividade da direita demostra que um dos participantes pode ser multi-instance: o participante Fornecedores de Peças representa um papel atribuído a mais de um participante (a concessionária solicita orçamento para vários fornecedores de peças).

Atividade de subcoreografia (Sub-choreography task)
Uma atividade de subcoreografia agrega a identificação de todos os participantes envolvidos em um subconjunto de atividades de coreografia, e representa uma coregrafia refinada em interações (várias trocas de mensagens). Pode ser declarado mais de um destinatário, mas apenas uma iniciação pode ser realizada. Graficamente, a atividade pode ser demostrada de forma contraída (collapsed), representado pelo símbolo “+” indicando a existência de outro nível de detalhe. A mesma Atividade de subcoreografia pode ser representada de forma expandida (expanded) apresentando o seu conjunto de detalhes na própria coreografia.

A Imagem acima demostra a atividade de subcoreografia contraída(collapsed), representada pelo símbolo “+” indicando a existência de outro nível de detalhe, e sua representação expandida (expanded).

Com estes elementos, BPMN 2.0 possibilita a criação de um diagrama focado em documentar uma visão objetiva do processo, que pode ser compartilhada entre os participantes sem revelar os pormenores do negócio de cada organização envolvida.

4 ideias sobre “BPMN 2.0 – Novos Diagramas e Elementos: Coreografia no detalhe

  1. Boa tarde, gostei do material do blog, acho que a coreografía do BPMN nao é muito utilizada pelos analistas, mas queria pedir a voces enviar pra mim um exemplo mais completo para eu entender melhor a utilizacao da simbologia, muito obrigado.

    Atenciosamente.
    Alberto.

    NT.- Nao chegou a cartilha da simbologia de BPMN.

    • Olá Alberto,
      Ficamos felizes em saber que nosso blog está apoiando seu estudo da notação BPMN!
      Temos um outro artigo aqui no blog que é um caso aplicado de Diagrama de Coreografia – você chegou a conferir?
      BPMN: CAso aplicado de Diagrama de Coreografia.

      Em relação ao guia BPMN digital, ele é enviado por e-mail. É possível que você não tenha nosso contato cadastrado e como o envio é automatizado, o seu filtro pode ter classificado a mensagem como SPAM. Sugiro conferir naquela pasta (aproveito para sugerir também que você adicione o e-mail remetente no seu cadastro para garantir o recebimento das nossas próximas mensagens!)

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *