Versões comparadas
Chave
- Esta linha foi adicionada.
- Esta linha foi removida.
- A formatação mudou.
O Modelo de Processo de Negócios e Notação
(BPMN
), fornecerá as empresas um padrão para entender seus procedimentos internos de negócios em uma notação gráfica. Esta notação gráfica tem como principal intuito facilitar o entendimento dos fluxos dos processos das empresas, a fim de garantir que entendam, participem e se ajustem as circunstâncias do negócio.Adicionar Plugin BPMN em um projeto
- Clicar sobre a aba Plugin;
- Selecionar opção Adicionar novo plugin;
- Selecionar opção General;
- Selecionar Cronapp Workflow;
- Clicar sobre Avançar, em seguida Finalizar;
- Clicar sobre Salvar para confirmar alterações no arquivo POM;
Image Removed
Figura 1.1 - Adicionando Plugins
Image RemovedFigura 1.2 - Adicionando Plugin Cronapp Workflow
Agora tudo está pronto para criar sua primeira aplicação com BPMN, todos os arquivos .bpmn serão implementados automaticamente ao executar o projeto pela primeira vez.
Criar um Fluxo de Trabalho BPMN
Clicar com o botão direito na pasta Arquivos de Recursos;
Selecionar opção Novo;
Selecionar opção Fluxo de Trabalho.
Image Removed
Figura 1.3.1 - Criando novo arquivo .bpmn
Área de edição do BPMN
O Cronapp Modeler cobre todos os elementos do BPMN 2.0 para processos de modelagem.
Image Removed
Figura 2.1 - Área de edição
- Caixa de ferramentas: possui os elementos, que são arrastados e soltos no diagrama, as conexões e as ferramentas para manipulação;
- Área de edição: área para construção do diagrama de orquestração;
- Área de propriedades: muda conforme o elemento selecionado, mas nessa área é visualizar e editar atributos que se aplicam ao elemento atualmente selecionado.
Elementos do BPMN 2.0 e seus tipos
Piscina
Uma piscina serve para representar um processo ou participante. Uma piscina pode ter raias e essas raias significam as responsabilidades que um participante ou processo pode ter.
Image Removed
Figura 2.2.1 - Piscina e Piscina com raia
Subprocesso
Um subprocesso é um conjunto de atividades de um processo maior e ele permite um maior detalhamento do que o processo. O elemento que caracteriza um subprocesso é um retângulo com bordas arrendondas e ele varia conforme os seus tipos: subprocesso embutido (borda simples), atividade de chamada (bordas em negrito), subprocesso por evento (bordas pontilhadas) e transação (bordas dupla). Por padrão, o tipo de subprocesso ao ser arrastado é o subprocesso embutido, mas ao utilizar o ícone de chave inglesa é possível alterar para outro tipo de subprocesso (Figura 2.2).
Image Removed
Figura 2.2.2 - Tipos de subprocesso
- Subprocesso embutido: subprocesso que faz referência a um processo interno;
- Atividade de chamada: subprocesso faz referência a um processo externo;
- Subprocesso por evento: subprocesso que ocorre através da ação de um evento;
- Transação: subprocesso que agrupa várias atividades para uma transação.
Tarefa
Uma tarefa contém atividades que deverão ser realizadas pelo responsável dentro de um prazo. Essas tarefas podem ter várias definições (Figura 2.3):
Image Removed
Figura 2.2.3 - Tipos de tarefa
- Tarefa: tarefa sem nenhuma definição;
- Tarefa de enviar mensagem: envia uma mensagem para um participante ou processo;
- Tarefa de receber mensagem: espera o recebimento de uma mensagem de um participante ou processo;
- Tarefa de usuário: realizada por um usuário que esteja no conectado ao motor do BPMN;
- Tarefa manual: executa uma tarefa que não utiliza o fluxo de trabalho;
- Tarefa de regra de negócio: executada automaticamente por uma decisão de negócio;
- Tarefa de serviço: executa ou chama uma regra de negócio;
- Tarefa de roteiro: executa uma sequência de comandos (script).
Gateways
Gateways são pontos de desvio em um processo, permitindo que decisões sejam tomadas baseando-se em eventos ou dados como também separações e junções simultâneas. O elemento que caracteriza um gateway é um losango e dentro desses losangos, os símbolos determinam seu tipo.
Image Removed
Figura 2.2.4 - Tipos de gateway
- Gateway exclusivo: define que o processo terá um único caminho através de uma condição previamente imposta;
- Gateway paralelo: define que o processo ocorre simultaneamente, podendo que ele seja separado em vários partes ou unidos de vários partes em uma só;
- Gateway inclusivo: combinação do gateway exclusivo com o gateway paralelo, no qual o mesmo permite que um processo possa ter múltiplos caminhos através das condições previamente impostas;
- Gateway complexo: controla condições complexas de junções e separações;
- Gateway baseado em eventos: define que o processo possa fazer desvio baseado nos eventos.
Dados
No BPMN 2.0, os dados a serem manipulados podem ser vindo de objetos ou de banco de dados.
Image Removed
Figura 2.2.5 - Tipos de dados
Eventos
No BPMN 2.0 há três tipos básicos de eventos: o início, o intermediário e o fim. O evento de início é caracterizado por uma borda simples, enquanto o intermediário por uma borda dupla e o final, uma borda em negrito. Esses três tipos de eventos podem ter diversos outros eventos atrelados à eles, como tempo, condição, sinais, mensagens e entre outros.
Eventos de início
Indica o início de um processo ou subprocesso. Há cinco tipos de eventos de início: básico, por mensagem, por tempo, por condição e por sinal (Figura 2.2.6.1).
Image Removed
Figura 2.2.6.1 - Eventos de início
- Evento de início básico: o início do processo não é específico e que o motor BPMN não tem como quando esse processo poderá ocorrer;
- Evento de início por mensagem: o início do processo ocorre após o recebimento de uma mensagem;
- Evento de início por tempo: define o tempo que dará início ao processo;
- Evento de início por condição: o início do processo ocorre após uma condição lógica;
- Evento de início por sinal: o início do processo ocorre após o recebimento de um sinal de outro processo.
Eventos intermediário
Os eventos intermediários ocorrem durante o processo. Esses eventos podem
Image Removed
Figura 2.2.6.2 - Eventos intermediário
- Evento intermediário básico: assim como o evento de início básico, esse evento não é específico mas indica que será iniciado um evento;
- Evento intermediário por captura de mensagem: irá aguardar a mensagem apropriada chegar;
- Evento intermediário por lançamento de mensagem: enviará enviar uma mensagem para um serviço externo;
- Evento intermediário por captura de tempo: faz a cronometragem da execução, iniciando assim que ela chega e irá disparar um alarme assim que o tempo acabar;
- Evento intermediário por lançamento de escalonamento: envia o escalonamento apropriado que pode ser capturado por outro tipo de evento de escalonamento;
- Evento intermediário por captura de condição: indica que a execução permanecerá nesse evento enquanto sua condição não estiver em conforme com a que foi definida - caso ela for, sua execução seguirá adiante;
- Evento intermediário por captura de link: ele recebe o caminho para qual a execução seguirá;
- Evento intermediário por lançamento de link: ele envia o caminho para qual a execução seguirá;
- Evento intermediário por lançamento de compensação: usada para acionar uma compensação;
- Evento intermediário por captura de sinal: irá
- Evento intermediário por lançamento de sinal: envia um evento com o sinal apropriado para um evento de captura;
Evento de finalização
Indica a finalização do processo ou subprocesso. Os eventos de finalização podem ser por mensagem, por escalonamento, por erro, por compensação, por terminação e por sinal.
Image Removed
Figura 2.2.6.3 - Eventos de finalização
- Evento de finalização básica: indicação simples de que o processo foi finalizado;
- Evento de finalização por erro: indica que ao finalizar uma mensagem de erro será enviada para um subprocesso;
- Evento de finalização por terminação: indica que ao finalizar todas as partes do processo serão encerradas;
- Evento de finalização por mensagem: indica que ao finalizar enviará uma mensagem para outro participante;
- Evento de finalização por compensação: indica que ao finalizar será iniciado o tratamento de compensações, no qual será desfeito todas as ações ocorridas no processo;
- Evento de finalização por escalonamento: indica que ao finalizar enviará uma mensagem de escalonamento para eventos de catch;
- Evento de finalização por sinal: indica que ao finalizar será enviado um sinal para outros processos.
Atalhos dos elementos
Ao selecionar um elemento na área de edição aparecem alguns ícones de atalhos para realizar uma configuração (Figura 2.3) e esses ícones podem variar conforme o tipo de elemento selecionado.
Image Removed
Figura 2.3 - Ícones de atalho do elemento evento de início
- Ícones de elementos: esses ícones representam outros elementos da caixa de seleção e mudam conforme o elemento selecionado, mas sua ação é a mesma - ele cria uma conexão entre o elemento selecionado e o elemento do ícone escolhido;
- Adicionar comentário: cria uma caixa flutuante no elemento para que possa ser inserido comentários;
- Mudar tipo: conforme o nome, esse ícone de chave inglesa abre uma caixa de opções para alterar o tipo do elemento;
- Remover: conforme o nome, esse ícone de lixeira remove o elemento da área de edição;
- Conexões: adiciona uma conexão entre o elemento selecionado à outro elemento que esteja presente na área de edição.
Utilizar Blockly no BPMN
Para utilizar um bloco de programação no BPMN são necessários alguns passos prévios.
Permitir a exibição do Bloco de Programação
- Abrir as Propriedades do bloco de programação;
- Marcar a opção Exibir no Bpmn;
- Clicar em Salvar.
Image Removed
Figura 4.1.1 - Ativando opção de exibição no Bpmn
Vincular o Bloco de Programação a Tarefa
Para executar o Blockly criado, você deve vinculá-lo a uma tarefa de serviço.
- Clicar no ícone da ferramenta;
- Selecionar a opção Tarefa de Serviço;
- Selecionar a opção Expressão da aba de Implementação;
- Clicar no botão Editar;
- Clicar no botão ... para escolher um Bloco;
- Selecionar o bloco de programação a ser vinculado a tarefa.
Image Removed
Figura 4.2.1 - Implementação de Expressão para vincular um Blockly
Image Removed
Figura 4.2.2 - Selecionando o bloco a ser vinculado
Variáveis de processo
Esta seção descreve os conceitos de variáveis em processos. As variáveis podem ser usadas para adicionar dados ao processo de tempo de execução ou, mais especificamente, aos escopos de variáveis. Vários métodos de API que alteram o estado dessas entidades permitem a atualização das variáveis anexadas. Em geral, uma variável consiste em um nome e um valor. O nome é usado para identificação nas construções do processo. Por exemplo, se uma atividade define uma variável chamada var , uma atividade de acompanhamento pode acessá-la usando esse nome. O valor de uma variável é um objeto Java.
Escopos variáveis e visibilidade de variável
Todas as entidades que podem ter variáveis são chamadas de escopos de variáveis . Estas são execuções (que incluem instâncias de processo) e tarefas. O estado de tempo de execução de uma instância do processo é representado por uma árvore de execuções. Considere o seguinte modelo de processo em que os pontos vermelhos marcam tarefas ativas.
Image Removed
Figura 5.1 - Tarefas ativas
A estrutura de tempo de execução desse processo é a seguinte (Figura 5.2).
Image Removed
Figura 5.2 - Estrutura tempo de execução
Há uma instância de processo com duas execuções filho, cada uma das quais criou uma tarefa. Todas essas cinco entidades são escopos variáveis e as setas marcam um relacionamento pai-filho. Uma variável definida em um escopo pai é acessível em todos os escopos filhos, a menos que um escopo filho defina uma variável com o mesmo nome. Por outro lado, as variáveis filho não são acessíveis no escopo pai. Variáveis diretamente anexadas ao escopo em questão são chamadas de variáveis locais . Considere a seguinte atribuição de variáveis aos escopos (Figura 5.3).
Image Removed
Figura 5.3 - Estrutura de execução de tarefas
Nesse caso, ao trabalhar na Tarefa 1, as variáveis worker e customer estão acessíveis. Note-se que, devido à estrutura de espaços, a variável trabalhador pode ser definida por duas vezes, de modo que Tarefa 1 acede a um diferente trabalhador variável de Tarefa 2. No entanto, ambos compartilham o cliente variável, o que significa que, se essa variável for atualizada por uma das tarefas, essa alteração também será visível para a outra.
Ambas as tarefas podem acessar duas variáveis cada uma, enquanto nenhuma delas é uma variável local. Todas as três execuções têm uma variável local cada.
Agora, definimos um cliente de variável local na Tarefa 1 (Figura 5.4).
Image Removed
Figura 5.4 - Estrutura de execução de tarefas
Enquanto duas variáveis denominadas cliente e trabalhador ainda podem ser acessadas na Tarefa 1, a variável do cliente na Execução 1 está oculta, portanto, a variável acessível do cliente é a variável local da Tarefa 1.
Em geral, as variáveis são acessíveis nos seguintes casos:
- Instanciando processos
- Entregando mensagens
- Transições do ciclo de vida da tarefa, como conclusão ou resolução
- Configurando / obtendo variáveis de fora
- Definindo / obtendo variáveis
- Expressões no modelo de processo
- Scripts no modelo de processo
- Consultas variáveis (históricas)
Valores de variáveis suportados
O mecanismo do processo suporta os seguintes tipos de valores variáveis (Figura 5.5.1).
Image Removed
Figura 5.5.1 - Tipos de variáveis aceitos
Dependendo do valor real de uma variável, um tipo diferente é atribuído. Entre os tipos disponíveis, existem nove tipos de valores primitivos, o que significa que eles armazenam valores de classes JDK padrão simples sem metadados adicionais.
boolean
: Instâncias dejava.lang.Boolean
bytes
: Instâncias debyte[]
short
: Instâncias dejava.lang.Short
integer
: Instâncias dejava.lang.Integer
long
: Instâncias dejava.lang.Long
double
: Instâncias dejava.lang.Double
date
: Instâncias dejava.util.Date
string
: Instâncias dejava.lang.String
null
:null
referências
Informações | ||
---|---|---|
| ||
Os valores primitivos diferem de outros valores de variáveis, pois podem ser usados em consultas de API, como consultas de instância de processo como condições de filtragem. O tipo file pode ser usado para armazenar o conteúdo de um arquivo ou fluxo de entrada, juntamente com metadados, como um nome de arquivo, uma codificação e o tipo MIME ao qual o conteúdo do arquivo corresponde. O tipo de valor objectrepresenta objetos Java customizados. Quando essa variável é persistida, seu valor é serializado de acordo com um procedimento de serialização. Esses procedimentos são configuráveis e intercambiáveis. |
Referencias da Api Rest
O objetivo da API REST é fornecer acesso a todas as interfaces relevantes do mecanismo
Para acessar todos os métodos e os formatos e conteúdos esperados clique no link:
https://docs.camunda.org/manual/7.11/reference/rest/
Estrutura
Estes documentos explicam todos os métodos existentes na API REST. Para cada método que eles fornecem:
- Uma descrição informal
- Verbo e URL HTTP
- Possíveis parâmetros de consulta, caminho ou corpo da mensagem
- Uma descrição detalhada do conteúdo da resposta
- Possíveis códigos de resposta
- Um breve exemplo de solicitação e resposta
Uso do motor
Os métodos descritos funcionam no mecanismo de processo padrão, conforme fornecido pelo ProcessEngineProviderserviço disponível .
Você pode anexar /engine/{name}um dos métodos (a menos que esteja documentado em contrário) para acessar outro mecanismo em que {name}está o nome do mecanismo de processo retornado por, por exemplo /engine/myEngineName/task
Tratamento de erros
Para todos os métodos, esta documentação fornece possíveis códigos de status HTTP. As explicações do código de erro não cobrem todas as possíveis causas de erro que podem surgir quando a solicitação é atendida, por exemplo, a maioria das solicitações não funcionará corretamente se houver problemas com o acesso ao banco de dados. Qualquer um desses erros não documentados será convertido em um erro HTTP 500.
Todos os erros também fornecem um corpo de resposta JSON do formulário:
{ "type" : "SomeExceptionClass", "message" : "a detailed message" }Exceções de autorização
Se um usuário já autenticado interagir com um recurso de maneira não autorizada, o código de status da resposta será definido como 403 Forbidden. Detalhes sobre a interação não autorizada são fornecidos no corpo da resposta.
Tipo
AuthorizationException
Corpo de resposta
{"type" : "AuthorizationException", "message" : "The user with id 'jonny' does not have 'DELETE' permission on resource 'Mary' of type 'User'.", "userId" : "jonny", "permissionName" : "DELETE", "resourceName" : "User", "resourceId" : "Mary"}
Painel de Gerenciamento
Acesse /app para ver a interface do Cronapp Bpmn
O aplicativo Bem-vindo apresenta links para os aplicativos aos quais o usuário tem acesso.
Possui um perfil de usuário no qual o usuário pode alterar seu nome, endereço de email e senha.
Image Removed
Painel de Controle
Ref: https://docs.camunda.org/manual/latest/webapps/cockpit/
Visão geral dos mecanismos de processo
Número de processos em execução, incidentes abertos e tarefas manuais.
Image Removed
Com este plugin, você pode observar facilmente o estado de uma definição de processo. Pontos verdes e vermelhos indicam trabalhos em execução e com falha. Nesse nível de observação, um ponto vermelho significa que há pelo menos uma instância de processo ou uma instância de subprocesso que possui um incidente não resolvido. Você pode localizar o problema usando a visualização de definição de processo.
Image Removed
Visualizar
Você também pode alternar para a guia Visualizar, que exibe o modelo de processo renderizado de cada processo implantado. Além disso, você obtém informações sobre quantas instâncias do processo estão em execução no momento e sobre o estado do processo. Pontos verdes e vermelhos indicam trabalhos em execução e com falha. Clique no modelo para ir para a visualização de definição de processo.
Image Removed
A visualização de definição de processo fornece informações sobre a definição e o status de um processo. No lado esquerdo, você pode pesquisar facilmente as versões do processo e quantas instâncias das versões estão em execução. Incidentes de todas as instâncias do processo em execução são exibidos junto com um rótulo de contador de instâncias no diagrama renderizado correspondente. Portanto, é fácil localizar atividades com falha no processo. Use o mouse para navegar pelo diagrama. Ao girar a roda do mouse, você pode aumentar e diminuir o zoom. Segure o botão esquerdo do mouse para deslocar o diagrama na direção desejada. Além disso, você pode maximizar a visualização do diagrama ou o painel de informações detalhadas clicando no botão, respectivamente no botão, na parte inferior esquerda da visualização do diagrama.
Instâncias do processo
Na guia Instâncias do processo, todas as instâncias em execução são listadas em uma exibição tabular. Além de informações sobre horário de início, chave comercial e estado, você pode selecionar uma instância por ID e descer para a visualização da instância do processo.
Definições de processo chamado
A guia Definições de processo chamado exibe os processos filhos chamados. Na coluna Definição de processo chamado, os nomes dos subprocessos chamados são listados. Clique no nome para exibir o processo na visualização de definição de processo. Observe que um filtro chamado Pai é definido automaticamente para o processo, para que você veja apenas as instâncias que pertencem ao processo pai. Na coluna Atividade, você pode selecionar a instância que está chamando o processo filho.
Definições de trabalho
A guia Definições de trabalho exibe as definições de trabalho que estão vinculadas a essa definição de processo. Observe o nome da atividade, o tipo de trabalho, a configuração e o estado da mesma. Você também pode suspender e reativar a definição de tarefa. Também é possível definir a prioridade dos trabalhos.
Image Removed
Modelador de tempo de execução
Esse modelador funciona exatamente como o módulo no IDE, mas você pode reimplementar em tempo de execução.
Image Removed
Painel de tarefas abertas
Você pode usar o painel de tarefas abertas para ver como as tarefas abertas são distribuídas por fatores individuais
Atribuições por tipo
Nesta categoria, você pode ver quantas tarefas abertas existem. Há também uma visão geral que mostra como as tarefas abertas são distribuídas.
Atribuição por grupo
Esta categoria fornece uma visão geral que mostra como todas as tarefas abertas atribuídas a um grupo são distribuídas entre os grupos individuais.
Image Removed
Visualização de implantação
A visualização de implantação do Cockpit mostra uma visão geral de todas as implantações, seus recursos e o conteúdo desses recursos. Ele permite a exclusão de implantações existentes, a reimplantação de recursos antigos e a criação de novas implantações. O conteúdo dos recursos nas implantações pode ser exibido. Também é possível baixar recursos únicos dessa exibição.
Image Removed
Lista de tarefas
Ref: https://docs.camunda.org/manual/latest/webapps/tasklist/
No painel da Lista de tarefas, você vê uma visão geral das tarefas pendentes. No lado esquerdo da tela, uma visão geral dos filtros é exibida.
No lado superior direito da tela, você pode definir uma data de acompanhamento ou vencimento, reivindicar, cancelar a reivindicação e reatribuir tarefas e adicionar comentários.
Abaixo dessa seção, o formulário incorporado é exibido (observe que os formulários de tarefas externas não podem ser exibidos aqui), você pode alternar para o histórico de tarefas, ver a exibição do diagrama ou a descrição da tarefa do usuário.
Image Removed
Aqui você pode trabalhar em tarefas e executar as seguintes ações operacionais.
Definir datas de vencimento e datas de acompanhamento
Na seção superior da visualização da tarefa, você pode definir uma data de vencimento e uma data de acompanhamento para a tarefa selecionada. Uma data de vencimento pode ser definida para determinar quando a tarefa precisa ser concluída e uma data de acompanhamento pode ser definida como um lembrete ou para fins de monitoramento.
Reivindicar, cancelar e reatribuir tarefas
Na exibição de tarefas, você pode reivindicar, cancelar a reivindicação e reatribuir tarefas. Para reivindicar uma tarefa, basta selecionar Reivindicar. Para cancelar a reivindicação de uma tarefa, pressione o botão ao lado do nome de usuário de uma tarefa reivindicada e atribua uma tarefa a um usuário diferente clicando no nome de usuário e inserindo o nome de usuário do usuário ao qual você deseja atribuir a tarefa. Você também pode atribuir tarefas a grupos de usuários clicando em Adicionar grupos.
Comentários
Na Lista de tarefas, você pode adicionar e visualizar comentários sobre tarefas específicas. Após selecionar uma tarefa nos resultados do filtro, clique em Adicionar comentário na parte superior da seção de exibição de tarefas para adicionar um comentário à tarefa selecionada. Os comentários de uma tarefa podem ser visualizados no histórico da tarefa.
Image Removed
Na seção inferior da visualização de tarefas, existem várias guias que podem ser selecionadas para exibir o próprio formulário da tarefa e informações adicionais relacionadas a esta tarefa do usuário.
Visualização de formulário de tarefas
A guia Formulário, selecionada por padrão, exibe o formulário de tarefas (desde que o formulário de tarefas seja incorporado, gerado ou genérico). Aqui você pode trabalhar e concluir a tarefa.
Histórico de tarefas
A guia Histórico exibe o histórico desta tarefa do usuário. Aqui você pode ver informações detalhadas, como histórico de atribuições, atualizações para a data de vencimento e datas de acompanhamento, além de reivindicar e não reivindicar tarefas. Os comentários também são exibidos aqui.
Visualização do diagrama
A guia Diagrama mostra o diagrama da definição do processo. A tarefa do usuário atual é destacada neste diagrama.
Descrição da tarefa
Abra a guia Descrição para inspecionar a descrição da tarefa do usuário. Consulte a referência do BPMN 2.0 para obter mais informações sobre descrições de tarefas.
Image Removed
Image Removed
Painel Administrativo
Ref: https://docs.camunda.org/manual/latest/webapps/admin/
Juntamente com os aplicativos Web que enviamos admin, Admin é um aplicativo que permite configurar usuários e grupos por meio do Serviço de Identidade do mecanismo e autorizações por meio do Serviço de Autorização do mecanismo. Além disso, você pode conectar o Admin ao seu sistema LDAP.
Image Removed
Gerenciar autorizações
Gerencie autorizações para uma variedade de recursos (por exemplo, aplicativos, grupos, filtros). Nas seções a seguir, você aprenderá como usar uma conta de administrador com a ajuda de alguns casos de uso simples.
Image Removed
Conceder permissões básicas
Nesse caso de uso, concederemos algumas permissões básicas. Para começar, precisamos de alguns usuários e um grupo. Crie dois usuários no menu de usuários, crie um grupo chamado suporte no menu de grupos e adicione os novos usuários ao grupo no menu de usuários.
Acesso a aplicativos
Defina as autorizações para o novo grupo e os usuários criados. Primeiro, você deve definir a qual aplicativo os membros do seu novo grupo terão acesso. Selecione o menu Aplicativo e crie uma nova regra de autorização de aplicativo. Os membros do grupo devem poder acessar a Lista de Tarefas; portanto, adicione a seguinte regra:
Image Removed
Agora todos os membros do suporte do grupo podem usar a Lista de Tarefas.
Além disso, você deseja que um dos novos usuários tenha acesso ao Cockpit. Portanto, adicione uma nova regra específica do usuário:
Image Removed
Esta regra específica é válida apenas para o usuário 'lemmy' e fornece a ele autorização adicional para o recurso Cockpit.
Image Removed
Efetue login com as novas contas de usuário e teste se você pode acessar o aplicativo desejado.
Acesso ao filtro
Atualmente, os usuários do grupo de suporte podem ver apenas os filtros predefinidos na Lista de Tarefas. Queremos que os membros do grupo tenham acesso de LEITURA a outro filtro, portanto, criamos uma regra para esse filtro:
Image Removed
As autorizações definidas aqui correspondem às autorizações que podem ser definidas nas configurações de filtro na Lista de tarefas. O ID do recurso pode ser encontrado na tabela do banco de dados ACT_RU_FILTER. Consulte esta seção para obter mais informações sobre filtros.
Visibilidade do membro
Dependendo da autorização do usuário, a Lista de tarefas mostrará informações sobre seus colegas e grupos. Atualmente, você só pode ver o suporte à pasta do grupo, mas não o seu colega. Para mudar isso, efetue login no aplicativo de administrador como administrador, entre no menu Autorização de usuários e crie as seguintes regras:
Image Removed
Agora, todos os membros do suporte do grupo podem ver os novos usuários lemmy e Ozzy.
Permissões específicas do aplicativo
Este caso de uso demonstra como conceder acesso a um grupo ao Cockpit, mas restringi-los ao acesso de LEITURA. Usaremos o grupo de suporte que criamos no exemplo anterior.
Para limitar o acesso, precisamos saber quais recursos estão acessíveis no Cockpit para que possamos definir as permissões apropriadas para eles. Dos recursos predefinidos no momento, isso seria:
Definição de Processo
Instância do processo
Tarefa
Image Removed
Primeiro, precisamos fornecer a permissão para acessar o Cockpit.
Image Removed
Para todos os recursos acessíveis no Cockpit, adicionamos permissão READ para cada ID de recurso (indicado pelo asterisco) para o grupo, por exemplo, na captura de tela para todas as definições de processo.
Agora, todos os usuários do grupo de suporte podem acessar o Cockpit e ver tudo o que há dentro sem poder alterar nada (a menos que o usuário tenha permissões especiais, porque eles têm precedência sobre as permissões do grupo).
Agora que temos um grupo que pode ver tudo no Cockpit, queremos que outro grupo gerencie um único processo.
Nem todo processo precisa ser gerenciado por todos os usuários / grupos e, em relação aos diferentes níveis organizacionais, nem todo grupo deve estar ciente de todos os processos presentes no mecanismo de processos. Portanto, pode ser necessário restringir o acesso de usuários / grupos a determinados processos.
Nesse caso de uso, queremos fornecer à contabilidade do grupo, que presumiremos que já está presente e tenha acesso ao Cockpit , acesso total ao processo de "fatura" e somente a esse processo.
Para que grupos e usuários possam ver as definições de processo, eles precisam de pelo menos a permissão READ para o recurso "Definição de Processo". Para ver as instâncias de processo em execução, a mesma permissão é necessária para o recurso "Instância de Processo".
Image Removed
Concedemos ao grupo de contabilidade todas as permissões para o processo de fatura, porque elas devem poder gerenciar seu processo completamente. O ID do recurso faz referência à chave da definição do processo.
Agora que sabemos como conceder determinadas permissões, podemos precisar de um segundo usuário que atue como administrador.
Métricas de Execução
O menu Métricas de Execução no Admin exibe um número aproximado de Instâncias de Nós de Fluxo (FNI) e Elementos de Decisão Executados (EDE) que foram processados pelo mecanismo dentro de um intervalo de tempo especificado.
Image Removed
Grupos
O menu Grupos permite adicionar, editar e excluir grupos de usuários. Além de poder ver os membros dos grupos
Image Removed
Usuários
O menu Usuários permite adicionar, editar e excluir perfis de usuário. Além disso, você pode gerenciar a associação ao grupo e alterar as senhas.
Image Removed
- Business Process Model and Notation) fornece um padrão para compreender todo o fluxo de processos (Fluxo de trabalho) de uma empresa em notações gráficas, garantindo o entendimento, participação e adequação de acordo nas necessidades do negócio. Atualmente o BPMN está em sua versão 2.0.2 e é mantido pela organização internacional OMG, ela também é responsável por manter outros padrões, como o UML.
As principais vantagens em utilizar o Cronapp BPM em seu projeto:
Seu uso é bem simples e possui rápida curva de aprendizado;
Todo o processo pode ser desenvolvido a partir de recursos visuais, com cliques e drag-and-drop (arrastar e soltar);
Utiliza um padrão já bem estabelecido no mercado e é suportado por diversos produtos;
O BPMN é mantido por uma instituição confiável e conhecida por manter vários outros padrões;
Possui um serviço confiável, com diagramas executáveis, fluxo de tarefas manuais, manipulação de eventos e de fácil entendimento por todos;
- Possui uma aplicação standalone com um painel de gerenciamento onde é possível manipular todos os fluxos.
Image Added
Figura 1 - Exemplo de modelagem BPMN usando o Editor de Fluxo de trabalho
Nota |
---|
Atualmente o Cronapp só dá suporte para criações através do motor BPM - ou seja, não é possível criar CMMN ou DMN dentro do Cronapp. No entanto, se o projeto possuir esse conteúdo e for importado, funcionará corretamente, desde que ele seja compatível com BPMN 2.0. Para acessar todos os métodos, formatos e conteúdos esperados acesse a documentação oficial do Camunda. |
Âncora plugin-workflow plugin-workflow
Adicionar plugin
Siga os passos abaixo para instalar o Plugin Cronapp Workflow (BPM) em seu projeto Cronapp.
Image Added
Figura 2 - Adicionando plugin Cronapp Workflow (BPM)
Acesse no menu do sistema Plugin > Instalar Plugins.
Pesquise por "BPM" no campo de busca.
Selecione Cronapp Workflow (BPM), clique em Avançar e, em seguida, em Finalizar.
Se o botão Modo Avançado estiver habilitado, aparecerá a janela "Sumário de alterações no arquivo POM" informando as modificações necessárias para a instalação do plugin, clique em Salvar. Caso o botão esteja desabilitado, a instalação será feita sem a janela de notificação.
Informações |
---|
Após essa etapa, recomendamos Recompilar e Reabrir o projeto. |
Recursos do plugin
O conteúdo criado no Cronapp BPM é armazenado em um banco de dados e, após a instalação do plugin, o Cronapp cria automaticamente uma nova conexão de banco de dados H2 com essa estrutura (Figura 2.1). Como o H2 é um banco de dados efémero (temporário), o desenvolvedor deve acessar a funcionalidade de Banco de dados (destaque 1 da figura 2.1), editar a nova conexão (2) e apontar para um banco de dados real (veja mais detalhes em Banco de dados).
Image Added
Figura 2.1 - Banco de dados criado após a instalação do plugin
Também são adicionadas 5 novas categorias de Workflow no editor de Bloco de programação Servidor, permitindo a personalização dos seus fluxos de trabalho (Figura 2.2).
Informações |
---|
Acesse a documentação oficial do Camunda para obter mais informações sobre a API Workflow e os recursos executados pelos blocos. |
Image Added
Figura 2.2 - Blocos de programação do Workflow
Fluxo de trabalho
Após a instalação do plugin, seu projeto está pronto para criar uma aplicação utilizando o moto do Cronapp BPM.
Criar Fluxo de Trabalho
Siga os passos abaixo para criar um arquivo do tipo Fluxo de trabalho em tempo de desenvolvimento.
Image Added
Figura 3.1 - Criando novo arquivo BPMN
Clique com o botão direito na pasta Fluxos de Trabalho (Localização:
Fluxo de Trabalho/
Tooltip onlyIcon true appendIcon info-circle Endereço:
src/main/resources/bpm/
).
Selecione a opção Novo > Fluxo de Trabalho.
- Informe o nome do arquivo na janela que abrir e clique em OK.
Âncora areaDeEdicao areaDeEdicao
Editor BPMN
O Editor de Fluxo de trabalho cobre todos os elementos do BPMN 2.0 para processos de modelagem. A figura abaixo apresenta as áreas principais do editor.
Image Added
Figura 3.2 - Área de edição do Fluxo de Trabalho
- Caixa de ferramentas: possui os elementos, as conexões e as ferramentas para manipulação.
- Área de edição: área para construção do diagrama de orquestração.
- Painel de propriedades: muda conforme o elemento selecionado, nesse painel é possível visualizar e editar atributos que se aplicam ao elemento atualmente selecionado.
Âncora atalhoElementos atalhoElementos
Atalhos dos elementos
Ao selecionar um elemento na área de edição serão exibidos alguns ícones de atalhos para realizar configurações (Figura 3.3), esses ícones podem variar conforme o tipo de elemento selecionado.
Image Added
Figura 3.3 - Ícones de atalho do elemento evento de início
- Ícones de elementos: esses ícones representam outros elementos da caixa de seleção e mudam conforme o elemento selecionado, mas sua ação é a mesma - ele cria uma conexão entre o elemento selecionado e o elemento do ícone escolhido.
- Adicionar comentário: cria uma caixa flutuante no elemento para que possa ser inserido comentários.
- Mudar tipo: abre uma caixa de opções para alterar o tipo do elemento.
- Remover: remove o elemento da área de edição.
- Conexões: adiciona uma conexão entre o elemento selecionado e outro elemento que esteja presente na área de edição.
Âncora elementosBPMN elementosBPMN
Elementos e seus tipos
Abaixo listamos os elementos que compõem o BPMN 2.0.
Piscina
Uma piscina serve para representar um processo ou participante. Uma piscina pode ter raias e o conteúdo dentro dessas raias representam as responsabilidades que um participante ou processo podem ter.
Image Added
Figura 3.3.1 - Piscina e piscina com raia
Subprocesso
Um subprocesso é um conjunto de atividades de um processo maior, possuindo mais detalhes do que o processo. O elemento que caracteriza um subprocesso é um retângulo com bordas arredondadas e que varia conforme os seus tipos: subprocesso embutido (borda simples), atividade de chamada (bordas em negrito), subprocesso por evento (bordas pontilhadas) e transação (bordas duplas) (Figura 3.3.2).
O elemento subprocesso embutido é o padrão após arrastar um subprocesso, utilize o ícone da ferramenta (destaque 3 da figura 3.3) para alterar para outro tipo de subprocesso.
Image Added
Figura 3.3.2 - Tipos de subprocesso
- Subprocesso embutido: faz referência a um processo interno.
- Atividade de chamada: faz referência a um processo externo.
- Subprocesso por evento: subprocesso que ocorre através da ação de um evento.
- Transação: agrupa várias atividades para uma transação.
Âncora elementoTarefa elementoTarefa
Tarefa
Uma tarefa contém atividades que deverão ser realizadas pelo responsável dentro de um prazo. Essas tarefas podem ter várias definições (Figura 3.3.3) que são alternadas ao utilizar o ícone da ferramenta (destaque 3 da figura 3.3) .
Image Added
Figura 3.3.3 - Tipos de tarefa
- Tarefa: tarefa sem nenhuma definição.
- Tarefa de enviar mensagem: envia uma mensagem para um participante ou processo através de um bloco de programação, por exemplo.
- Tarefa de receber mensagem: espera o recebimento de uma mensagem de um participante ou processo - para isso, selecione um ID que corresponda a uma tarefa de enviar mensagem.
- Tarefa de usuário: espera uma tarefa dentro do fluxo de trabalho ser realizada pelo usuário - podendo ser definido um responsável, um usuário candidato, um grupo candidato, uma data de vencimento, uma data de acompanhamento e a prioridade.
- Tarefa manual: executa uma tarefa que não utiliza o fluxo de trabalho.
- Tarefa de regra de negócio: executada automaticamente por uma decisão de negócio, sendo necessário selecionar a forma de implementação na aba geral do painel de propriedade.
- Tarefa de serviço: invoca serviços através de um bloco de programação, por exemplo.
- Tarefa de roteiro: executa uma sequência de comandos (script) automaticamente, sendo necessário definir o formato de script e se a execução será interna ou externa.
As tarefas Envio, Regra de Negócio e Tarefa de serviço suportam a execução de funções via bloco de programação. Veja mais detalhes no tópico Vincular blocos de programação.
Gateways
Gateways são pontos de desvio em um processo, permitem que decisões sejam tomadas baseando-se em eventos ou dados, além de separações e junções simultâneas. Os gateways possuem símbolos internos que determinam o seu tipo, através do ícone da ferramenta (destaque 3 da figura 3.3) é possível alterá-los.
Image Added
Figura 3.3.4 - Tipos de gateway
- Gateway exclusivo: define que o processo terá um único caminho através de uma condição previamente imposta.
- Gateway paralelo: define que o processo ocorre simultaneamente, permitindo que ele seja separado em várias partes ou unido de várias partes em uma só.
- Gateway inclusivo: combinação do gateway exclusivo com o gateway paralelo, no qual permite que um processo possa ter múltiplos caminhos através das condições previamente impostas.
- Gateway complexo: controla condições complexas de junções e separações.
- Gateway baseado em eventos: define que o processo possa fazer desvio baseado nos eventos.
Dados
No BPMN 2.0, os dados a serem manipulados podem vir de objetos ou de banco de dados, seus respectivos ícones são representados na figura abaixo.
Image Added
Figura 3.3.5 - Tipos de dados
Eventos
Há três tipos básicos de eventos: o início, que possui uma borda simples, o intermediário, com uma borda dupla, e o fim, que possui bordas em negrito. Esses três tipos de eventos podem ter diversos outros eventos atrelados a eles, como tempo, condição, sinais, mensagens e entre outros.
Eventos de início
Indica o início de um processo ou subprocesso. Há cinco tipos de eventos de início: básico, por mensagem, por tempo, por condição e por sinal (Figura 3.3.6). Utilize o ícone da ferramenta (destaque 3 da figura 3.3) para alterar seu tipo.
Image Added
Figura 3.3.6 - Eventos de início
- Evento de início básico: é iniciado sem a definição de um fato específico que gere o seu início.
- Evento de início por mensagem: o início do processo ocorre após o recebimento de uma mensagem - para isso, precisa ser selecionado um ID que corresponda a uma tarefa de enviar mensagem na aba geral do painel de propriedade.
- Evento de início por tempo: define o tempo que dará início ao processo - para isso, precisa ser selecionado o tempo (dias, ciclos ou duração) na aba geral do painel de propriedade.
- Evento de início por condição: o início do processo ocorre após uma condição lógica.
- Evento de início por sinal: o início do processo ocorre após o recebimento de um sinal de outro processo.
Eventos intermediários
Os eventos intermediários ocorrem durante o processo. Esses eventos podem aguardar a ocorrência de fatos para que o processo continue ou gerar a ocorrência do fato para dar continuidade ao processo. Utilize o ícone da ferramenta (destaque 3 da figura 3.3) para alterar entre os tipos.
Image Added
Figura 3.3.7 - Eventos intermediário
- Evento intermediário básico: assim como o evento de início básico, esse evento não é específico, mas indica que será iniciado um evento.
- Evento intermediário por captura de mensagem: irá aguardar a mensagem apropriada chegar.
- Evento intermediário por lançamento de mensagem: enviará uma mensagem para um serviço externo.
- Evento intermediário por captura de tempo: cronometra a execução, iniciando assim que a ocorrência chegar e disparando um alarme assim que o tempo acaba.
- Evento intermediário por lançamento de escalonamento: envia o escalonamento apropriado que pode ser capturado por outro tipo de evento de escalonamento.
- Evento intermediário por captura de condição: indica que a execução permanecerá nesse evento enquanto sua condição não estiver em conforme com a que foi definida - caso ela for, sua execução seguirá adiante.
- Evento intermediário por captura de link: ele recebe o caminho para qual a execução seguirá.
- Evento intermediário por lançamento de link: ele envia o caminho para qual a execução seguirá.
- Evento intermediário por lançamento de compensação: usada para acionar uma compensação.
- Evento intermediário de sinal: irá aguardar enquanto não receber o sinal apropriado.
- Evento intermediário por lançamento de sinal: envia um evento com o sinal apropriado para um evento de captura.
O Eventos intermediários por lançamento de mensagem suporta a execução de funções via bloco de programação. Veja mais detalhes no tópico Vincular blocos de programação.
Eventos de finalização
Indica a finalização do processo ou subprocesso. Os eventos de finalização podem ser por mensagem, por escalonamento, por erro, por compensação, por terminação e por sinal. Utilize o ícone da ferramenta (destaque 3 da figura 3.3) para alterar entre os tipos.
Image Added
Figura 3.3.8 - Eventos de finalização
- Evento de finalização básica: indicação simples de que o processo foi finalizado.
- Evento de finalização por erro: indica que finalizou com erro e uma mensagem será enviada para um subprocesso.
- Evento de finalização por terminação: indica que ao finalizar todas as partes do processo serão encerradas.
- Evento de finalização por mensagem: indica que ao finalizar enviará uma mensagem para outro participante.
- Evento de finalização por compensação: indica que ao finalizar será iniciado o tratamento de compensações, no qual será desfeito todas as ações ocorridas no processo.
- Evento de finalização por escalonamento: indica que ao finalizar enviará uma mensagem de escalonamento para eventos de catch.
- Evento de finalização por sinal: indica que ao finalizar será enviado um sinal para outros processos.
Âncora painelPropriedades painelPropriedades
Painel de propriedades
A área de propriedades (destaque 3 da figura 3.2) pode mudar conforme o elemento selecionado. Algumas propriedades são específicas de um elemento e outras são comuns a todos.
Geral
Na aba geral é apresentado as seguintes propriedades:
Campo | Função |
---|---|
ID | O identificador do elemento é gerado automaticamente, mas que pode ser editado. |
Nome | (Opcional) Campo para adicionar um nome ao elemento. |
Versão da tag | (Opcional) Campo para adicionar um nome para ser a versão da tag. |
Executável | Ao habilitar, permite que o processo seja executado em outro fluxo. |
Prioridade da tarefa | (Opcional) Campo para informar a prioridade (valor numérico) da tarefa, que por padrão tem como valor igual a 0. |
Prioridade do processo | (Opcional) Campo para informar a prioridade do processo, que por padrão tem como valor igual a 0. |
Grupos de inicialização | (Opcional) Campo para adicionar grupos que podem realizar a inicialização do elemento ou processo. |
Usuários candidatos de inicialização | (Opcional) Campo para adicionar usuários que podem realizar a inicialização do elemento ou processo. |
Histórico de Time to Live | (Opcional) Campo para informar o tempo de vida do histórico (valor numérico), contado em dias. |
Inicializável | (Opcional) Especifica se o processo é iniciável na Lista de Tarefas ou não |
Documentação do elemento | (Opcional) Campo para descrever o elemento. |
Âncora | ||||
---|---|---|---|---|
|
Vincular bloco de programação
Para conseguir selecionar um bloco de programação no BPMN, primeiro é necessário habilitar o bloco em suas configurações e, em seguida, seleciona a função no Fluxo de trabalho.
No editor de Bloco de programação servidor, abra a janela de Propriedades do Bloco de Programação, selecione a propriedade Exibir no Bpmn (destaque 1 da figura 3.4.1) e clique em Salvar. Essa opção só está disponível nos blocos de programação do tipo Servidor.
Image Added
Figura 3.4.1 - Ativando opção de exibição no Bpmn
No fluxo de trabalho, você pode vincular a execução da função do Bloco de programação em alguns elementos específicos, por exemplo, uma tarefa de serviço, como mostrado abaixo.
Image Added
Figura 3.4.2 - Implementação de Expressão para vincular um Blockly
1. Arraste e selecione uma Tarefa, em seguida, clique no ícone da ferramenta.
2. Selecione a opção Tarefa de Serviço.
3. Selecione a opção "Expressão" da propriedade Implementação na aba lateral Geral.
Image Added
Figura 3.4.3 - Selecionando o bloco a ser vinculado
4. Clique no botão Editar da propriedade Expressão na aba lateral Geral.
5. Na janela de seleção do bloco de programação, clique no botão "...".
6. Selecione a função do bloco de programação que será executado na tarefa.
Informações |
---|
Após selecionar a opção "Expressão" no campo Implementação (3 da figura 3.4.2), os elementos que permitem a seleção de funções de blocos de programação irão exibir o botão "Editar" no campo Expressão (4 da figura 3.4.3). |
Listeners
Adiciona "ouvintes" para o elemento ou o processo. Os listeners podem ser uma classe Java, uma expressão, um script ou uma expressão delegada.
Entrada/saída
Permite criar parâmetros de entrada e saída. Cada parâmetro necessita de um nome, definição de tipo (Texto, Lista, Mapa ou Script) e valor.
Extensões
Nesta aba é possível adicionar novas propriedades, informando a chave e seu valor.
Glossário
Nesse tópico, reveremos algumas palavras chaves e seus conceitos.
- Instância de Processo: uma instância de processo ocorre durante a inicialização do processo. Caso outro usuário inicialize o mesmo processo, uma nova instância será criada e o processo terá duas instâncias em execução.
- Chave de negócio: uma forma de identificação para instância de processos, inserida no momento de iniciar uma nova instância de processo.
- Proprietário, Responsável e Candidato:
- Proprietário é o usuário que cria o fluxo de trabalho.
- Responsável é o usuário (ou grupo de usuários) encarregado da tarefa.
- Candidato é o usuário (ou grupo de usuários) que pode assumir a responsabilidade caso o usuário/grupo responsável atual não seja mais o encarregado.
- Estado de delegação: Informa o estado atual da tarefa.
- Variáveis: função básica que mantém os dados durante o processo em execução.
Âncora glossarioVariavel glossarioVariavel
Variáveis
O BPM trabalha com o conceito das variáveis no processo, que tem como função básica adicionar dados ao processo em execução.
Uma variável consiste basicamente em um nome e um valor.
Escopos de variáveis
Todas as entidades que podem ter variáveis e são chamadas de escopos de variáveis. Estas são execuções, que incluem instâncias de processo e tarefas.
Em geral, as variáveis são acessíveis nos seguintes casos:
- Instanciando processos.
- Entregando mensagens.
- Transições do ciclo de vida da tarefa, como conclusão ou resolução.
- Configurando / obtendo variáveis de fora.
- Definindo / obtendo variáveis.
- Expressões no modelo de processo.
- Scripts no modelo de processo.
- Consultas variáveis (históricas).
Tipos suportados
O mecanismo do processo suporta os seguintes tipos de valores variáveis (Figura 4).
Image Added
Figura 4 - Tipos de variáveis aceitos
Dependendo do valor real de uma variável, um tipo diferente é atribuído. Entre os tipos disponíveis, existem nove tipos de valores primitivos:
boolean
: Instâncias dejava.lang.Boolean
bytes
: Instâncias debyte[]
short
: Instâncias dejava.lang.Short
integer
: Instâncias dejava.lang.Integer
long
: Instâncias dejava.lang.Long
double
: Instâncias dejava.lang.Double
date
: Instâncias dejava.util.Date
string
: Instâncias dejava.lang.String
null
:null
referências
Variável de processo
Uma variável que você pode definir o valor dela ao modelar o processo.
Variável de execução
Variável que é criada na execução, por exemplo, ao executar um bloco o seu resultado irá para uma variável de execução.
Variável de tarefa
Por exemplo, ao criar uma tarefa com uma caixa de entrada para o usuário inserir o número de uma nota fiscal, ao digitar, esse número vira uma variável de tarefa.
Âncora aplicacaoPainelGerenciamento aplicacaoPainelGerenciamento
Painel de Gerenciamento
Após instalar o plugin Workflow, seu projeto web terá acesso a uma aplicação standalone que contém um painel completo para o gerenciamento do fluxo do BPMN. Essa aplicação permite administrar usuários, gerenciar e executar as tarefas com base no perfil dos usuários, alterar e manipular o fluxo e possui um dashboard das tarefas.
Por ser uma aplicação standalone, você não poderá realizar nenhuma modificação ou personalização na estrutura/layout do Painel de Gerenciamento. Porém, todos os recursos disponíveis nessa aplicação podem ser replicados e adaptados em seu projeto Cronapp através da API Workflow, disponível nos blocos de programação Servidor (Figura 2.2).
Image Added
Figura 5 - Página inicial da aplicação do BPM
Acesso a aplicação
Para acessar a interface web do Cronapp BPM, insira "/app/" após o domínio da sua aplicação. Vale reforçar que é necessário incluir a "/" ao final do endereço.
Exemplo: https://<meu domínio>
/app/
A função de bloco de programação da figura abaixo pode ser utilizada para abrir a aplicação standalone do Cronapp BPM. Utilize o bloco Abrir URL e configure o parâmetro URL de destino concatenando o bloco Obter URL Base mais o texto "/app/".
Image Added
Figura 5.1 - Exemplo de função para abrir a aplicação BPM
Para voltar para a página inicial da aplicação Cronapp, clique no ícone do usuário (1 da Figura 5.2) para abrir a opção Voltar para a aplicação.
Image Added
Figura 5.2 - Retorno a aplicação cronapp
Por padrão, o painel de gerenciamento possui 3 subaplicações: Painel de controle, Lista de tarefas e Administrar (Figura 5.2). O Administrador pode definir quem pode visualizar e/ou acessar as aplicações Painel de controle e Lista de tarefa.
Âncora painelControle painelControle
Painel de Controle
Ao acessar o painel de controle, sua interface (Figura 5.3) irá apresentar o número de instâncias de processos em execução, incidentes em aberto, tarefas humanas em aberto, a quantidade total de definições de processo e a quantidade total de implementações. A barra de navegação do painel de controle apresenta as seguintes funcionalidades para o painel de controle: Processos, Tarefas, Implantações e Nova definição de processo.
Image Added
Figura 5.3 - Painel de Gerenciamento
- Processos: redireciona para a tela com todos os processos implementados.
- Tarefas: redireciona para a tela com o resumo de todas as tarefas existentes.
- Implantações: redireciona para a tela que apresenta uma visão geral das implantações.
- Nova definição de processo: abre a janela do BPMN.
- Nome do usuário: apresenta as opções para voltar ao painel de gerenciamento e para aplicação.
- Meu perfil: redireciona para a tela inicial do painel de gerenciamento.
- Voltar para a aplicação: redireciona para a página home da aplicação Cronapp.
- Home: apresenta as opções para as outras subaplicações do BPM.
- Agora mesmo: apresenta gráficos informando a quantidade total de instâncias em execução (o gráfico será dividido por setores quando tiver diferentes processos), a quantidade total de incidentes ocorridos e a quantidade total de tarefas existentes (o gráfico será dividido por setores quando tiver atividades atribuídas e não atribuídas).
- Definições de processos: informa a quantidade total de processos existentes e ao clicar nessa quantidade, redireciona para a tela com todos os processos implementadas.
- Implantações: informa a quantidade total de implementações realizadas e ao clicar nessa quantidade, redireciona para a tela com que apresenta uma visão em geral das implantações.
Âncora controleProcessos controleProcessos
Processos
A opção Processos na barra de navegação apresentará todos os processos implementados em dois formatos: Lista e Visualizações.
Âncora processoAbaLista processoAbaLista
Aba Lista
Exibe uma lista com as definições de processos implementadas, possui as seguintes colunas:
- Estado: informa o estado dos processos, no qual pontos verdes e pontos vermelhos indicam respectivamente trabalhos em execução e trabalhos com falha. Nesse nível de observação, um ponto vermelho significa que há pelo menos uma instância de processo ou uma instância de subprocesso que possui um incidente não resolvido e esse incidente pode ser localizado clicando no nome do processo na coluna "Nome".
- Incidentes: informa a quantidade total de incidentes que ocorreram até o momento para o respectivo processo ou subprocesso. É possível ordenar conforme a quantidade, de forma crescente e decrescente.
- Execução de instâncias: Informa a quantidade total de instâncias executadas até o momento para o respectivo processo ou subprocesso. É possível ordenar conforme sua quantidade, de forma crescente e decrescente.
- Nome: informa o nome do processo ou subprocesso. Clique para acessar a página Tempo de execução, com mais informações sobre o processo.
Image Added
Figura 5.3.1 - Definições de processo implantada
Âncora processoAbaVisualizacoes processoAbaVisualizacoes
Aba Visualizações
Ao clicar em Visualizações será exibido o modelo visual dos processos listados, informando o número de instâncias em execução caso o processo ou subprocesso não contenha falhas ou informando o número de incidente caso o processo esteja com falhas.
Image Added
Figura 5.3.2 - Definição de processo implantada
Âncora processoTempoExecucao processoTempoExecucao
Tempo de execução
Ao clicar no Nome do processo enquanto está em formato de lista (Figura 5.3.1) ou no modo visual (Figura 5.3.2), você será redirecionado para a página de tempo de execução do processo, no qual fornece mais informações sobre o processo e seu status.
Image Added
Figura 5.3.3 - Tempo de execução do processo
Menu esquerdo:
- Versão da definição: informa a versão atual do processo que é gerada automaticamente em forma sequencial a cada modificação. Quando há mais de uma versão, será criado uma caixa de seleção nesse campo para permitir escolher a versão a ser visualizada na tela.
- Versão da tag: informa a versão atual da tag, gerado manualmente quando é criado ou editado um processo ou subprocesso.
- ID da definição: informa o ID do processo, gerado automaticamente, mas que pode ser alterado quando o mesmo for editado.
- Chave da definição: informa a chave do processo, é gerada automaticamente assim que é criado o processo ou subprocesso.
- Nome da definição: informa o nome do processo ou subprocesso, definido no momento de criação ou edição.
- Tempo de vida do histórico: informa o tempo (em dias) do histórico.
- ID da implantação: informa o ID da implantação correspondente do processo.
- Instâncias em execução: informa a quantidade de instâncias em execução na versão atual e a quantidade de instâncias em execução em todas as versões.
Opção superior:
- Estatísticas de atividade da instância: quando ligado, apresenta algumas informações na tela quando a atividade está em execução.
Abas inferiores:
- Instâncias do processo: todas as instâncias em execução são listadas em uma tabela, informando o horário de início, o estado e a chave. Além disso, é possível adicionar critérios para realizar uma pesquisa de acordo com a chave, o ID da instância, a data de início e a variável.
- Incidentes: todos os incidentes que ocorreram nesse processo são listados, informando o momento que ocorreu, a mensagem exibida e um botão para resolver o incidente.
- Definições do processo chamado: exibe os processos filhos chamados, informando os nomes dos subprocessos. Ao clicar no nome, exibirá o processo na visualização.
- Definições de trabalho: exibe as definições de trabalho que estão vinculadas ao processo, informando o nome da atividade, o tipo de trabalho, a configuração e o estado. Além disso, também é possível definir a prioridade dos trabalhos.
Menu direito:
- Ícone da lixeira: exclui a versão selecionada na versão de definição.
- Ícone de configuração: altera a prioridade da tarefa vinculada ao processo.
- Ícone de edição: abre o ambiente para edição do processo.
Edição do processo
Ao clicar no ícone de edição (destaque 3 da figura 5.3.3), será aberto o Editor de Fluxo de trabalho para permitir a modificação do fluxo em tempo de execução. Para entender melhor acesse, o tópico Área de Edição.
Image Added
Figura 5.3.4 - Definições de trabalho
Âncora controleTarefas controleTarefas
Tarefas
A aba Tarefa na barra de navegação possibilita a visualização de tarefas abertas e atribuídas por tipo e grupo.
- Tipo: nesta categoria você pode ver quantas tarefas abertas existem por tipo para um usuário, um ou mais grupos, não atribuído e o total.
- Grupo: esta categoria mostra como todas as tarefas abertas e atribuídas a um grupo são distribuídas entre os grupos individuais.
Image Added
Figura 5.3.5 - Atribuições por tipo e grupo
Âncora controleImplantacoes controleImplantacoes
Implantações
A visualização de implantação do Cockpit mostra uma visão geral de todas as implantações, seus recursos e o conteúdo desses recursos. Ele permite a exclusão de implantações existentes, a reimplantação de recursos antigos e a criação de novas implantações. O conteúdo dos recursos nas implantações pode ser exibido. Também é possível baixar recursos únicos dessa exibição.
Image Added
Figura 5.3.6 - Visualização de implantação
- Horário de implantação: ordena por horário crescente ou decrescente os processos listados.
- Implantar: uma nova implantação será criada, contendo um nome e um arquivo
*.bpmn
. - Campo Adicionar critérios: filtra os processos pelas seguintes categorias: Identidade, Nome, Hora, fonte, Pesquisa Indefinida, Tenant ID e Sem Tenant ID.
- Copiar link para a localização atual: copia a URL do filtro utilizado ao campo Adicionar critérios.
- Excluir Implantações: exclui a implantação possibilitando as seguintes opções:
- Cascata: selecionando esta opção ao excluir, todas as instâncias, incluindo históricos de casos relacionados a essa implantação, também serão excluídos;
- Pular Listeners personalizados: selecionando esta opção ao excluir, os Listeners construtores serão notificados sobre a finalização do evento;
- Pular o mapeamento de entradas e saídas: selecionando esta opção ao excluir, o mapeamento será ignorado durante a remoção da implantação.
- Reimplantar Implantação: todos os recursos do processo selecionado serão reimplantados criando uma versão.
- Download: faz download do arquivo
*.bpmn
referente ao processo selecionado; - Reimplantar: todos os recursos do processo selecionado serão reimplantados criando uma versão. Mesma função do Reimplantar implantação.
Âncora controleNovaDefinicaoProcesso controleNovaDefinicaoProcesso
Nova definição de processo
Nessa aba é possível definir novos processos dentro da própria aplicação, para entender melhor como criar o fluxo dos processos acesse o tópico Área de Edição.
Image Added
Figura 5.3.7 - Nova definição de processo
Informações |
---|
Atenção ao criar e editar Fluxos por essa aba em tempo de execução, pois não será possível abrir a janela de seleção de blocos de programação para vincular uma função, como ocorre ao criar em tempo desenvolvimento no Cronapp IDE. Ver mais detalhes no tópico Vincular bloco de programação. |
Âncora listaDeTarefas listaDeTarefas
Lista de tarefas
A lista de tarefas é acessível a partir da tela inicial do Painel de Gerenciamento e apresenta uma visão geral das tarefas pendentes.
Image Added
Figura 5.4 - Janela principal da Lista de Tarefas
- Atalhos: abre um modal apresentando uma lista de atalhos utilizados para a tela.
- Nova tarefa: abre um modal para criação de uma tarefa.
- Iniciar um processo: abre um modal apresentados os processos para serem inicializados.
- Nome do usuário: apresenta as opções para voltar ao painel de gerenciamento e para aplicação:
- Meu perfil: redireciona para a tela do painel de gerenciamento;
- Voltar para a aplicação: redireciona para a página home da aplicação Cronapp.
- Home: apresenta as opções para as outras aplicações do BPM:
- Área para criar filtro: cria / mostra filtros existentes para aquele usuário.
Área de tarefas listadas: apresenta as tarefas relacionadas ao filtro selecionado, como também um campo de pesquisa e ordenação para filtrar as tarefas por outras opções.
- Área de visualização da tarefa: apresenta os detalhes da tarefa selecionada.
Âncora areaCriarFiltro areaCriarFiltro
Criar filtro
Ao clicar em Criar filtro +, um modal será aberto para criar e personalizar seu filtro.
Image Added
Figura 5.4.1 - Modal de criação de filtro
Acordeão do modal do filtro:
- Geral: essa aba possui campos de identificação e personalização.
- Nome do filtro.
- Cor: utilizado para distinguir dos demais filtros.
- Descrição do filtro.
- Prioridade: quanto menor o número, maior a prioridade.
- Atualização automática: define um intervalo de atualização padrão de 10 segundos.
Critério: são definidos os critérios do filtro. Ao adicionar um critério, são exibidos 2 campos.
Chave: uma caixa de seleção com diversas opções de filtro. Chaves marcadas com * aceita expressões como valor (ex.:
${currentUser()}
).Valor da chave.
- Permissões: nessa aba é possível definir quais usuários ou quais grupos podem ter acesso a esse filtro.
- Acessível para todos os usuários: ao marcar, o filtro ficará disponível para todos e não será possível selecionar usuários ou grupos.
- Grupo / Usuário: botão de alternância para selecionar um Grupo ou Usuário.
- Identificador: ID do grupo ou do usuário.
- Variáveis: nessa aba é possível inserir variáveis para serem mostradas na área de tarefas listadas, no entanto, essas variáveis não irão influenciar nessas tarefas listadas. Para adicionar uma variável, precisa adicionar o nome (que é o nome da variável real, seja ela de execução, processo ou tarefa) e o rótulo (que é um nome fantasia para ser mostrado nas tarefas listadas do filtro).
Após salvar, o filtro será apresentado na lista de filtros (destaque 6 da figura 5.4).
Âncora areaTarefasListadas areaTarefasListadas
Tarefas listadas
Nessa área são visualizadas todas as tarefas para o filtro selecionando, exibindo os de menor prioridade primeiro. É possível ordenar as listas de tarefas utilizando um ou mais classificadores. Por padrão, todo filtro inicia com o classificador data de criação (Criado), porém, ao adicionar uma segunda classificação, é possível excluí-la clicando no botão x antes do nome (destaque 1 da figura 5.4.2). Clique na seta na frente da classificação para definir se a ordem será ascendente (^) ou descendente (v) (Figura 5.4.2).
Image Added
Figura 5.4.2 - Adicionar classificação
Abaixo dos classificadores, encontra-se o campo de pesquisa, onde é possível adicionar filtros para as tarefas listadas. Ao clicar no campo, uma lista de filtros é exibida, basta selecionar o tipo e informar o dado a ser aplicado no filtro (Figura 5.2.3). O campo também apresenta a quantidade de tarefas listadas (1 da Figura 5.4.3), um botão para copiar os filtros adicionais (2) e outro para salvar os filtros (3), permitindo selecioná-los facilmente depois. Vale ressaltar que a ordem de aplicação dos filtros influencia na busca das tarefas, então se existirem filtros como responsável e data de vencimento, a busca irá priorizar o responsável e depois aplicar o filtro de data de vencimento.
Image Added
Figura 5.4.3 - Aplicando filtros no campo de busca
Opções de tipos de filtro:
- Variável de processo: informe o nome da variável de processo e o seu valor.
- Variável de tarefa: informe o nome da variável de tarefa e o seu valor.
- Variável de caso: informe o nome da variável de caso e o seu valor.
- ID da instância de processo.
- Chave de negócio da instância de processo.
- ID da definição do processo.
- Nome da definição do processo.
- ID da execução.
ID da instância de caso.
Chave de negócio da instância de caso.
ID do caso.
Chave do caso.
Nome do caso.
- ID da execução do caso.
- Responsável: responsável pela tarefa.
- Proprietário: proprietário da tarefa.
Grupo candidato.
Usuário candidato.
Usuário envolvido.
Chave de definição de tarefas.
Nome: nome da tarefa.
Descrição: textos/comentários presentes nos campos de descrição da tarefa.
Prioridade: valor de prioridade.
Data de vencimento.
Data de acompanhamento.
Data de criação.
Estado de delegação.
ID do ocupante: ID de um usuário.
Sem ID do ocupante: filtra tarefa que não fora assumida.
Âncora areaVisualizarTarefa areaVisualizarTarefa
Visualização da tarefa
Nessa parte é possível ver os detalhes da tarefa, realizar algumas configurações e completar a tarefa.
Image Added
Figura 5.4.4 - Visualização da tarefa
- Comentar +: adiciona um comentário, a tarefa que será visualizada no histórico juntamente com a data e o nome do usuário.
- Definir data de acompanhamento: adiciona uma data e hora para criar lembretes a fim de realizar o seu monitoramento.
- Definir data de vencimento: adiciona uma data e hora para o deadline da tarefa.
- Adicionar grupos: adiciona e remove grupos de usuários para ser responsável pela tarefa.
- Assumir: adicione e remove um usuário responsável pela tarefa.
- Subaba Formulário: exibe o formulário com a tarefa selecionada. Pode ser gerado através da aba Formulário (área de propriedade ao usar o elemento Tarefas de Usuários), formulário externo (outra aplicação), formulário HTML incorporado ou formulário genérico, gerado assim que uma nova tarefa for criada.
- Subaba Histórico: exibe informações detalhadas do histórico de atribuições, atualizações para a data de vencimento e datas de acompanhamento, além de permitir atribuir tarefas e visualizar os comentários inseridos.
- Subaba Diagrama: mostra o diagrama da definição do processo, destacando a posição atual do fluxo.
- Subaba Descrição: exibe a descrição da tarefa do usuário, definida no momento de criação do processo e/ou da tarefa.
Âncora listaTarefaATALHOS listaTarefaATALHOS
Atalhos
Ao clicar em Atalhos na barra de navegação, um modal será exibido com informações de teclas de atalho que podem ser utilizadas nessa janela e quais são suas ações.
Image Added
Figura 5.4.5 - Lista de atalhos
Âncora listaTarefaNOVA listaTarefaNOVA
Nova Tarefa
Ao clicar no item Nova Tarefa na barra de navegação, um modal será exibido com os campos para adicionar uma nova tarefa.
Image Added
Figura 5.4.6 - Adicionar nova tarefa
- Nome: adiciona um título para a tarefa.
- Responsável: indica o usuário que será responsável pela tarefa.
- Descrição: campo para escrever mais detalhes sobre a tarefa.
Nota | ||
---|---|---|
| ||
As tarefas criadas nessa janela não serão vinculadas automaticamente ao processo, essa ação deve ser feita manualmente. |
Âncora listaTarefaINICIAR listaTarefaINICIAR
Iniciar um Processo
Ao clicar em Iniciar um Processo na barra de navegação, um modal será exibido com a lista de processos que podem ser inicializados.
Image Added
Figura 5.4.7 - Iniciar um processo
Após selecionar um processo, serão exibidos campos para incluir a Chave de negócios e Variáveis.
Image Added
Figura 5.4.8 - Campos para atribuir chaves de negócios e variáveis
Âncora administrarLayout administrarLayout
Administrar
A página Administrar é acessível a partir da tela inicial do Painel de Gerenciamento, nela é possível configurar usuários, grupos, autorizações e sistema por meio dos serviços de identidade e autorizações do mecanismo. Além disso, você pode conectar o serviço Administrar ao seu sistema LDAP, ou seja, os usuários e grupos cadastrados através da aplicação padrão do Cronapp poderão ser utilizados automaticamente pelo sistema Cronapp BPM.
Image Added
Figura 5.5 - Painel Administrar
Âncora AdmUsuarios AdmUsuarios
Usuários
Para criar ou editar usuários, você deverá acessar a tela de Usuários da aplicação Cronapp (Figura 5.5.1). Ao configurar um usuário, é possível vinculá-lo a um ou mais Grupos.
Image Added
Figura 5.5.1 - Página de Usuário na aplicação Cronapp
Lista de Usuários
O link Lista de Usuário no painel Administrar direciona para a página de gerenciamento dos usuários, clique em editar para abrir a página Meu Perfil do usuário selecionado.
Image Added
Figura 5.5.2 - Lista de Usuário do Painel de controle
Âncora MeuPerfil MeuPerfil
Meu Perfil
O link Meu Perfil no painel Administrar direciona para a página de edição do Perfil o usuário (Figura 5.5.3), para ter acesso a todos os dados do usuário, acesse a página de usuários da aplicação Cronapp. Os links ID e Editar na lista de usuários (Figura 5.5.2) também direcionam para essa página.
Image Added
Figura 5.5.3 - Informações do Perfil
Na aba Grupos é possível visualizar os grupos associados e adicionar novos (Figura 5.5.4).
Image Added
Figura 5.5.4 - Lista de grupos do usuário
Âncora AdmGrupos AdmGrupos
Grupos
A aplicação do BPM obtém os grupos da aplicação Cronapp. Para criar ou editar grupos, você deverá acessar a tela de Grupos da aplicação Cronapp (Figura 5.5.5).
Para mais detalhes sobre o sistema de Grupos do Cronapp, acesse a documentação Permissão de segurança.
Image Added
Figura 5.5.5 - Página de Grupos na aplicação Cronapp
Lista de Grupos
O link Lista de Grupo no painel Administrar direciona para a página que exibe os Grupos do sistema.
Image Added
Figura 5.5.6 - Lista de Grupos
Âncora MeuGrupo MeuGrupo
Informação do Grupo
Os links ID e Editar na lista de Grupos (Figura 5.5.6) direcionam para a subaba Informação com detalhes do Grupo selecionado, já a subaba Usuários exibem os usuários vinculado ao grupo selecionado (Figura 5.5.7).
Não é possível editar os dados na subaba Informação e Usuários, para isso, acesse a página de Grupos da aplicação Cronapp.
Image Added
Figura 5.5.7 - Informação do Grupo
Âncora AdmAutorizacoes AdmAutorizacoes
Autorizações
O link Gerenciar autorizações no painel Administrar direciona para a página com o controle de acesso aos recursos da aplicação. O serviço de autorização possibilita que os usuários acessem dados em diferentes níveis, sendo possível configurar, por exemplo, quais abas da sua aplicação ele poderá acessar.
Mas lembre-se que o BPM está incorporado a uma aplicação Cronapp, que possui seu próprio controle de permissões de usuários.
Informações |
---|
Segundo a documentação oficial do Camunda, a autorização é necessária apenas se partes não confiáveis interagirem diretamente com a API do mecanismo de processo. |
No menu lateral (Figura 6.6) é possível selecionar quais grupos e usuários poderão ou não ter acesso a determinadas permissões:
- Aplicação: acesso à lista de tarefas e ao painel de controle (ou ambos).
- Autorização: criar, ler, atualizar e apagar autorizações.
- Definição de processo: concede ou nega autorização para ler, atualizar, apagar, criar instância, atualizar instância, deletar instância, migrar instância, ler tarefa, atualizar tarefa, atribuir tarefa, trabalhar tarefa, ler histórico e deletar histórico.
- Filtro: ler atualizar e apagar os filtros pré-definidos.
- Grupo: criar, ler, atualizar e apagar os grupos.
- Implantação: criar, ler ou apagar as implantações.
- Instância do processo: criar, ler, atualizar ou apagar as instâncias do processo.
- Membro do Grupo: podem criar e apagar membros do grupo.
- Painel de controle: podem ler, criar instância, ler histórico e deletar histórico.
- Tarefa: criar, ler, atualizar, apagar, atribuir tarefa ou trabalhar em tarefas.
- Usuário: criar, ler, atualizar ou apagar os usuários.
Image Added
Figura 5.5.8 - Gerenciar Autorizações
Ao criar ou editar uma autorização, serão exibidos os seguintes campos:
- Tipos: possui as opções Global, Permitir e Negar.
- Usuário ou grupo: clique para selecionar usuário ou grupo.
- ID do usuário ou grupo: informe o ID do usuário ou grupo de acordo com a definição do item 2.
- Permissões selecionadas.
- Excluir permissões selecionadas.
- Caixa de seleção de permissões: lista as permissões disponíveis para o tipo autorização. Ex.: Ler, Criar Instância, Ler Histórico e Apagar.
- ID do recurso: informe o ID do recurso que será bloqueado ou autorizado.
- Salvar.
- Cancelar.
Âncora AdmSistema AdmSistema
Sistema
Os links Geral e Métricas de Execução no painel Administrar direcionam para páginas com informações sobre o andamento da aplicação BPM.
A subaba Geral contém informações a respeito do funcionamento do Mecanismo de processo
Image Added
Figura 5.5.9 - Aba Geral
A subaba Métricas de Execução exibe um número aproximado de Instância do fluxo de nós (FNI), que é a quantidade de instâncias em andamento, processado pelo mecanismo no intervalo de tempo selecionado.
Image Added
Figura 5.5.10 - Aba Métricas de Execução
Nesta Página
Índice maxLevel 3
Nessa Página:
toc