Você está na página 1de 59

M.Sc.

Ana Rocío Cárdenas Maita


BPMN Prof. Dr. Marcelo Fantinato
Business Process Model and Notation Prof. Dra. Sarajane Marques Peres

2021
Process Mining @ USP
Process Mining @ USP

Para referenciar este material:

Maita, A. R. C.; Fantinato, M.; Peres, S. M. “Notas de Aula: Introdução à ciência de


processos e ciência de dados como base para a mineração de processos - Business
Process Model and Notation”. Grupo Process Mining @ USP, 2021.
Process Mining @ USP

Modelo de processo em BPMN

[Disponível em: http://www.blog.iprocess.com.br/


Process Mining @ USP

Business Process
Model and
Notation - BPMN
• BPMN é um padrão para
modelagem de processos
de negócio.
• Fornece às empresas a
capacidade de
compreender seus
processos de negócio
interno em uma notação
gráfica.
• Permite modelar de forma
padronizada e unificada.
[Disponível em: http://www.bpmb.de/images/BPMN2_0_Poster_PT.pdf]
Process Mining @ USP

Business Process Model and Notation - BPMN

Origem

Modelo
e
Notação
Process Mining @ USP

Diretrizes para modelagem de processos de negócio


• Definir claramente o escopo do processo com um começo e um fim.
• Mapear primeiramente o processo de negócio atual para destacar as ineficiências antes
de modelar uma maneira melhor com BPMN.
• Desenhar fluxos de sequência de forma horizontal; e mostrar associações e fluxos de
dados verticalmente.
• BPMN não é apropriada para a modelagem de estruturas organizacionais,
detalhamento de funções ou modelos de fluxo de dados.
o Embora BPMN descreva alguns fluxos de informação nos processos de negócio, ela não é um
diagrama de fluxo de dados.
Process Mining @ USP

Comportamento do modelo BPMN


Modelo de • Em um diagrama podem ser descritos um ou mais modelos de processo.
processo • Cada modelo representa a descrição de um processo.

Instância de • É a execução do processo baseado no modelo de processo.


processo • É criada com o evento de início, pode ser interrompida ou cancelada.

• É um conceito teórico usado como um auxílio para definir o


Token
comportamento de um processo que está sendo executado.
Process Mining @ USP

Exemplo do comportamento do modelo BPMN

• O token segue o fluxo de sequência (não pode seguir fluxo de mensagem ou associação de
dados) e flui por um processo (passando por elementos como desvios ou atividades ou
subprocessos) até o evento de fim, onde é consumido.

• O importante sobre o token é que ele ajuda a entender/descobrir o que pode acontecer em
um processo.
Process Mining @ USP

Elementos básicos

Eventos Atividades Desvios Fluxos


Evento de Tarefa Desvio Fluxo de
início condicional sequência
exclusivo (XOR)

Evento Transação Ativação Fluxo de


Intermediário incondicional Mensagem
em paralelo (AND)

Evento de Marcador Ativação Associação


fim de loop inclusiva de dados
condicional (OR)
Process Mining @ USP

Divisões e compartimentos
Divisões (ou piscinas): Compartimentos (ou raias):
• Entidades participantes na • Subdividem as divisões ou
colaboração ou responsáveis outros compartimentos.
pelas atividades. • Usadas para organizar e
• Pode ter detalhes internos, categorizar as atividades.
na forma do processo que
será executado. Ou pode ser Exemplos:
como uma "caixa preta". • Unidades de negócio,
departamentos:
Exemplos: o RH, vendas, jurídico,
• Organização, empresa. compras, transporte.
• Papel, ator humano. • Papel no negócio:
o Comprador, vendedor,
gerente, analista.
Process Mining @ USP

Exemplo com os elementos básicos

• Qual seria o processo de venda para uma loja virtual?


Process Mining @ USP

Desvio
• Desvios são usados para direcionar o fluxo.
• Desvios não criam informações para tomada de decisões, eles apenas direcionam o fluxo.
• A decisão de um desvio do tipo XOR/OR deve ser determinada em uma atividade antes do desvio.

Desvio
condicional
exclusivo (XOR)
Process Mining @ USP

Desvio
• Desvios são usados para direcionar o fluxo.
• Desvios não criam informações para tomada de decisões, eles apenas direcionam o fluxo.
• A decisão de um desvio do tipo XOR/OR deve ser determinada em uma atividade antes do desvio.

Ativação
incondicional em
paralelo (AND)
Process Mining @ USP

Exemplo de modelo de processo com desvios

• Uma empresa possui dois depósitos que armazenam produtos diferentes, um no Rio de Janeiro e
outro em São Paulo.
• Quando um pedido é recebido, ele é distribuído para esses dois depósitos:
• Se alguns dos itens do pedido são mantidos no depósito do Rio de Janeiro, um pedido secundário é
enviado para lá.
• Da mesma forma, se alguns dos itens do pedido são mantidos em São Paulo, um pedido secundário é
enviado para lá.
• Depois, o pedido é registrado e o processo é concluído.
[Adaptado de: Dumas M., “Business Process Management Lecture 3 – Process Modeling I”, University of Tartu]
Process Mining @ USP

Exemplo de modelo de processo com desvios

• Uma empresa possui dois depósitos que armazenam produtos diferentes, um no Rio de Janeiro e
outro em São Paulo.
• Quando um pedido é recebido, ele é distribuído para esses dois depósitos:
• Se alguns dos itens do pedido são mantidos no depósito do Rio de Janeiro, um pedido secundário é
enviado para lá.
• Da mesma forma, se alguns dos itens do pedido são mantidos em São Paulo, um pedido secundário é
enviado para lá.
• Depois, o pedido é registrado e o processo é concluído.
[Adaptado de: Dumas M., “Business Process Management Lecture 3 – Process Modeling I”, University of Tartu]
Process Mining @ USP

Exemplo de modelo de processo com desvios

[Adaptado de: Dumas M., “Business Process Management Lecture 3 – Process Modeling I”, University of Tartu]
Process Mining @ USP

Desvio
• Desvios são usados para direcionar o fluxo.
• Desvios não criam informações para tomada de decisões, eles apenas direcionam o fluxo.
• A decisão de um desvio do tipo XOR/OR deve ser determinada em uma atividade antes do desvio.

Ativação
inclusiva
condicional (OR)
Process Mining @ USP

Outra solução

[Adaptado de: Dumas M., “Business Process Management Lecture 3 – Process Modeling I”, University of Tartu]
Process Mining @ USP

Diferença entre:

Tarefa Evento
• Uma tarefa é uma única ação • Um evento é uma ação
(durante um tempo) que ocorre instantânea. Ele representa a
em um processo de negócios, p. ocorrência de fatos em um
ex., o envio de uma carta. processo.
Process Mining @ USP

Evento
intermediário
• Eventos intermediários ocorrem
entre um evento de início e um
evento de fim.
• Eles afetam o fluxo do processo,
mas não iniciam ou encerram
(diretamente) o processo.
• Eles são mostrados com círculos
contendo outros símbolos,
dependendo do tipo de evento.
• Eles são classificados como
“lançamento” ou “captura”,
dependendo de sua função.
Process Mining @ USP

Evento intermediário: Mensagem


• São utilizados para demonstrar um ponto do processo onde ocorre uma comunicação
com um outro processo ou agente externo.
• O conector de fluxo de mensagem pode ser usado apenas para conectar elementos de
envio e recebimento de mensagem. Caracteriza-se por uma linha tracejada com uma
seta vazada apontando para o destino da mensagem, quando a comunicação é com um
outro processo.

Evento intermediário Evento intermediário


de lançamento de de captura de
mensagem mensagem
Process Mining @ USP

Fluxo de mensagens
• Uma mensagem é usada para descrever o conteúdo de comunicação entre dois
participantes.
o Fluxos de mensagem simbolizam que fluxos de informação transpõem fronteiras externas de uma
organização.
o Não podem conectar objetos que estão dentro da mesma divisão, ou seja, da mesma organização.
Process Mining @ USP

Exemplo de fluxo de mensagens


• No exemplo anterior, como seria a comunicação entre a loja virtual e uma empresa
fornecedora de produtos?
Process Mining @ USP

Evento intermediário: Temporal


• Um elemento evento intermediário temporal pausa o andamento de um processo até um
momento específico.
• Quando o tempo especificado ocorre, o elemento evento intermediário temporal ocorre,
disparando o andamento do processo.
• O evento intermediário temporal de borda de atividade dispara um caminho alternativo para o
fluxo do processo se o tempo especificado ocorrer enquanto a atividade estiver sendo executada.

Evento intermediário Evento intermediário


Evento intermediário
temporal de borda temporal de borda
temporal
com interrupção sem interrupção
Process Mining @ USP

Exemplo de evento intermediário temporal


• Um hospital tem um protocolo especial para o tratamento de uma doença rara, que
inicia após o atendimento do paciente.
• O tratamento inicia com o internamento do paciente e a aplicação do primeiro
tratamento; é esperado que este tratamento tenha efeito em 5 dias.
• Uma vez passado esse tempo, o paciente recebe o segundo tratamento; é esperado que
este segundo tratamento tenha efeito em 5 dias. Após esse período avalia-se a sua
recuperação.
• Se o paciente estiver recuperado, ele recebe alta e retira-se do hospital.
• Senão, ele é colocado em uma sala de observação, pois as vezes o segundo tratamento leva
mais 3 dias em fazer efeito. Se antes disso o paciente se sentir melhor ele pode receber o
alta. Uma vez passados os 3 dias, notifica-se aos médicos sobre o caso especial e termina o
protocolo.
Process Mining @ USP

Exemplo de evento intermediário temporal


• Um hospital tem um protocolo especial para o tratamento de uma doença rara, que
inicia após o atendimento do paciente.
• O tratamento inicia com o internamento do paciente e a aplicação do primeiro
tratamento; é esperado que este tratamento tenha efeito em 5 dias.
• Uma vez passado esse tempo, o paciente recebe o segundo tratamento; é esperado que
este segundo tratamento tenha efeito em 5 dias. Após esse período avalia-se a sua
recuperação.
• Se o paciente estiver recuperado, ele recebe alta e retira-se do hospital.
• Senão, ele é colocado em uma sala de observação, pois as vezes o segundo tratamento leva
mais 3 dias em fazer efeito. Se antes disso o paciente se sentir melhor ele pode receber o
alta. Uma vez passados os 3 dias, notifica-se aos médicos sobre o caso especial e termina o
protocolo.
Process Mining @ USP

Evento intermediário: Temporal


Process Mining @ USP

Evento intermediário: Captura de erro


• É um evento para captura o lançamento de erros (bugs) nomeados já conhecidos.
• Um evento intermediário de captura de erro só pode ser anexado à borda de uma atividade, ou
seja, não pode ser usado no fluxo normal do processo.
• Um evento intermediário de captura de erro sempre interrompe a atividade à qual está anexado,
ou seja, não há uma versão deste tipo de evento sem interrupção.
Process Mining @ USP

Exemplo com evento intermediário de captura


de erro
• Considere um processo de validação de documentos para requerimentos usando como critério a
assinatura do cliente.
Process Mining @ USP

Evento intermediário: Sinal


• Um evento intermediário de sinal é usado para a comunicação intra e inter processos.
• O sinal pode ter um emitente e inúmeros destinatários – e eles não necessariamente se
conhecem.
• O funcionamento do sinal é como um broadcast:
• O evento de lançamento de sinal emitirá o “sinal” (como um apito) e todos os processos que
estão aguardando aquele sinal (eventos de captura de sinal) o captarão, dando sequência aos
seus fluxos; diferentemente de eventos do tipo mensagem que possuem apenas um
remetente específico e um destinatário específico.
Process Mining @ USP

Exemplo de
evento
intermediário
de sinal
Process Mining @ USP

Atividade: Tarefa
Process Mining @ USP

Atividade: Tarefa

Uma pessoa
executa a tarefa
com apoio de um
software/sistema.
Process Mining @ USP

Atividade: Tarefa

Tarefa executada
completamente na
forma de algum tipo
de serviço, tal como
um serviço web ou
um aplicativo
automatizado (sem
qualquer intervenção
humana).
Process Mining @ USP

Atividade: Tarefa
Tarefa usada para
enviar uma
mensagem a um
participante
externo (há
também a tarefa
de recebimento
de mensagem).
Process Mining @ USP

Atividade: Tarefa

Tarefa que
processa dados
com base em
regras de
negócio da
organização.
Process Mining @ USP
Tarefa realizada sem o
Atividade: Tarefa apoio de qualquer
software/sistema ou do
motor de execução de
processo de negócio.
Process Mining @ USP

Atividade: Tarefa

Tarefa executada na forma de um script interpretado pelo


próprio motor de execução de processo de negócio (sem
qualquer intervenção humana).
Process Mining @ USP

Exemplo com tipos de tarefas


• Considere um processo para comprovação de integridade de dados cadastrais sobre
vendas realizadas.
• Neste processo:
• Um script é executado no banco de dados para procurar quais registros estão incompletos.
• O vendedor faz uma ligação ao cliente para preencher dados ausentes.
• Um analista processa os dados recebidos do cliente, para serem unificados.
• Uma validação automática do CEP é realizada usando um serviço web dos Correios.
• Os dados unificados são processados com base nas necessidades do negócio.
• O analista cria e imprime um relatório e notifica aos diretores da empresa.
Process Mining @ USP

Exemplo com tipos de tarefas


Process Mining @ USP

Atividade: Marcador de loop


• A atividade com marcador de loop executa a tarefa interna, desde que a condição de
loop seja avaliada como verdadeira.
• Quando as atividades são concluídas e a condição é atendida, um token é gerado para a
sequência de saída.
Process Mining @ USP

Exemplo com atividade com marcador de loop


• Considere um processo de matrícula de estudantes por uma faculdade.
Process Mining @ USP

Atividade: Subprocesso

• Subprocessos definem um escopo contextual, ou seja, uma parte específica de um


processo:
• Subprocessos podem ser usados para: escopo transacional, tratamento de exceções,
tratamento de eventos ou compensação.
• Subprocessos podem ser representados de duas formas:
• “Contraído” – representando o subprocesso de forma resumida.
• “Expandido” – representando os detalhes do que há no subprocesso, para mostrar um
processo de nível inferior.
Process Mining @ USP

Exemplo com subprocesso


• No exemplo anterior, e se quiséssemos detalhar o processo de matrícula para estudante?
Process Mining @ USP

Exemplo com subprocesso


• No exemplo anterior, e se quiséssemos detalhar o processo de matrícula para estudante?
Process Mining @ USP

Atividade: Transação
• Uma transação é um subprocesso que é apoiado por um protocolo especial que garante que
todas as partes envolvidas tenham se completado.
• Envolve três possíveis resultados:
• Conclusão bem-sucedida: representada pelo fluxo de sequência que sai da transação.
• Conclusão falha (cancelada): as atividades dentro da transação podem e devem ser canceladas.
• Isso pode ser feito adicionando um evento de borda de cancelamento à transação.
• Quando a transação for cancelada, o fluxo será redirecionado para o evento de borda de
cancelamento.
• Perigo (erro): significa que algo deu terrivelmente errado e um sucesso normal ou mesmo
cancelamento não é possível.
• Para mostrar o resultado do perigo, é preciso adicionar um evento de borda de erro à
transação.
Process Mining @ USP

Exemplo com atividade transação


• Considere um processo de reserva de pacotes de viagem, como modelaríamos o caso em que
ocorre algum erro no pagamento da reserva?

Fluxo normal

Fluxo com erro


(exceção)
Process Mining @ USP

Dados
• A modelagem de dados é usada para descrever itens físicos ou de informação que são
criados, manipulados e usados durante a execução de um processo.
• Os dados podem ser modelados usando:
o objeto de dado, dados de entrada e saída, repositório de dados, coleção de objeto de dado.
• Os tokens não fluem ao longo de uma associação de dados.

• Representa informação que


Objeto de transita ao longo do processo.
• Exemplos:
dado • Documento, correio
eletrônico, carta.
Process Mining @ USP

Dados
• A modelagem de dados é usada para descrever itens físicos ou de informação que são
criados, manipulados e usados durante a execução de um processo.
• Os dados podem ser modelados usando:
o objeto de dado, dados de entrada e saída, repositório de dados, coleção de objeto de dado.
• Os tokens não fluem ao longo de uma associação de dados.

• Os requisitos de dados são capturados


Dados de entrada como dados de entrada.
e de saída • Os dados produzidos são capturados
como dados de saída.
Process Mining @ USP

Dados
• A modelagem de dados é usada para descrever itens físicos ou de informação que são
criados, manipulados e usados durante a execução de um processo.
• Os dados podem ser modelados usando:
o objeto de dado, dados de entrada e saída, repositório de dados, coleção de objeto de dado.
• Os tokens não fluem ao longo de uma associação de dados.

• Fornece um mecanismo para obter ou


atualizar informações armazenadas que
Repositório persistirão além do escopo do processo.
de dados • Representa um único tipo de informação
(por exemplo, uma tabela no banco de
dados).
Process Mining @ USP

Boas práticas de modelagem

• Escopo do processo:
o Definir claramente o escopo do processo, identificando quem, o quê, quando, onde e por
que do processo (o processo é o como).
o Identificar o que cada instância do processo representará.
• Layouts de diagrama:
o Fazer o layout organizado para facilitar a leitura, minimizando o cruzamento de fluxo.
o Criar layouts com fluxos de sequência horizontais.
o Criar layouts com associações de dados e fluxos de mensagens verticais.
o Usar a ordenação da esquerda para a direita, embora não seja obrigatório.
o Não criar layouts de elementos em zigue-zague.
o Mostrar claramente qual é o caminho principal (“feliz”) do processo.
Process Mining @ USP

Boas práticas de modelagem


• Elementos:
o Usar desvios para representar a divisão ou
fusão de fluxos.
o Não usar desvios de junção e de separação
ao mesmo tempo.
o Colocar uma atividade que determinará as
condições de separação logo antes de um
desvio de separação (XOR ou OR).
o Abstrair vários desvios de separação
encadeados em série em uma tarefa de
regra de negócio.
• Procurar simplificar diagramas
sobrecarregados!
Process Mining @ USP

Boas práticas de modelado


• Particionamento e estrutura de processos:
o Criar várias camadas hierárquicas de detalhes para o processo.
o Usar subprocessos para dividir o processo em “fases”.
• Iniciar e terminar eventos:
o Sempre usar eventos de início e de fim.
o Distinguir instanciação alternativa do processo como eventos de início separados.
o Distinguir vários estados finais como eventos de fim separados.
Process Mining @ USP
Process Mining @ USP

Ferramentas de
modelagem de
processos de
negócio
Process Mining @ USP

Exercício

• Modelar o processo de pedido e entrega de uma pizza no próprio local da pizzaria.


o Considere que o dono da Pizzaria não gosta de que os cliente fiquem com fome, portanto ele
coloca um alarme cada cinco minutos para lembrar o pizzaiolo de terminar de preparar o
mais rapidamente possível.
o E como seria esse modelo de processo para uma entrega delivery?
Process Mining @ USP

Referências

• Dumas M., “Business Process Management Lecture 3 – Process Modeling I”, University of Tartu
• Object Management Group (2021). Business Process Model and Notation (BPMN), Version 2.0.
URL: https://www.omg.org/spec/BPMN/2.0/PDF, acessado em fevereiro 2021.
• Van Gorp, P., & Dijkman, R. (2013). A visual token-based formalization of BPMN 2.0 based on in-
place transformations. Information and Software Technology, 55(2), 365-394.
M.Sc. Ana Rocío Cárdenas Maita
BPMN Prof. Dr. Marcelo Fantinato
Business Process Model and Notation Prof. Dra. Sarajane Marques Peres

2021
Process Mining @ USP

Você também pode gostar