Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Modelagem de Processos de Negócios - Notação BPMN (Parte 3)

Modelagem de Processos de Negócios - Notação BPMN (Parte 3)

Introdução à modelagem de processos de negócios, usando BPMN.
Notação BPMN (Business Process Modeling Notation)

Estes slides são parte de um treinamento sobre Gestão de Processos de Negócios (BPM). Se tiver interesse em executar um treinamento sobre este assunto em sua empresa ou organização, entre em contato: [email protected]

Rodrigo Rebouças de Almeida

December 04, 2018
Tweet

More Decks by Rodrigo Rebouças de Almeida

Other Decks in Business

Transcript

  1. Modelagem de Processos de
    Negócios - PARTE 3

    Notação BPMN
    1
    Rodrigo Rebouças de Almeida
    http://rodrigor.com
    [email protected]
    http://twitter.com/rodrigor

    http://fb.com/rodrigoreboucas

    View Slide

  2. 2
    Estes slides são parte de um treinamento sobre análise
    de processos de negócios.
    Se você ou sua empresa tiverem interesse em um
    treinamento sobre como identificar, modelar, analisar e
    otimizar processos de negócios, entre em contato.
    http://rodrigor.com
    [email protected]

    View Slide

  3. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Reuso de atividades e
    subprocessos
    3

    View Slide

  4. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Reuso de processos
    • Alguns subprocessos precisam
    ser reutilizados.
    • São considerados “processos
    globais”.
    • Devem possuir uma interface
    bem definida (entrada e saída).
    • São referenciados através de
    “atividades de chamada”.
    4
    Atividade de chamada
    (call activity)

    View Slide

  5. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Atividades de chamada
    • Mesma notação de atividades ou
    subprocessos, só que possuem borda
    em negrito.
    • Podem referenciar atividades globais
    ou processos globais.
    5
    Atividade de chamada
    (call activity)

    View Slide

  6. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Reuso de processos: exemplo
    6

    View Slide

  7. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos
    7

    View Slide

  8. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Comportamentos disparados
    por eventos
    • Ação iniciada após a ocorrência
    de um evento específico
    • Por exemplo, um evento de
    mensagem cria uma nova
    instância de processo quando
    uma nova mensagem é recebida
    • A execução da ação disparada
    pelo evento é imediata.
    8

    View Slide

  9. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos que você precisa memorizar
    •Tempo
    •Mensagem
    •Erro
    9

    View Slide

  10. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos temporizados: Início
    • Disparam o início de uma
    instância do processo, a partir
    de um evento de tempo
    10

    View Slide

  11. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos temporizados: Intermediário
    • Provocam uma espera por
    algum intervalo de tempo.
    Exemplos:
    • 6 horas, 1 dia, semana,
    mês…
    • prazo para recurso
    11

    View Slide

  12. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos temporizados: Borda
    • Em BPMN não definimos o
    tempo de duração de uma
    atividade
    • No entanto, podemos definir o
    que acontece se algum prazo
    for vencido
    • O evento de borda pode ou
    não interromper a atividade
    12

    View Slide

  13. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos de tempo: múltiplas atividades
    • As vezes precisamos definir um prazo para um conjunto de atividades.
    • Coloque as atividades em um sub-processo e defina um evento de
    tempo na borda do sub-processo.
    13

    View Slide

  14. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de mensagem
    • Qual a diferença entre uma atividade de envio de mensagem (a) e
    um evento de envio de mensagem (b)?
    14
    (a) (b)

    View Slide

  15. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Atividade: Envio de Mensagem
    • Uma atividade possui um ator.
    • Uma atividade pode dar errado.
    • Uma atividade possui uma
    duração “não instantânea”.
    15

    View Slide

  16. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento: Envio de Mensagem
    • Use evento quando:
    • O ator que envia a mensagem
    não é relevante.
    • O tempo de envio da
    mensagem não é relevante.
    • Não é possível dar erro no
    envio da mensagem.
    16

    View Slide

  17. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Não envie mensagens dentro de processos
    17

    View Slide

  18. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Não envie mensagens dentro de processos
    18

    View Slide

  19. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Não envie mensagens dentro de processos
    19
    Se quiser representar um fluxo de documento, use um “objeto
    de dados”

    View Slide

  20. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Mensagens síncronas / assíncronas
    • As atividades de envio e recebimento de mensagens são
    assíncronas.
    • A atividade não aguarda o recebimento da resposta de uma
    mensagem.
    • No diagrama, a atividade

    “Solicitar resposta” termina sem

    obter resposta da Solicitação.
    20

    View Slide

  21. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Exemplo Mensagens
    21
    E se o cliente nunca responder?

    View Slide

  22. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Exemplo Mensagens
    22

    View Slide

  23. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de Mensagem: borda
    • Usado quando a atividade está
    aguardando o recebimento de
    alguma mensagem.
    • Exemplo: o processamento de
    um pedido aguardando o
    cancelamento de um cliente.
    • Pode ser um evento de
    interrupção ou um evento que
    não interrompe a atividade
    23

    View Slide

  24. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de Mensagem: borda
    24

    View Slide

  25. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos de erro
    • Representa uma exceção ao
    processar uma atividade.
    • Sempre interrompem a
    execução da atividade
    • Uma atividade pode gerar
    diversas exceções diferentes.
    25

    View Slide

  26. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Eventos de erro: subprocessos
    • Erros gerados por subprocessos
    (eventos finais) devem ser
    “capturados” como eventos de
    borda no processo de mais alto
    nível.
    26

    View Slide

  27. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de escalação
    • Representa uma "transferência de responsabilidade”.
    • Alguma condição que impede a execução da atividade
    mas que foge ao escopo desta.
    27

    View Slide

  28. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de sinalização
    • Não define uma relação direta entre
    quem lança o evento e quem o trata,
    diferente dos eventos de mensagem,
    erro e escalação.
    • Permite “quebra de acoplamento”
    entre os processos.
    • Permite implementar um padrão
    “publish-subscribe” em processos de
    negócios.
    28

    View Slide

  29. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de sinalização: exemplo OGE
    29

    View Slide

  30. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento condicional
    • Evento gerado a partir do
    monitoramento até que uma
    condição específica seja verdadeira.
    30

    View Slide

  31. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de ligação
    • Representa uma continuidade de um fluxo.
    • Apenas uma representação para ajudar na
    diagramação.
    • Equivalente a um “GO TO" em linguagens
    de programação.
    • A ligação é definida pelos mesmos nomes,
    no evento que "lança" e o evento que
    “recebe".
    31

    View Slide

  32. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Evento de ligação
    32

    View Slide

  33. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Subprocesso de eventos
    • Processo representado por
    um subprocesso com borda
    pontilhada.
    • O evento pode interromper
    ou não o subprocesso do
    qual faz parte.
    33

    View Slide

  34. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Iteração
    34

    View Slide

  35. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Laços, iterações…
    • BPMN permite que
    representemos atividades ou
    subprocessos que devem ser
    executados múltiplas vezes.
    35

    View Slide

  36. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Laço
    • Equivalente a um “do-while” em
    linguagens de programação.
    • Não se sabe a quantidade de
    repetições.
    • A condição de parada é
    indicada com uma anotação
    36

    View Slide

  37. Rodrigo Rebouças de Almeida - http://rodrigor.com
    Atividade multi-instância
    • Equivalente a um “for”, em
    linguagens de programação.
    • A quantidade de repetições é
    conhecida.
    • Podemos indicar se a atividade
    deve ser executada em paralelo
    (exemplo: "Notificar candidatos”),
    ou em sequência (exemplo:
    "Entrevistar candidatos")
    37

    View Slide