Business Process Model and Notation 2.0.2 Thiago Gottardi Elisa Yumi Nakagawa Paulo Cesar Masiero Agradecimentos Especiais Roberto dos Santos Rocha (ICMC) João Porto de Albuquerque (ICMC) Marcelo Fantinato (EACH) Anderson da Silva Marcolino (ICMC) Felipe Diniz Dalillo (ICMC)
Roteiro Introdução; Diagrama de Colaboração; Linguagem; Léxico Básico; Exemplos Sintáticos; Exemplos de Processos; Referências.
Roteiro Léxico Básico Introdução + Exemplos Sintáticos Exemplos de Processos Referências
Roteiro Léxico Básico Introdução BPMN Linguagem Exemplos Sintáticos Exemplos de Processos + Referências
Introdução: BPMN e Colaboração BPMN possui definição semi-formal Linguagem; Especificação OMG. http://www.omg.org/spec/bpmn/2.0.2/pdf/
Introdução BPMN possui definição semi-formal Linguagem; Especificação OMG. Linguagem: Léxico (conjunto de palavras); Sintático (estrutura de frases). http://www.omg.org/spec/bpmn/2.0.2/pdf/
Introdução Léxico { estudadas, ordem, palavras, são, sem }; Sintático: Palavras são estudadas com ordem. http://www.omg.org/spec/bpmn/2.0.2/pdf/
Léxico Básico Atividade Nome de Atividade Evento Passagem de Controle/Fluxo Passagem de Mensagem Piscina Piscina Piscina com Raias Artefato nome [estado] Anotação Textual Porta Associação Piscina Raia Raia Comentário Grupo Mensagem Nós de Fluxo Arestas de Conexão Piscinas (Perspectivas) Outros objetos http://www.omg.org/spec/bpmn/2.0.2/pdf/ (Seção 7.1)
Atividade Nome de Atividade ou Tarefa Nome de Subprocesso + Atividade em Loop Transação + Realização de trabalho; Atomica ou não: Transações. Sub-dividido em Atividade em Paralelo Sequencial Sub-processos; Tarefas.
Evento Início Exemplos de Dimensões Mensagem Ocorrência, instante; Disparo ou resultado Intermediário Tempo Causa ou impacto. Fim
Porta (Gateway) Ocorrência, instante; Exclusivo Inclusivo Disparo ou resultado + X Paralelo * Complexo Evento Exclusivo + Evento (paralelo) Causa ou impacto.
Arestas Fluxo Normal ou Não Controlado Fluxo Condicional Fluxo Padrão Z \ Fluxo Exceção Associação Mensagem Associação de Compensação Relação entre objetos; Tipos: Fluxo de controle; Associação; Mensagem.
Piscinas Piscina Piscina Agrupamento de objetos Perspectivas. Piscina com Raias Piscina Raia Raia
Anotação Textual Combinação Associação; Rótulo. Comentário Rótulo Comentário.
Grupo Agrupamento de objetos Genérico.
Artefatos Artefatos construção humana. nome do artefato [estado] entrada [estado] Na prática: coleção [estado] Data Store Banco de Dados saída [estado] Dados. Estado é opcional Descrição de como está o artefato no instante.
Dimensões de Eventos Message Timer Error Escalation Cancel Compensation Catching Throwing Non-Interrupting Eventos podem possuir outra dimensão Categoriza o tipo do evento. Conditional Link Signal Terminate Multiple Parallel Multiple
Dimensões de Eventos Início Intermediário Fim Captura Catching Lança Throwing Sem Non-Interrupting Interrupção Mensagem Message Temporização Timer Erro Error Aumento Escalation Cancelamento Cancel Compensação Condicional Compensation Eventos podem possuir outra dimensão Categoriza o tipo do evento. Enlace Conditional Sinal Link Terminação Signal Multiplo Terminate Paralelo Multiplo Multiple Parallel Multiple
Exemplo: Divergência
Exemplo: Divergência Divergência Implícita Porta de Paralelo
Exemplo: Convergência
Exemplo: Convergência Convergência Implícita Porta de Paralelo
Exemplo: Exclusivo com Default Condition 1 Default
Exemplo: Exclusivo com Default Condition 1 Default Porta de Exclusivo
Exemplo: Repetição (Loop) Condition Default Default Condition
Exemplo: Repetição (Loop) Condition Default Default Condition Repita até Condição Repita enquanto Condição
Exemplo: Exceção Fluxo de Exceção
Exemplo: Exceção Fluxo de Exceção Evento Intermediário de Exceção
Exemplo: Exclusivo com Default Tarefas de Recebimento Eventos Intermediários
Exemplo: Mensagem Piscina1 Piscina2 Raia1 Raia2 Enviar a Receber b
Exemplo: Mensagem Piscina1 Piscina2 Raia1 Raia2 Enviar a Receber Receber b Enviar
Exemplo: Timer e Link
Exemplo: Sinal B B Completado C A E D B Completado Observação: Uso de divergência/convergência implícita pode causar problema: Exemplo: repetição indesejada de E.
Exemplo: Sinal A B B Completado C + + B Completado D E Recomenda-se usar portas paralelas para divergência e convergência.
Exemplo: Transação Reservas B o o kin g s Sucesso S u cce ssfu l B o o kin g s Cobrar cliente C harge B uyer E x cep tio n s Exceções (H a za rd s) (Ameaças ao sucesso) Fracasso F a ile d B o o kin g s Tratar H a n d le com th ro u g h C suporte u sto m e r S e rvice Enviar S e nd Unotificação n availa bility N otice
Exemplo: Transação Reservas B ookings Reserva Voo Book Flight Reserva B ook H otel Hotel Cancela C ancel Voo Flight Sucesso S uccessful B ookings Cobrar cliente C harge B uyer Cancela Hotel S end H otel C ancellation Transação Transaction Fracasso Failed Bookings Enviar Send U navailability notificação N otice E xceptions (H azards) Exceções (Ameaças ao sucesso) H andle Tratar through Ccom ustom er suporte S ervice
Exemplos Concretos Exemplos: Notas de Aula Passadas; OMG.
Exemplos
Exemplos
Exemplos
Exemplos
Exemplo: Observação
Exemplos
Tarefa Modele o diagrama utilizando BPMN para o processo de negócio abaixo: Medalha Pizzas é uma pizzarria delivery que possui cinco anos de mercado. Para realizar os pedidos, os clientes devem selecionar a pizza no cardápio para que a atendente registre seu pedido. Após registrar o pedido do cliente, o atendente passa o pedido para o pizzaiolo e como atividade paralela fica responsável por receber novas ligações e reclamações sobre o atraso de pizzas, que geralmente ocorrem quando o atraso do pedido atinge 60 minutos. Dessa forma, o atendente pode acalmar o cliente informando-o a situação de seu pedido. Quando o pizzaiolo recebe o pedido, a sua função é preparar a pizza e colocá-la no forno e assim que a pizza estiver pronta, o entregador deve levar a pizza até o cliente. O cliente por sua vez deve realizar o pagamento e receber o recibo do entregador. Após isso, o cliente pode degustar o seu pedido.
Correção de Tarefa Notas: (0 a 4) 0/4: 1/4: 2/4: 3/4: 4/4: Não entregou um processo; Graves falhas de notação e/ou requisitos; Não cumpre um ou mais requisitos; Pequenas falhas ou esquecimentos; Correto e válido.
Tarefa ERRADO
Tarefa Ambiguidade de término
Tarefa
Exemplo: Busca do Bilhete Sugerido por http://tynerblain.com/blog/2006/08/14/bpmn-end-events-2/ Imagem 2005 Warner Bros. Pictures
Exemplo: Busca do Bilhete Salts Nuts Processa Lote Processa Caixa Pega Lote Distribui Caixas Abrir Caixa Processa Lote + Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) default / / X / X X acabou (não achou) achou acabou
Exemplo: Busca do Bilhete Fornecedor Salts Nuts Processa Lote Processa Caixa Leva Lote Pega Lote Distribui Caixas Abrir Caixa Processa Lote + Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) default / / X / X X acabou (não achou) achou acabou
Exemplo: Busca do Bilhete Fornecedor Salts Nuts Processa Lote Processa Caixa Leva Lote Pega Lote Distribui Caixas Abrir Caixa Processa Lote + Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) default / / X / X X acabou (não achou) achou acabou
Exemplo: Busca do Bilhete Fornecedor Salts Nuts Processa Lote Processa Caixa Leva Lote Pega Lote Distribui Caixas Abrir Caixa Processa Lote + Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) Pede Lote default / / X / X X acabou (não achou) achou acabou
Exemplo: Busca do Bilhete Fornecedor Salts Nuts Processa Lote Processa Caixa Leva Lote Pede Lote Distribui Caixas Abrir Caixa Pega Lote Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) Processa Lote + default / / X / X X acabou (não achou) achou acabou
Exemplo: Busca do Bilhete Fornecedor Salts Nuts Processa Lote Processa Caixa Leva Lote Pede Lote Distribui Caixas Abrir Caixa Repõe Estoque Pega Lote Processa Caixa + default (mais caixas) Abrir Barra default (mais barras) Processa Lote + default / / X / X X acabou (não achou) achou acabou
Referências Business Process Model and Notation (BPMN) Disponível em: http://www.omg.org/spec/bpmn/2.0.2 Baldam, R. et al. Gerenciamento de Processos de Negócios. São Paulo: Érica, 2011. Weske, M. Business Process Management: Concepts, Language, Architectures. Hidelberg: Springer-Verlag, 2007. http://blog.goodelearning.com/bpmn/common-bpmn-modeling-mistakes-best-practices-basic-events/ http://blog.goodelearning.com/bpmn/common-bpmn-modeling-mistakes-swimlanes/