BPMN - Business Process Model and Notation - Modelo e Notação de Processo de Negócio

51 views3665 WordsCopy TextShare
Prof Gilleanes Guedes Engenharia de Software e UML
Esta aula apresenta o padrão de modelagem BPMN - Business Process Model and Notation, uma notação ut...
Video Transcript:
Olá sejam bem-vindos ao canal engenharia de software com ênfase uml Eu sou professor J Denis getes e eu já atuo na área de modelagem de software há vários anos eu tenho quatro livos publicados sobre o assunto e eu já ministrei diversas palestras e cursos técnicos sobre Model de software utilizando a linguagem uml na aula de hoje eu vou ensinar uma outra anotação que é a BPMN uma anotação utilizada principalmente para representar processo de negócio e processos de desenvolvimento software Então vamos iniciar a nossa aula então BPMN significa Business process Model and notation ou modelo e
notação de processo e negócio então a BPMN ela é um padrão gráfico como o nome já diz para modelagem de processo de negócio e por meio desse padrão é possível produzir diagramas de processo de negócio ou Business process diagram bpd E como eu falei essa esse padrão ele também pode ser utilizado para representar de forma gráfica processos de desenvolvimento de software vamos começar falando sobre os diversos elementos do BPMN vamos começar falando sobre eventos bom então um evento o nome já diz representa algo que ocorre durante o processo e os eventos eles afetam o fluxo
do processo de alguma maneira eles têm geralmente uma causa também chamada de gatilho ou Trigger e ou um impacto que é o resultado do evento Existem três tipos de evento o evento de início ou start que determina o início do de um processo o evento de fim ou end que determina o fim de um determinado processo e os eventos intermediários que afetam o fluxo do processo de alguma maneira existem vários tipos de eventos intermediários que nós vamos estudar ao longo dessa aula aqui nós temos dois exemplos de eventos à esquerda nós temos exemplo de evento
de início e à direita nós temos exemplo de evento de fim a diferença básica é que e a borda do evento de início é mais fina que a do evento de enfim mas as duas são representadas por um círculo Ah e nós temos eventos intermediários como eu falei existem vários tipos de eventos intermediários como por exemplo eventos causados pelo recebimento ou pela geração de uma mensagem eventos que ocorrem ou que são gerados quando uma condição de tempo se torna verdadeira eventos de escalonamento em situações que é necessário escalar o processo para o nível superior eventos
de cancelamento eventos causados por erros e eventos de compensação que são situações em que é necessário reverter uma atividade que havia já sido concluída bom ah Aqui nós temos ah exemplos de eventos intermediários essa lista é não exaustiva existem outros tipos de eventos então aqui nós temos um círculo eh envolvendo envelope que representa um evento que é causado pelo recebimento de uma mensagem um Aqui nós temos um outro evento que eh contém um símbolo de relógio analógico que representa o evento causado por uma condição de tempo aqui nós temos esse círculo com essa seta apontando
para cima que é um evento de escalonamento eh esse círculo representando um X representa o evento de cancelamento já este círculo eh contendo esse símbolo de raio representa a ocorrência de um erro e este símbolo com essas setas duplas apontando paraa esquerda representa o evento de compensação ah na verdade esses tipos de eventos intermediários eles também podem ser atribuídos por eventos de início ou de fim então pode acontecer situações em por exemplo que um processo seja iniciado quando uma mensagem for recebida e então o círculo de do evento de início ele vai conter o envelope
ou que um processo serja encerrado por exemplo por um cancelamento E aí então o evento de fim vai conter um x a exemplo dos eventos intermediários [Música] ã vamos falar um pouquinho sobre tarefas então tarefas são basicamente as atividades que são adas durante o processo existem vários tipos de tarefa por exemplo existem as tarefas comuns as tarefas de envio de mensagem as tarefas de recebimento de mensagem que aguardam a chegada de uma mensagem externa as tarefas de usuário Ou seja que são executadas por um usuário com ajuda de um software por exemplo eles podem preencher
um formulário que é fornecido pelo software as tarefas de regra de negócio que executam Automatic uma determinada regra de negócio as tarefas de serviço que executa que são executadas automaticamente por exemplo pode ser execução de um backup automático existem também as tarefas de script que representam ah atividades automatizadas que são executadas por meio de scripts sem a necessidade de intervenção humana e sem a necessidade de se chamar serviços externos e existe a tarefa manual que eh São tarefas como o nome já disz são manuais são executadas por usuários sem auxílio de software ã Aqui nós
temos então exemplos de tarefas aqui nós temos uma tarefa comum ou tarefa padrão que é esse retângulo com as bordas arredondadas sem nenhum desenho sem nenhum símbolo depois nós temos a tarefa de envio de mensagem que é representada por um envelope Preto depois nós temos a tarefa de recebimento de mensagem representada por envelope Branco Aqui nós temos a tarefa de usuário que contém um um símbolo de uma pessoa no canto superior esquerdo aqui nós temos uma tarefa de regra de negócio que vai executar uma regra de negócio automaticamente representada por um símbolo que lembra um
caso de uso estruturado Aqui nós temos uma tarefa de serviço representado por duas engrenagens Aqui nós temos uma tarefa de script representado por essa folha ondulada e Aqui nós temos uma tarefa manual que é representada por esta mão bom ah vamos falar um pouquinho sobre gateways gateways representam basicamente ah situações em que é necessário uma decisão ou ã ou situações em que fluxos divididos são reunidos ou então situações que representam o início de um paralelismo Então os gats eles são elementos de controle de fluxo como eu falei Eles representam pontos de decisão ou pontos de
fusão ou pontos de paralelismo eh por exemplo então Eh pode haver situações em que é necessário escolher um entre diversos fluxos alternativos considerando determinadas condições ou eventos eh também é necessário Em algumas situações representar que o fluxo está sendo dividido em fluxos Paralelos Ou seja que serão executados eh ao mesmo tempo paralelamente ou existem situações em que fluxos que foram divididos anteriormente precisam ser unidos Ahã os gats existem vários tipos de Gates nós vamos falar sobre alguns os gats eles são representados por losângulos Então dependendo do gator eles podem ter um símbolo dentro do losângulo
para eh diferenciá-los bom existe por exemplo Gateway exclusivo ou Exclusive Gateway ou ex Gateway Ah que é o Gateway Provavelmente o Gateway mais comum que representa uma situação em que deve se escolher qual fluxo seguir existem dois ou mais fluxos possíveis e deve-se escolher um deles eh levando em consideração uma determinada condição Então esse tipo de Gate é representado por um losângulo vazio ou em algumas ferramentas com por um losângulo contendo um X dentro dele o x lembra o xor de Exclusive e nós temos o Gateway paralelo ou Parallel Gateway ou and Gateway que representa
uma situação em que o fluxo ele é dividido em vários fluxos Paralelos o mínimo dois ou também uma situação em que fluxos Paralelos foram reunificou fluxo único então Gateway paralelo ele é representado com por losângulo com uma cruz e nós temos o gate inclusivo inclusivo ou inclusive Gateway ou or Gateway que é um um Gateway mais avançado que representa uma situação em que existe uma condição para se escolher entre um ou mais caminhos possíveis mas que eh pode ocorrer situações em que a condição seja verdadeira para dois ou mais caminhos eles possam ser escolhidos simultaneamente
então diferente GAT exclusivo que exige que somente um fluxo seja escolhido o GAT inclusivo ele pode permitir que mais de um fluxo seja ã seguido seja trilhado ao mesmo tempo então eh numa situação em que hajam dois fluxos possíveis um deles pode ser escolhido ou ambos podem ser executados o Git inclusivo ele representado por um losângulo com um círculo e nós temos o Gateway baseado em eventos ou event based Gateway Ah esse Gateway ele espera que ocorra um determinado evento externo e a partir dele se decide se um caminho será seguido ou simplesmente se o
processo continuará sendo executado ah basicamente então o fluxo o o a continuação do fluxo ele vai depender da ocorrência do evento ele só Continuará ou só será iniciado quando o um evento ocorrer bom Aqui nós temos então exemplos de gateways o Gateway exclusivo aqui tá representado por um losângulo vazio mas eventualmente dependendo da ferramenta pode ter um X dentro dele o gate paralelo é representado por losângulo com uma cruz dentro dele o gate inclusivo é representado por um losângulo contendo um círculo e o gate baseado em eventos é representado por um losângulo com um círculo
dentro com um determinado símbolo que pode representar o evento esse símbolo pode variar dependendo da ferramenta por exemplo se for um evento que eh implica A Espera de eh que um determinado tempo seja atingido então aqui em vez desse Pentágono poderá ter um símbolo de relógio analógico vamos falar rapidamente sobre os conectores ou também chamados de objetos de conexão basicamente Eles ligam os elementos de um processo então eles definem como o processo irá fluir de um ponto a outro do processo que caminhos serão seguidos então Existem três tipos principais de conectores no BPMN que são
o fluxo de sequência o fluxo de mensagem e a associação vamos falar um pouquinho sobre cada um então o fluxo de sequência é o mais o conector mais comum que basicamente ele determina a ordem em que Ah será feita a execução das atividades ele é representado por uma seta que parte do elemento anterior e atinge o novo elemento ah existe o fluxo de mensagem que representa troca de mensagens entre raias diferentes nós vamos falar sobre raias com mais detalhes mais adiante mas basicamente raias representam papéis ou setores ou departamentos ah ou qualquer outro tipo de
divisão de uma determinada organização ou software por exemplo e a por essas divisões o processo ele ele tramita ele é se é conduzido e nós temos a o conector de associação que liga um determinado elemento processo a um artefato que pode ser que pode representar dados anotações de texto documentos ã a armazenamentos de dados entre outras possibilidades vamos apresentar agora um exemplo simples de BPMN depois nós vamos melhorar este exemplo Então vamos apresentar um exemplo bem simples sobre como aplicar o bpml num processo de negócios então nós temos o seguinte cenário um funcionário ele precisa
solucionar aliás precisa solicitar um determinado item então o sistema ah ao receber essa solicitação ele precisa verificar a disponibilidade do item no setor de almoxarifado se o item em questão estiver disponível então o sistema solicitará ao xarifado que H envie esse item já se o item não estiver disponível então o sistema ele deverá montar uma solicitação de compra bom Aqui nós temos então um exemplo simples de uso de BPMN baseado naquele cenário Ah então Aqui nós temos um evento de início que é um círculo com a borda fina Aqui nós temos uma seta que representa
o fluxo de sequência como é representado por essa Associação essa linha tracejada que liga o fluxo de sequência a essa anotação de texto que é meramente explicativo a partir do do evento Inicial executado uma tarefa de usuário como representa o símbolo eh no canto superior esquerdo esse essa pessoa aqui representa uma tarefa de usuário onde o funcionário ele solicita Um item Ah ele pode fazer isso por meio de um formulário do sistema o sistema então ele executa uma uma tarefa de serviço onde ele vai verificar a disponibilidade do item E aí nós atingimos um Gateway
um Gateway do tipo exor um Gateway exclusivo onde nós temos dois caminhos possíveis a serem seguidos se o item estiver disponível então será feito uma solicitação deste item ao setor do almoxarifado isso também é uma tarefa de serviço como a gente pode ver pelas engrenagens e após isso o o processo encerrado já se o item estiverem disponível Então deve se solicitar uma compra de item isso também é feito por uma tarefa de serviço como representa o símbolo de engrenagem ah essa tarefa essa atividade ela gera um objeto de dados como vocês podem perceber por essa
linha tracejada que é uma associação dessa tarefa a esse objeto de dados que representa a solitação de compra na verdade pode existir objetos de dados de entrada e objetos de dados de saída nesse exemplo eu não especifiquei mas no exemplo mais avançado eu irei melhorar esse exemplo detalhar melhor esse exemplo aqui é um exemplo bem simplesinho tá e até em completo mas só para só para eh iniciar a demonstrar como se utilizar o bpml depois nós vamos eh apresentar um exemplo mais avançado eh de qualquer forma depois que a compra é feita então ah o
processo encerrado visto que ah o fluxo de sequência ele atinge um evento de fim bom vamos continuar Vamos falar agora sobre partições ou puls e raias ou Lines então partições elas representam entidades que estão envolvidas no processo essas entidades elas podem ser uma organização ou um software por exemplo e nós temos as raias as raias são subdivisões de uma partição elas podem representar um departamento um setor uma divisão ou podem representar papéis que são assumidos pelos usuários que interagem com o processo por exemplo Aqui nós temos o exemplo de partições e raias então Aqui nós
temos uma partição que representa uma organização e ela é dividida em duas raias que representa o funcionário o papel de funcionário que é assumido por determinados usuários do sistema e nós temos uma divisão da organização que é o departamento de almoxarifado nós vamos utilizar essas partições no próximo exemplo e nós temos também subprocessos subprocessos o nome já diz eles representam processo que está contido em um processo maior Ah um subprocesso ele terá sempre seus próprios elementos porém esses elementos podem ou não estar ã explícitos no no processo no diagrama Ahã então quando eles não estão
representados então o sub processo ele é chamado de colapsado e os elementos internos desse subprocesso eles podem estar contidos em outro diagrama normalmente com o mesmo nome do subprocesso ou em outra parte do mesmo diagrama já quando os elementos internos de um subprocesso estão representados explicitamente então o subprocesso é chamado de subprocesso expandido então Aqui nós temos exemplo de subprocesso que representa a avaliação de uma solicitação de compra esse mais esse quadradinho com mais aqui indica que isto é um subprocesso que tem elementos que precisarão ser expandidos que precisarão ser ã Estados em um outro
diagrama ou em outra parte do próprio diagrama em questão e nós temos outros artefatos por exemplo nós temos mensagens que representa o envio de uma mensagem de um papel ou departamento para outro papel ou departamento que esteja envolvido no processo nós temos também o artefato de armazenamento de dados que basicamente representa um repositório de dados um banco de dados que armazena informações úteis para o processo e nós temos os objetos de dados que já foram falados os objetos de dados eles basicamente são documentos artefatos que são gerados ou consultados durante o processo então eles representam
informações que serão utilizadas ou serão geradas durante o processo eles não afetam o fluxo de execução do processo mas ajudam a dar mais contexto sobre os dados que estão sendo manipulados ou gerados ou consultados durante o processo os objetos de dados eles podem ser de entrada ou de saída objetos de entrada eles eh representam informações que precisam ser utilizados por uma atividade por uma tarefa e os objetos de dado de saída representam o resultado de uma atividade o produto de uma atividade um artefato gerado por uma atividade Aqui nós temos exemplos desses artefatos então a
mensagem representada por envelope o armazenamento de dados representado por este símbolo padrão de dados o objeto de dados entrada representado por uma uma folha com uma uma dobra no canto superior direito e uma seta branca uma seta vazia que indica que ele é um objeto de entrada que é utilizado para uma atividade já o objeto de dado de saída é representado pela mesma folha porém com a seta preenchida Ah agora nós vamos dar um exemplo mais avançado de uso do bpml então nós temos o mesmo cenário a primeira parte pelo menos é igual ah mas
nós temos uma segunda parte onde se o item não estiver disponível então a a solicitação de compra ela precisa ser avaliada pelo gerente que irá aprová-la ou não de acordo com seus critérios caso a solicitação ela seja aprovada então o departamento de compras vai solicitar o item a um fornecedor e quando o item chegar o departamento de compras irá encaminhar esse item ao almoxarifado e o almoxarifado enviará o item ao funcionário solicitante então agora nós vamos apresentar um exemplo de bpn BPMN bem mais complexo bem mais detalhado então Ah aqui nós melhoramos o exemplo anterior
nós temos uma partição representando a organização e outra partição representando o fornecedor a partição da organização possui quatro raias uma representando o papel de funcionário outra representando o departamento de almoxarifado outra representando o papel de Ger e outra representando o departamento de compras ah na verdade esse processo poderia ser até melhor detalhado poderia ter mais elementos mas por uma questão de espaço nós simplificamos um pouco esse exemplo então ah o processo se inicia com o funcionário solicitando Um item por meio de uma tarefa de usuário o sistema então Verifica a disponibilidade do item por meio
de uma tarefa ou a atividade de serviço como demonstra a a engrenagem Aqui nós temos um um fluxo a partir de um armazenamento de dados representa representando a consulta no estoque depois eh o fluxo de sequência ele atinge ã um Gateway um Gateway exclusivo que como no exemplo anterior se testa qual fluxo eh seguir através das condições se o item está disponível ou não se o item estiver disponível é feito uma solicitação do item A setor de xarifado que gera um objeto de dados de saída contendo uma solação de item Ah e depois o fluxo
atinge vai pro setor de albo xarifado onde o item é enviado manualmente Por meio dessa a dessa tarefa manual e depois ã um funcionário do Alon xarifado ele registra o atendimento da sua Estação e da baixa no stoque existe um fluxo para o o armazenamento de dados novamente é o mesmo armazenamento de dados só que ele foi repetido para não haver muito cruzamento de linhas e depois desse registro o fluxo é encerrado por esse evento de Fim agora se o item estiver disponível então é feito uma solicitação de compra do item é gerado então um
objeto proo de dados de saída que representa a solicitação de compra e essa solicitação ela é repassada pelo gerente que por Ah E aí se atinge um Gateway eh exclusivo eh onde é feito um teste se a Sol citação for recusada então o processo se encerra já Sea solicitação fori aprovada eh o fluxo segue pro departamento de compra onde é realizado um pedido de compra e esse pedido de compra ele eh gera um pedido que é enviado para o fornecedor aqui representado por uma mensagem que está posicionado nas linhas entre as duas partições a da
organização e do fornecedor e nesse fluxo no no no na partição do fornecedor o pedido atendido e em seguida enviado E aí esse fluxo aqui é encerrado ah porém o fluxo do departamento de compras ele fica aguardando que o pedido seja recebido por meio dessa ah desse evento intermediário que contém uma mensagem que basicamente está esperando o recebimento do item que foi solicitado quando o item chega então é executada a atividade de concluir o pedido de compra e atualização do estoque aqui novamente nós temos um fluxo pro armazenamento de dados estoque e e após isso
então o fluxo volta para o mif onde então o item é enviado manualmente para o funcionário o sist o o funcionário do Amon xarifado ele registra o atendimento à sua Estação e da baixa no estoque Então temos um fluxo pro estoque e depois disso o processo encerrado Então como falei ess aqui é um símbolo é um exemplo simples já não tão simples mas um pouco resumido de um processo BPMN Por uma questão de espaço talvez a gente pudesse criar atividades mais detalhadas certo mas por uma questão de espaço nós eh representamos esse processo eh essa
ilustração de processo que passa por diversas eh por duas partições e por diversas raias contendo papéis ou divisões da organização Ah vou chamar atenção aqui para um pequeno erro do desse diagrama que eu não tinha percebido aqui esse esse fluxo é esse símbolo aqui é um símbolo de fim normal aqui a seta ela por algum motivo saiu errado aqui no diagrama essa seta saiu apontando para cima mas o símbolo é o mesmo de evento de fim então se o se a Sol Estação for recusada pelo gerente então o processo encerrado por algum motivo no diagrama
seta saiu para cima OK bom então nós concluímos essa aula sobre BPMN eu espero que vocês tenham considerado essa aula útil se vocês gostaram desse vídeo então peço que vocês compartilhem com quem possa ter interesse curtam esse vídeo Se vocês gostaram e se ainda não estão inscritos eu peço que se inscrevam no canal obrigado pela atenção nós nos vemos nas próximas aulas
Related Videos
Mapeando um processo - BPM em 1 hora!
58:00
Mapeando um processo - BPM em 1 hora!
Gestão em Curso
10,364 views
How To Speak Fluently In English About Almost Anything
1:49:55
How To Speak Fluently In English About Alm...
EnglishAnyone
2,845,059 views
Técnica de Leitura Baseada em Perspectivas
59:28
Técnica de Leitura Baseada em Perspectivas
Prof Gilleanes Guedes Engenharia de Software e UML
115 views
BPM na prática: processo de atendimento ao cliente.
38:52
BPM na prática: processo de atendimento ao...
Gestão em Curso
712 views
Como Soluções de Lakehouse Revolucionam a Integração de Dados em 2024
41:43
Como Soluções de Lakehouse Revolucionam a ...
Adriano Ribeiro
31 views
PHP Full Course For Beginners | PHP Full Course | PHP Tutorial | Intellipaat
3:46:55
PHP Full Course For Beginners | PHP Full C...
Intellipaat
292,016 views
ELK Stack Tutorial For Beginners | Elastic Stack Tutorial | DevOps | Intellipaat
3:53:06
ELK Stack Tutorial For Beginners | Elastic...
Intellipaat
261,451 views
Técnicas de Leitura Orientadas a Objetos - OORTs
44:51
Técnicas de Leitura Orientadas a Objetos -...
Prof Gilleanes Guedes Engenharia de Software e UML
47 views
Uso de metodologias colaborativas na concepção e desenvolvimento de sistemas informacionais
1:07:34
Uso de metodologias colaborativas na conce...
Biblioteca UEMS
147 views
Realtime Chat App in React Native and AWS (Backend) 🔴
3:29:01
Realtime Chat App in React Native and AWS ...
notJust․dev
159,068 views
Basis Data || ANDI SETIAWAN
24:58
Basis Data || ANDI SETIAWAN
Andi Setiawan
4 views
Modelagem de Processos com BPMN - aprenda com exemplos
24:45
Modelagem de Processos com BPMN - aprenda ...
leguarino
63,169 views
Modelo Espiral Ganha-Ganha (Win-Win Spiral Model) - Negociação de Requisitos
31:11
Modelo Espiral Ganha-Ganha (Win-Win Spiral...
Prof Gilleanes Guedes Engenharia de Software e UML
22 views
Técnica de Leitura Baseada em Cenários
41:42
Técnica de Leitura Baseada em Cenários
Prof Gilleanes Guedes Engenharia de Software e UML
159 views
Easy WinWin - Metodologia Colaborativa de Negociação de Requisitos
39:10
Easy WinWin - Metodologia Colaborativa de ...
Prof Gilleanes Guedes Engenharia de Software e UML
20 views
🔴 Let's build a Whatsapp Clone with NEXT.JS! (1-1 Messaging, Live Status, Styled-Components, React)
3:48:00
🔴 Let's build a Whatsapp Clone with NEXT....
Sonny Sangha
1,506,663 views
Robot Framework Tutorial For Beginners | Robot Framework With Python | Intellipaat
3:56:36
Robot Framework Tutorial For Beginners | R...
Intellipaat
296,536 views
What is Sharepoint | Microsoft Sharepoint Turorial | Learn Sharepoint | Intellipaat
3:59:26
What is Sharepoint | Microsoft Sharepoint ...
Intellipaat
247,559 views
Google Cloud Platform Tutorial 2024 | Google Cloud In Depth Tutorial | Cloud Computing | Simplilearn
3:49:55
Google Cloud Platform Tutorial 2024 | Goog...
Simplilearn
1,256,926 views
Aula 1 do Curso de BPMN 2.0 - O Básico
1:09:29
Aula 1 do Curso de BPMN 2.0 - O Básico
CANAL VALOR
139,350 views
Copyright © 2024. Made with ♥ in London by YTScribe.com