Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutorial de BPMN
Tutorial de BPMN
Viso Geral
um padro para modelagem de processos de negcio que fornece uma notao grfica para
especificao de processos de negcio em um DPN (Diagrama de Processo de Negcios). Ela baseada
em uma tcnica de diagramao de fluxo muito similar ao diagrama de atividades da UML (Unified
Modeling Language). O objetivo suportar o gerenciamento de processos de negcio tanto para um
usurio tcnico quanto para usurio de negcio por meio de uma notao que seja intuitiva para todo e
qualquer usurio de negcio, porm, seja tambm eficiente para representar processos complexos.
Fornece um mapeamento entre os grficos da notao e as construes subjacentes das linguagens de
execuo, particularmente BPEL (Business Process Execution Language).
Sua notao tem como meta principal fornecer uma notao padro que seja compreensvel por todos os
interessados do negcio isso inclui os seguintes personagens:
Analistas de Negcio:
o Criam e refinam os processos
Desenvolvedores Tcnicos:
o Responsveis pela implantao dos processos
Gerentes de Negcio:
o Monitoram e gerenciam os processos.
Chegando a ser uma linguagem para transpor a lacuna da dificuldade de comunicao entre o desenho do
processo de negcio e a implementao.
Escopo
A norma BPMN restrita a suportar os conceitos de modelagem que so aplicveis a processos de
negcio. Outro tipo de modelagem criado ou realizado por organizaes com outra finalidade no
podero ser atendidas pelo escopo da norma BPMN.
Modelagens do tipo de estruturas organizacionais, colapsos funcionais, modelos de dados no podem ser
feitos por meio da norma BPMN. Mesmo que na norma haja fluxo de dados, atividades, diagrama de
colaborao, eventos e outros ela no tem o propsito de substituir um diagrama de dados por exemplos.
Elementos
A modelagem feita por diagramas simples com um pequeno conjunto de elementos grficos. Uma
notao grfica que tem por objetivo prover instrumentos para o mapeamento do processo seja realizada
de maneira padronizada. Ter a capacidade de mapear os processos internos e externos da organizao,
atualizar seus modelos de acordo com as regras estabelecidas na empresa e sem afetar as especificaes
anteriores.
Os elementos so divididos em quatro categorias bsicas:
Objetos de Fluxo
Objetos de Conexo
Swimlanes
Artefatos
Objetos de Fluxo
Objeto
Descrio
Evento
Atividade
Gateway
Figura
Objetos de Conexo
Objeto
Descrio
Fluxo de
seqncia
Fluxo de
mensagem
Associao
Figura
Swimlanes
So mecanismos de organizao das atividades em categorias visuais separadas, Podem dizer que so
diagramas de fluxo com mais algumas propriedades e caractersticas.
Objeto
Descrio
Pool
Lane
Pools
o
o
Figura
Lanes
o
o
o
Tem como objetivo a separao das atividades associadas para uma funo ou papel
especfico
O lane representa um departamento dentro dessa organizao que representada pelo
pool.
Veja no exemplo abaixo:
Artefatos ( artefacts )
Possibilitam a ilustrao das entradas e sadas nas atividades dos processos.
Objeto
Descrio
Objetos de dados
Grupo
Anotaes
Figura
Exemplo:
Eventos
Ocorrncia que dispara uma atividade e so categorizadas pelo tipo (incio, intermedirio e fim) e pelo
gatilho (nenhum, mensagem, temporizador, condicional, sinal, exceo, cancelamento, compensao,
ligao, mltiplo ou terminao). O smbolo bsico de um evento um pequeno crculo que pode ser
complementado pelo seu tipo e seu gatilho. O incio representado por uma borda fina, o evento
intermedirio representado por uma borda dupla e o evento de fim representado por uma borda
espessa.
Descrio
Nenhum
Mensagem
Sinal
Representao
Mltiplo
Tipo
Descrio
Nenhum
Mensagem
Representao
Ligao
Sinal
Mltiplo
Descrio
Nenhum
Mensagem
Exceo
Indica que uma exceo nomeada deve ser gerada. A exceo ser
capturada pelo evento intermedirio receptor de exceo, com o mesmo
cdigo de erro ou nenhum cdigo de erro, que est na fronteira da
atividade pai imediatamente acima (hierarquicamente). O comportamento
indefinido se nenhuma atividade no processo possui tal evento
intermedirio receptor de exceo. O sistema que executa o processo
pode definir um tratamento adicional de exceo neste caso. O tratamento
comum seria o trmino da instncia do processo.
Representao
Indica que um sinal ser transmitido quando o fim for alcanado. Observe
que o sinal, o qual transmitido para qualquer processo que possa receber
o sinal, pode ser enviado atravs de nveis de processos ou pools, mas no
uma mensagem (o qual possui origem e destino especficos).
Trmino
Mltiplo
Atividades
Trabalho executado dentro de um processo de negcio e dividido em atmica ou no-atmica
(composta). Atividades que fazem parte de um diagrama de processos de negcio so: processo,
subprocesso e tarefa. Entretanto, um processo no um objeto grfico especfico, mas um conjunto de
objetos grficos.
Subprocesso
Atividade composta que possui detalhes definidos de um fluxo de outras atividades. Pode ser
denominado um objeto grfico dentro de um fluxo de processo, mas possibilita a expanso para
exibir outro processo embutido ou reutilizvel. Possibilita tambm o compartilhamento da
mesma forma grfica que um objeto de tarefa.
Esta figura deve ser um retngulo com bordas arredondadas e deve ser desenhado com uma linha
fina, preta e singular. Referente ao uso de texto, cor, tamanho e linhas para um subprocesso
devem seguir regras definidas na seo 7.4 (pgina 41) da especificao BPMN verso 2.0 da
OMG, mas com a ressalva de que a fronteira desenhada com uma linha dupla ser reservada para
subprocessos que possuem transao.
Quando se encontra no estado de uma forma contrada h uma ocultao dos seus detalhes.
Estando na forma expandida que exibe seus detalhes dentro da viso a qual ele se encontra. Na
forma contrada, o objeto utiliza marcador para diferenci-lo de um objeto de tarefa, este
marcador deve ser um pequeno quadrado com um sinal de mais (+) dentro e ficar posicionado no
centro inferior do objeto conforme a ilustrao abaixo.
Subprocesso contrado
Os subprocessos quando expandidos so usados para vrios propsitos. O desenrolar de um
processo hierrquico onde todos os detalhes possam ser exibidos ao mesmo tempo, no
tratamento de excees de um contexto que ser aplica em um determinado grupo de atividades e
as compensaes tambm podem ser tratadas de forma semelhante. Conforme a ilustrao
abaixo:
Subprocesso expandido
Ao serem expandidos, os subprocessos podem ser usados como um mecanismo para exibio de
um grupo de atividades paralelas de forma mais compacta. Na ilustrao abaixo, as atividades C
e D esto includas em subprocesso expandido. Estas duas atividades sero executadas em
paralelo.
Mas no mesmo exemplo no se tem os eventos de incio, de fim e nem de sequncia. Com o
recurso das "caixas de paralelismo" a razo para que eventos de incio e fim sejam objetos
opcionais.
H cinco tipos de marcadores padres para subprocessos na BPMN. O marcador contrado pode
ser combinado com outros quatro marcadores. O de enlace, multi-instncias, ad-hoc e o de
compensao. Um marcador contrado pode ter de um a trs destes outros marcadores em todas
as combinaes com exceo das combinaes que possuem o marcador de enlace com o
marcador multi-instncias. Quando o marcador se repete deve ser desenhado com uma pequena
linha com uma cabea de seta apontando para o final dela mesma. Este marcador pode ser usado
em combinao com qualquer um dos outros, exceto o de multi-instncias. Marcador que possui
mltiplas instncias deve ser um conjunto de trs pequenas linhas verticais em paralelo. No caso
de um marcador multi-instncias pode ser usado em combinao com todo e qualquer um dos
outros marcadores exceto o de enlace.
Marcador para um subprocesso que no possui ordem para suas atividades DEVE ser um sinal
de til. No caso do ad-hoc pode ser usado em combinao com todo e qualquer um dos outros
marcadores. Em caso de ser um marcador de compensao deve ser um par de tringulos
apontando para a esquerda, ele pode ser usado em combinao com todo e qualquer um dos
outros marcadores. Mas todos estes marcadores devem ser agrupados ao centro na parte inferior
da representao grfica. Conforme a ilustrao abaixo:
Enlace
Multi-instncias
Ad-hoc
Compensao
Subprocesso Embutido
Atividade que possui outras atividades, ou seja, um processo dentro de outro. Ela dependente
do processo pai e possui visibilidade para os dados globais do processo pai. No h necessidade
de mapeamento de dados, pois, os objetos dentro de um subprocesso embutido, dependente de
seu processo pai, no possuem todas as caractersticas de um diagrama de processos de negcio
completo, como pools e lanes. A viso expandida de um subprocesso embutido possui objetos de
fluxo, conexo e artefatos. Os eventos de incio para um subprocesso embutido devem ser do tipo
nenhum, ou seja, sem gatilho.
Subprocesso Reutilizvel
Atividade dentro de um processo que chama outro processo que existe em um diagrama de
processos de negcio. O processo chamado no dependente do processo pai do objeto do
subprocesso reutilizvel nos dados globais. Este por sua vez pode passar dados para o processo
chamado e tambm pode receber dados do processo chamado e existir em um diagrama
separado que pode ter mltiplos pools.
Qualquer exibio do processo chamado, at mesmo a exibio expandida dentro do processo
chamador, deve mostrar o diagrama inteiro no qual o processo chamado reside. Mapeamento de
dados ser somente para o processo chamado e no para os demais no diagrama chamado. O
processo chamado deve ser instanciado como um subprocesso de um evento de incio sem
gatilho ou tipo nenhum. Por ser reutilizvel, o processo poderia ser instanciado como um
subprocesso por outros objetos de subprocesso independentes, mesmo que seja no mesmo ou em
outro diagrama. Pode ser instanciado como um processo de alto nvel atravs de um evento de
incio com algum gatilho.
Subprocesso de Referncia
H momentos em que o modelador deseje referenciar outro subprocesso que tenha sido definido,
no caso de dois ou mais subprocessos compartilham exatamente o mesmo comportamento e
propriedades e quando um referencia o outro, os atributos que definem o comportamento
somente devem ser criados e mantidos em um nico local.
Subprocesso de transao
Todo e qualquer subprocesso expandido ou contrado pode ser denominado como um subprocesso de
transao, pois, ele possuir um comportamento especial que controlado por um protocolo de
transao. A fronteira da atividade ser uma linha dupla para indicar que se trata de uma transao.
De acordo com a ilustrao abaixo podemos observar:
Concluso Bem Sucedida: ser mostrada como um fluxo de sequncia normal que deixa o
subprocesso.
Concluso Fracassada ou Cancelada: no momento que uma transao cancelada, as
atividades dela estaro sujeitas s aes de cancelamento. Estas por sua vez podem incluir o
desfazimento do processo e a compensao para atividades especficas. Em mecanismos de
interrupo de um subprocesso no podem causar compensao como se fosse uma exceo, um
temporizador ou qualquer outro para uma atividade no transacional. Um evento intermedirio
de cancelamento, anexado fronteira da atividade, direcionar o fluxo depois que a transao
tiver sido desfeita e todas as compensaes tiverem sido completadas. O evento intermedirio de
cancelamento somente pode ser usado quando anexado fronteira de uma atividade da
transao. Ele no pode ser usado em qualquer fluxo normal e no pode ser anexado a uma
atividade no transacional. Existem dois mecanismos que podem sinalizar o cancelamento de
uma transao:
Um evento de fim com cancelamento alcanado dentro do subprocesso de transao.
E este somente pode ser usado dentro de um subprocesso de transao.
Uma mensagem de cancelamento pode ser recebida atravs do protocolo de transao
que est suportando a execuo do subprocesso de transao.
3.
Perigo: isto significa que algo terrivelmente errado aconteceu e que nem uma concluso bem
sucedida nem uma concluso fracassada so possveis. Usamos uma exceo para mostrar
perigo. Quando um perigo detectado, a atividade interrompida (sem compensao) e o fluxo
prossegue pelo evento intermedirio de exceo.
O comportamento ao final de um subprocesso de transao bem sucedida levemente diferente
de um subprocesso normal. Quando cada caminho do subprocesso de transao alcana seu final
que no seja um evento de fim com cancelamento, o fluxo no retorna imediatamente para o seu
processo pai, como acontece em um fluxo normal. Primeiro, o protocolo de transao tem que
verificar se todos os participantes completaram com sucesso suas partes da transao. Na
maioria das vezes isso ocorrer sem problemas e o fluxo retornar para o processo pai. Mas
possvel que um dos participantes possa finalizar com algum problema que cause um
cancelamento ou um perigo detectado. Neste caso, o fluxo prosseguir pelo evento intermedirio
apropriado, mesmo que aparentemente tenha finalizado com sucesso.
Tarefa
Atividade atmica que includa dentro de um processo. usada quando o trabalho em um processo no
quebrado em um nvel menor de detalhe do modelo de processo. Em muitos casos um usurio final e/ou
uma aplicao costumam executar a tarefa quando ela est em andamento. Um objeto de tarefa
compartilha a mesma forma grfica de um subprocesso, que um retngulo com bordas arredondadas.
Um objeto de tarefa deve ser desenhado com uma linha preta fina simples. Referente ao uso de texto, cor,
tamanho e linhas para um subprocesso devem seguir regras definidas na seo 7.4 (pgina 41) da
especificao BPMN verso 2.0 da OMG.
Tarefa
A BPMN especifica trs tipos de marcadores para cada tarefa, onde temos um para enlace, um de
mltiplas instncias e um de compensao e em uma tarefa pode haver um ou dois destes marcadores.
Para uma tarefa que se repete deve ser uma pequena linha com uma cabea de seta apontando para o final
dela mesma ele pode ser usado em combinao com o de compensao. Quando uma tarefa possui
mltiplas instncias deve ser descrita com um conjunto de trs pequenas linhas verticais em paralelo.
Multi-instncias pode ser usado em combinao com o de compensao, porm, quando for uma tarefa de
compensao deve ser descrito como um par de tringulos apontando para a esquerda e ele pode ser usado
em combinao com qualquer um dos marcadores. Marcadores que forem utilizados DEVEM ser
agrupados ao centro na parte inferior da representao grfica da tarefa.
Enlace
Multi-instncias
Compensao
Alm das categorias de tarefas mostradas acima, existem diferentes tipos de tarefas dentro da BPMN que
separam os tipos herdados de comportamento que tarefas podem representar. Entretanto, no se especifica
qualquer indicador grfico para estes tipos de tarefa. Modeladores e ferramentas de modelagem podem
escolher seus prprios indicadores ou marcadores para mostrar os tipos de tarefa aos leitores do diagrama.
Isto permitido desde que a forma bsica do objeto de tarefa no seja modificada.
Tarefa de Servio
uma tarefa que fornece alguma espcie de servio, que pode ser um web service ou uma
aplicao automatizada.
Tarefa de Recepo
Tarefa designada a esperar por uma mensagem que chega de um participante externo (relativo ao
processo de negcio). Recebida a mensagem, a tarefa est completa. Ela geralmente usada para
iniciar um processo, de certo modo, a instanciao do processo est acoplada recepo da
mensagem e para que a tarefa possa instanciar o processo, deve se encontrar em uma das
seguintes condies:
O processo no possui um evento de incio e a tarefa de recepo no possui fluxo de
sequncia entrante.
O fluxo de sequncia entrante para a tarefa de recepo possui uma origem de um
evento de incio.
Nenhum outro fluxo de sequncia entrante permitido para a tarefa de recepo.
Tarefa de Envio
Designada a enviar uma mensagem para um participante externo que seja relativo ao processo de
negcio e uma vez enviada a mensagem, a tarefa est completa.
Tarefa de Usurio
Fluxo de trabalho, "workflow" onde um participante humano executa a tarefa com assistncia de
um software aplicativo e fica agendado atravs de um gerenciador de lista de tarefas de alguma
espcie.
Tarefa de Scrip
Executada por uma mquina de processos de negcio. O modelador ou implementador define
um script em uma linguagem que a mquina consiga interpretar e ao se encontrar apta para
comear, a mquina executar o script. Completado, a tarefa tambm estar completa.
Tarefa Manual
executada sem auxlio de qualquer mquina de execuo de processo de negcio ou qualquer
aplicao. Um exemplo disso pode ser a instalao de um telefone no local de um cliente.
Tarefa de Referncia
Quando o moderador tiver a necessidade de referenciar uma outra tarefa que tenha sido definida
ou se mais tarefas compartilham exatamente o mesmo comportamento e propriedades, quando
um referencia o outro, os atributos que definem o comportamento somente devem ser criados e
mantidos em um nico local.
Referncias
1.
2.
3.
4.
5.