BPMN (Business Process Model and Notation) parece um fluxograma com alguns símbolos a mais, e é assim que a maioria das pessoas começa a usá-lo. Só que esses símbolos a mais são justamente o que importa: eles permitem que um diagrama diga quem faz cada etapa, o que inicia o processo, o que roda em paralelo e o que atravessa uma fronteira organizacional, com precisão suficiente para que um desenvolvedor e uma gerente de operações leiam a mesma coisa.
Este guia monta um diagrama BPMN passo a passo, o processo de atendimento de pedidos de uma loja online, e explica cada elemento quando ele aparece. No final, você terá um processo para adaptar e uma lista dos erros que deixam diagramas BPMN difíceis de ler.
Os elementos de que você precisa
O BPMN 2.0 tem um vocabulário grande, mas a maioria dos diagramas de processo usa um núcleo pequeno:
| Elemento | Forma | Significado |
|---|---|---|
| Piscina | Moldura grande | Um participante, como uma empresa ou um cliente |
| Raia | Faixa dentro de uma piscina | Um papel, time ou sistema dentro desse participante |
| Evento de início | Círculo de borda fina | O que inicia o processo (uma mensagem, um temporizador, nada em particular) |
| Evento de fim | Círculo de borda grossa | Uma das formas de o processo terminar |
| Evento intermediário | Círculo duplo | Algo que acontece ou é aguardado no meio do caminho |
| Tarefa | Retângulo arredondado | Uma unidade de trabalho; um marcador indica se é uma tarefa de usuário, de serviço, de envio ou manual |
| Gateway exclusivo | Losango com X | Exatamente um caminho de saída é seguido |
| Gateway paralelo | Losango com + | Todos os caminhos de saída são executados; um gateway correspondente espera por todos |
| Fluxo de sequência | Seta contínua | Ordem das etapas dentro de uma piscina |
| Fluxo de mensagens | Seta tracejada | Comunicação entre piscinas |
O exemplo: atendimento de pedidos
O processo, em palavras simples:
- Chega um pedido do cliente.
- O sistema de vendas verifica o estoque.
- Se o item estiver sem estoque, o cliente é avisado e o pedido é cancelado.
- Se houver estoque, o pagamento é cobrado e, ao mesmo tempo, o armazém separa e embala o pedido.
- Quando as duas coisas terminam, a expedição entrega o pacote à transportadora.
- O sistema de vendas envia o link de rastreamento por e-mail, e o processo termina.
Veja como ele fica em BPMN:
Conteúdo do diagrama
- Customer
- Online shop
- Order received
- Check stock
- In stock?
- Notify customer
- Order cancelled
- Charge payment
- Pick and pack
- Ship order
- Send tracking email
- Order fulfilled
- no
- yes
- order
- out of stock notice
- tracking link
Agora vamos montá-lo peça por peça.
Passo 1: piscinas e raias
Comece pelos participantes. A loja é uma piscina com três raias: Sales system (sistema de vendas), Warehouse (armazém) e Shipping (expedição). O cliente é uma segunda piscina, desenhada recolhida como uma faixa vazia: o que nos interessa é o que ele envia e recebe, não como ele decide.
As raias respondem à pergunta "quem faz isso?" sem nenhum rótulo nas tarefas. Se você não consegue decidir a qual raia uma tarefa pertence, em geral existe ali uma questão real de responsabilidade que vale a pena levantar.
Passo 2: eventos de início e de fim
O processo começa quando chega uma mensagem de pedido, então o evento de início recebe um marcador de mensagem. Há duas formas de terminar, então há dois eventos de fim: Order fulfilled (pedido atendido) e Order cancelled (pedido cancelado). Nomear cada evento de fim pelo resultado deixa claro, num relance, como o diagrama pode terminar.
Passo 3: tarefas com verbo e objeto
Nomeie cada tarefa com um verbo e um objeto: Check stock (verificar estoque), Charge payment (cobrar pagamento), Pick and pack (separar e embalar), Ship order (enviar pedido), Send tracking email (enviar e-mail de rastreamento). Adicione o tipo de tarefa quando ajudar: uma tarefa de serviço roda sem uma pessoa, uma tarefa de usuário precisa de uma e uma tarefa de envio envia uma mensagem. Esse único marcador mostra aos desenvolvedores quais etapas eles precisam automatizar.
Passo 4: gateways para decisões e trabalho em paralelo
O gateway exclusivo depois de Check stock faz uma pergunta, In stock? (tem estoque?), e os fluxos de saída dele levam as respostas, yes e no. Exatamente um caminho é seguido.
Depois do ramo yes, um gateway paralelo divide o fluxo: Charge payment e Pick and pack rodam ao mesmo tempo. Um segundo gateway paralelo junta os dois, então a expedição só começa quando ambos terminam. Bifurcações e junções andam em pares; uma bifurcação paralela sem junção deixa tokens circulando pelo resto do processo, o que quase nunca é o que você queria.
Passo 5: fluxos de mensagens entre piscinas
Fluxos de sequência ficam dentro de uma piscina. A comunicação entre piscinas usa fluxos de mensagens, desenhados tracejados: a mensagem do pedido entrando no evento de início, e o aviso de falta de estoque e o e-mail de rastreamento voltando para o cliente. O BPMN não permite que um fluxo de sequência cruze a fronteira de uma piscina, e essa regra obriga você a mostrar explicitamente cada passagem de bastão entre organizações.
Estendendo o processo
Processos reais precisam de mais. Algumas extensões comuns e como o BPMN as expressa:
- O pagamento falha. Agrupe Charge payment e Pick and pack em um subprocesso, anexe a ele um evento de borda de erro e ligue esse evento a uma tarefa que devolve os itens ao estoque e avisa o cliente. Um caminho de erro saindo de apenas um dos ramos paralelos deixaria a junção esperando para sempre.
- A separação demora demais. Anexe a Pick and pack um evento de borda de temporizador não interruptivo, por exemplo de 24 horas, e ligue-o a uma tarefa de escalonamento.
- O armazém é um parceiro. Transforme-o em uma piscina separada e substitua os fluxos de sequência que chegam a ele por fluxos de mensagens. Assim o diagrama mostra o contrato entre as duas empresas.
Adicione essas extensões só quando a discussão precisar delas. Um diagrama de processo que tenta mostrar todas as exceções vira uma parede de setas.
Erros comuns
- Fluxos de sequência entre piscinas. Entre participantes, use fluxos de mensagens.
- Caminhos paralelos unidos sem junção. Caminhos alternativos podem seguir direto para a próxima tarefa, mas caminhos paralelos precisam ser unidos por um gateway paralelo; caso contrário, a próxima tarefa roda uma vez por ramo.
- Perguntas no elemento errado. Coloque a pergunta no gateway e as respostas nos fluxos de saída dele, não nas tarefas.
- Nomes de tarefa vagos. "Processar pedido" esconde cinco etapas. Se uma tarefa precisa de um parágrafo, ela é um subprocesso.
- Tudo em uma raia só. Sem raias, um diagrama BPMN é um fluxograma com símbolos mais sofisticados.
BPMN ou fluxograma?
Use um fluxograma para lógica rápida, algoritmos e sequências de instruções. Use BPMN quando responsabilidade, espera, trabalho em paralelo ou comunicação entre participantes importam, o que vale para a maioria dos processos de negócio com mais de um time envolvido. O Archboard tem os dois no mesmo canvas; para o estilo mais simples, veja o caso de uso de fluxogramas e o modelo de fluxograma multifuncional.
Monte no Archboard
- Entre com Google ou GitHub e crie um diagrama.
- No pack BPMN, adicione uma Piscina para a loja com três raias e uma segunda piscina, vazia, para o cliente.
- Adicione nós Evento de início e Evento de fim, nós Tarefa com seus tipos de tarefa e nós Desvio exclusivo (os gateways), configurados como exclusivo ou paralelo.
- Conecte as etapas dentro da piscina e desenhe conexões tracejadas entre as piscinas para os fluxos de mensagens.
- Rotule os fluxos de saída do gateway com as respostas e adicione uma Anotação de texto para tudo o que o leitor precisa saber.
O exemplo usa 14 nós de diagrama, dentro do plano Free. Para processos relacionados, veja os casos de uso de diagramas de fluxo de pagamento e mapeamento do fluxo de valor.
Perguntas frequentes
Preciso aprender todo o BPMN 2.0? Não. Piscinas, raias, eventos de início e de fim, tarefas, gateways exclusivos e paralelos e fluxos de mensagens cobrem a maioria dos diagramas. Adicione outros símbolos quando um caso real precisar deles.
Um diagrama BPMN pode ser executado? Motores de processo podem executar modelos BPMN que incluem os detalhes técnicos de que precisam. Um diagrama desenhado para pessoas, como este, serve primeiro para chegar a um acordo sobre o processo.
Qual deve ser o tamanho de um diagrama? Se ele não cabe mais em uma tela, mova um grupo de tarefas para um subprocesso e desenhe esse subprocesso separadamente.
Onde ficam os sistemas e os dados? Use uma raia para um sistema que executa trabalho, como o sistema de vendas aqui, e objetos de dados ou armazenamentos de dados para as informações que as tarefas leem e gravam.
Como revisar um diagrama de processo? Percorra no diagrama um caso real, como um pedido sem estoque, junto com as pessoas que fazem o trabalho. Cada ponto em que elas dizem "na verdade, a gente..." é uma correção.