Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Painel
borderColor#ebecf0

Estado
subtletrue
titleExemplo 1

Em um processo de Envio de mercadoria, é preciso decidir qual método de envio utilizar dependendo da região para onde a mercadoria será enviada. Sendo assim, o dado a ser analisado é a região, que pode ser Metropolitana ou Interior. Se for Metropolitana, o método de envio será o Express. Se for Interior, o método de envio será o Padrão.

Estado
subtletrue
titleExemplo 2

Em um processo de Aprovação de despesas, o gestor responsável por aprovar cada despesa varia de acordo com sua categoria, que pode ser Equipamento, Publicidade, Contratação etc. Dessa forma, o dado a ser analisado é a categoria da despesa. Quando a categoria for Equipamento, a aprovação deve ser enviada para o gestor de Infraestrutura. Se for Publicidade, para o gestor de Marketing e, quando for Contratação, para o gestor de RH.

...

  • o outro campo do formulário ou o valor fixo que será comparado com o primeiro campo do formulário, dependendo do que foi definido na origem do valor.

...

Exemplos de uso

...

Reunimos aqui vários alguns cenários utilizando as condições simples no componente Exclusivo. Os exemplos contam com a necessidade de decisão do processo, as condições que serão verificadas pelo componente e o resultado de acordo com a condição atendida.

...

Section
Painel
borderColor#ebecf0

Toggle Cloak
id@simples1
 Reclamação de cliente sobre um pedido na ouvidoria.

Cloak
id@simples1

trueCenário
Em um processo de Abertura de ouvidoria, quando um cliente abre uma reclamação, ele precisa informar qual é a categoria do seu problema, se é qualidade do produto, entrega do produto ou problemas no atendimento. Com base nisso, depois da análise prévia da ouvidoria e o envio de um parecer para o cliente, a reclamação é encaminhada para a área responsável pela sua resolução, de acordo com a categoria do problema.

trueCondição 1
trueBlueRegra 1
→ Campo do formulário Categoria da reclamação precisa conter um dado igual a Campo valor qualidade.

trueCondição 2
trueBlueRegra 1
→ Campo do formulário Categoria da reclamação precisa conter um dado igual a Campo valor entrega.

trueCondição 3
trueBlueRegra 1
→ Campo do formulário Categoria da reclamação precisa conter um dado igual a Campo valor atendimento.

Significa que, quando a reclamação chegar no componente Exclusivo, será analisada a categoria do problema do cliente e, a partir disso, encaminhará a reclamação será encaminhada para o fluxo correspondente à área responsável pela sua resolução do problema.

Vamos supor que o cliente selecionou Entrega como a categoria do problema no formulário da reclamação. Nesse caso, a Condição 2 é atendida e a reclamação é encaminhada para a área de logísticaLogística, que precisa analisar o ocorrido e enviar uma solução para o cliente.

Painel
borderColor#ebecf0

Toggle Cloak
id@simples2
Aprovação de compra com faixas de valor.

Cloak
id@simples2

trueCenário
Em um processo de Aprovação de compra, é necessário que a aprovação seja feita pelo responsável pela alçada de acordo com o valor da compra. Ou seja, se for uma compra de até R$ 5.000,00, o próprio gestor pode aprovar. Se for entre R$ 5.001,00 e R$ 10.000,00, precisar ser aprovado pelo diretor. E, acima de R$ 10.000,00, é necessário que o diretor da área aprove.

trueCondição 1
trueBlueRegra 1
→ Campo do formulário Valor da compra precisa conter um dado menor ou igual a Campo valor 5000.

trueCondição 2
trueBlueRegra 1
→ Campo do formulário Valor da compra precisa conter um dado maior que Campo valor 5000.
E
trueBlueRegra 2
Campo do formulário Valor da compra precisa conter um dado menor ou igual a Campo valor 10000.

trueCondição 3
trueBlueRegra 1
→ Campo do formulário Valor da compra precisa conter um dado maior que Campo valor 10000.

Significa que, quando a solicitação chegar no componente Exclusivo, será avaliado o valor da compra e será verificada qual condição é atendida com base nesse valor, encaminhando a solicitação para o aprovador correspondente.

Vamos supor que o valor da compra em questão é R$ 6.500,00. Nesse caso, a Condição 2 é atendida, visto que o valor é maior que R$ 5.000,00 e menor que R$ 10.000,00.

Painel
borderColor#ebecf0

Toggle Cloak
id@simples3
Solicitação de suporte técnico para o serviço de Internet.

Cloak
id@simples3

trueCenário
Em um processo de Suporte técnico de uma prestadora de serviço de Internet, quando um cliente abre uma solicitação de suporte, o primeiro nível de atendimento precisa identificar a possível origem do problema, para que ela seja encaminhada para a área correta oferecer uma solução. Sendo assim, na análise do atendente do primeiro nível, é necessário determinar se a causa está relacionada à software, hardware ou conectividade.

trueCondição 1
trueBlueRegra 1
→ Campo do formulário Possível causa precisa conter um dado igual a Campo valor software.

trueCondição 2
trueBlueRegra 1
→ Campo do formulário Possível causa precisa conter um dado igual a Campo valor hardware.

trueCondição 3
trueBlueRegra 1
→ Campo do formulário Possível causa precisa conter um dado igual a Campo valor conectividade.

Significa que, quando a solicitação de suporte chegar no componente Exclusivo, será analisada a possível causa do problema do cliente e, a partir disso, encaminhará a solicitação será encaminhada para o fluxo correspondente à área responsável pela possível causa.

Vamos supor que o atendente analisou o que o cliente reportou e selecionou Conectividade como a possível causa do problema no formulário da solicitação. Nesse caso, a Condição 3 é atendida e a solicitação é encaminhada para a área de manutenção Manutenção de redes, que é a responsável por problemas de conectividade.

...

02. Defina um título ou nome para o componente que representa o direcionamento automático da solicitação para uma das etapas possíveis do fluxo do processo, de acordo com o resultado obtido.

...

05. Clique em Regra 1 para expandir e construir a primeira regra que formará para compor a condição.

06. Selecione os dados necessários para construir a regra.

Os dados necessários para a criação da regra são:
Painel
borderColor#f2f2f2
bgColor#f2f2f2

Campo do formulário
Campo do formulário vinculado ao processo do qual será obtido o valor que será utilizado para comparação e verificação da regra;.

Operador
Determina o tipo de comparação que será feita. As opções disponíveis são: 

  • igual a;
  • diferente de;
  • contendo;
  • maior que;
  • maior ou igual a;
  • menor que;
  • menor ou igual a;
  • proibido;
  • qualquer um.

Origem do valor para comparação
De onde será obtido o valor que será comparado com o valor do campo do formulário selecionado anteriormente. As opções disponíveis são:

  • Campo do formulário: quando selecionada, determina que o valor a ser comparado será obtido de outro campo do formulário vinculado ao processo. Nesse caso, é necessário selecionar esse outro campo do formulário no último campo de composição da regra, que é o Valor a ser comparado.
  • Campo valor: quando selecionada, determina que o valor a ser comparado é um valor fixo e será obtido da própria regra. Nesse caso, é necessário inserir manualmente o valor desejado no último campo de composição da regra, que é o Valor a ser comparado.

Valor a ser comparado
O outro campo do formulário ou o valor fixo da regra, dependendo do que foi selecionado na origem do valor:

  • se a origem selecionada foi Campo de formulário, é necessário selecionar o outro campo do formulário do qual o valor para comparação será obtido;
  • se a origem selecionada foi Campo valor, é necessário inserir manualmente o valor fixo que será utilizado para comparação.

    Dica
    titleDicas!

    Para os tipos de campos que possuem a propriedade Valor, o valor que deve ser inserido aqui é o mesmo que foi inserido no campo Valor das propriedades do campo do formulário selecionado para comparação. 

    Painel
    borderColor#ebecf0

    Estado
    subtletrue
    titleExemplo

    Se o campo do formulário selecionado para comparação é o Categoria da despesa, do tipo Combo, o valor a ser inserido aqui é o mesmo valor inserido no campo Valor de uma das opções de seleção definidas para o campo. 

    Se o campo selecionado é um campo simples do tipo numérico, mesmo que ele contenha alguma máscara – como moeda, CPF etc. – o valor a ser inserido aqui é apenas o número, sem pontos, vírgulas ou outros caracteres.

    Painel
    borderColor#ebecf0

    Estado
    subtletrue
    titleExemplo

    Se o campo do formulário selecionado para comparação é o Valor da compra, do tipo Simples, Numérico e com máscara de Moeda em Reais (R$), o valor a ser inserido aqui é apenas o número, sem ponto, sem vírgula e sem casas decimais. 

Toggle Cloak
id@regras
Estado
subtletrue
titleClique aqui e veja alguns exemplos de regras

Cloak
id@regras
#ebecf0

Em um processo de Aprovação de despesa:
→ Campo do formulário Categoria da despesa precisa conter um dado igual a Campo valor publicidade.

Significa que, quando o solicitante selecionar Publicidade como Categoria da despesa no formulário, essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

Em um processo de Aprovação de compra:
→ Campo do formulário Valor da compra precisa conter um dado menor que Campo valor 5000.

Significa que, quando o solicitante informar o Valor da compra menor do que R$ 5.000,00, essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

Em um processo de Suporte técnico:
→ Campo do formulário Usuário de abertura precisa conter um dado diferente de Campo do formulário Solicitante.

Significa que, se uma pessoa (Usuário de abertura) está abrindo um chamado solicitando suporte para outra pessoa (Solicitante), essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

...

04. Clique em Regra 1 para expandir e construir a primeira regra que formará para compor a condição.

05. Selecione os dados necessários para construir a regra.

Os dados necessários para a criação da regra são:
Painel
borderColor#f2f2f2
bgColor#f2f2f2

Campo do formulário
Campo do formulário vinculado ao processo do qual será obtido o valor que será utilizado para comparação e verificação da regra;.

Operador
Determina o tipo de comparação que será feita. As opções disponíveis são: 

  • igual a;
  • diferente de;
  • contendo;
  • maior que;
  • maior ou igual a;
  • menor que;
  • menor ou igual a;
  • proibido;
  • qualquer um.

Origem do valor para comparação
De onde será obtido o valor que será comparado com o valor do campo do formulário selecionado anteriormente. As opções disponíveis são:

  • Campo do formulário: quando selecionada, determina que o valor a ser comparado será obtido de outro campo do formulário vinculado ao processo. Nesse caso, é necessário selecionar esse outro campo do formulário no último campo de composição da regra, que é o Valor a ser comparado.
  • Campo valor: quando selecionada, determina que o valor a ser comparado é um valor fixo e será obtido da própria regra. Nesse caso, é necessário inserir manualmente o valor desejado no último campo de composição da regra, que é o Valor a ser comparado.

Valor a ser comparado
O outro campo do formulário ou o valor fixo da regra, dependendo do que foi selecionado na origem do valor:

  • se a origem selecionada foi Campo de formulário, é necessário selecionar o outro campo do formulário do qual o valor para comparação será obtido;
  • se a origem selecionada foi Campo valor, é necessário inserir manualmente o valor fixo que será utilizado para comparação.

    Dica
    titleDicas!

    Para os tipos de campos que possuem a propriedade Valor, o valor que deve ser inserido aqui é o mesmo que foi inserido no campo Valor das propriedades do campo do formulário selecionado para comparação. 

    Painel
    borderColor#ebecf0

    Estado
    subtletrue
    titleExemplo

    Se o campo do formulário selecionado para comparação é o Categoria da despesa, do tipo Combo, o valor a ser inserido aqui é o mesmo valor inserido no campo Valor de uma das opções de seleção definidas para o campo. 

    Se o campo selecionado é um campo simples do tipo numérico, mesmo que ele contenha alguma máscara – como moeda, CPF etc. – o valor a ser inserido aqui é apenas o número, sem pontos, vírgulas ou outros caracteres.

    Painel
    borderColor#ebecf0

    Estado
    subtletrue
    titleExemplo

    Se o campo do formulário selecionado para comparação é o Valor da compra, do tipo Simples, Numérico e com máscara de Moeda em Reais (R$), o valor a ser inserido aqui é apenas o número, sem ponto, sem vírgula e sem casas decimais. 

Toggle Cloak
id@regras-2
Estado
subtletrue
titleClique aqui e veja alguns exemplos de regras

Cloak
id@regras-2
#ebecf0

Em um processo de Aprovação de despesa:
→ Campo do formulário Categoria da despesa precisa conter um dado igual a Campo valor publicidade.

Significa que, quando o solicitante selecionar Publicidade como Categoria da despesa no formulário, essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

Em um processo de Aprovação de compra:
→ Campo do formulário Valor da compra precisa conter um dado menor que Campo valor 5000.

Significa que, quando o solicitante informar o Valor da compra menor do que R$ 5.000,00, essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

Em um processo de Suporte técnico:
→ Campo do formulário Usuário de abertura precisa conter um dado diferente de Campo do formulário Solicitante.

Significa que, se uma pessoa (Usuário de abertura) está abrindo um chamado solicitando suporte para outra pessoa (Solicitante), essa condição será atendida e a solicitação será enviada para o fluxo correspondente a ela.

...

Section
Painel
borderColor#ebecf0

Toggle Cloak
id@saiba-mais-1
Qual a diferença entre os componentes Exclusivo, Paralelo e Inclusivo?

Cloak
id@saiba-mais-1

Basicamente, a diferença entre esses componentes é:

  • Exclusivo: decide o destino da solicitação baseado em condições e a direciona para o fluxo da primeira condição atendida. A partir disso, ela segue adiante em um fluxo único;.

    #ebecf0

    trueExemplo
    Em um processo de Aprovação de crédito, um cliente faz uma solicitação de crédito para um banco e o processo precisa determinar se a solicitação é aprovada ou rejeitada. Para tomar essa decisão, esse componente analisa a pontuação de crédito que o cliente possui no mercado. Se a pontuação for maior que 700, o crédito é concedido e a solicitação segue para as etapas necessárias para que seja liberado ao cliente. Caso contrário, o crédito é negado e a solicitação é finalizada.

  • Paralelo: divide o fluxo em várias etapas que podem ser executadas em paralelo e, depois de finalizadas, o fluxo se torna único novamente;.

    #ebecf0

    trueExemplo
    Em um processo de Lançamento de produto, as etapas Marketing, Logística e Treinamento de vendas podem ser feitas simultaneamente. Dessa forma, esse componente divide o fluxo em três etapas e indica o início dessas etapas que serão executadas em paralelo. Quando finalizadas, as três etapas são unificadas pelo componente Join e o fluxo volta a ser único.


  • Inclusivo: é uma junção do Exclusivo e do Paralelo, ou seja, divide o fluxo no número de etapas correspondente ao número de condições que foram atendidas.

    #ebecf0

    trueExemplo
    Em um processo de Análise de renda, o banco verifica qual é a renda familiar do cliente para que diferentes tipos de crédito ou investimentos sejam aprovados ou oferecidos. Existem 3 condições:

    1. se a renda for maior que R$ 8.000,00, o financiamento de automóvel é liberado para o cliente;
    2. se a renda for maior que R$ 15.000,00, o financiamento de imóvel é liberado para o cliente;
    3. se a renda for maior que R$ 20.000,00, a compra de títulos do governo é oferecida como investimento para o cliente.

    Vamos supor que um cliente possua a renda de R$ 18.000,00. Quando sua renda for analisada, as duas primeiras condições serão atendidas. Neste caso, o fluxo seguirá paralelamente por dois caminhos: o que leva para a etapa Liberar financiamento automóvel e o que leva para a etapa Liberar financiamento imóvel. A terceira condição não é atendida, por isso, o fluxo não seguirá pelo caminho correspondente a ela.

Painel
borderColor#ebecf0

Toggle Cloak
id@saiba-mais-2
O componente Exclusivo pode afetar o desempenho do processo?

Cloak
id@saiba-mais-2

Não. O componente Exclusivopor si só não costuma comprometer o desempenho de um processo de forma significativa. No entanto, o impacto no desempenho depende mais do contexto em que ele é utilizado e das decisões associadas a ele.

Se houver muitas condições complexas sendo avaliadas ou se o processo tiver muitos componentes Exclusivos com decisões complicadas em cada passo, isso pode, de fato, afetar o desempenho de forma indireta, mas não por causa do componente em si, mas pela lógica de decisão ou pela quantidade de verificações validações necessárias.

Além disso, em ambientes que exigem processamento de alta carga ou baixa latência, o número excessivo de verificações validação de condições em componentes Exclusivos pode, em alguns casos, aumentar o tempo de execução do processo. Isso seria mais um reflexo da lógica e da complexidade da aplicação do que do componente em si.

No geral, o componente Exclusivo não costuma ser a causa direta de baixo desempenho, mas a forma como ele é aplicado, em conjunto com outras práticas e a complexidade das condições envolvidas, pode influenciar no tempo de execução do processo.

Painel
borderColor#ebecf0

Toggle Cloak
id@saiba-mais-3
 É possível utilizar múltiplas regras no mesmo componente Exclusivo?

Cloak
id@saiba-mais-3

Sim, é possível criar múltiplas regras para cada condição, bem como, criar múltiplas condições para serem verificadas validadas em cada componente Exclusivo de um processo.

Porém, vale ressaltar que as condições são verificadas validadas na ordem em que são criadas. Por isso, é importante garantir que a lógica de decisão seja clara para evitar que rotas inadequadas sejam seguidas.

Também é importante que exista um fluxo padrão, que funciona como um escape e será seguido quando nenhuma das condições for atendida.

Em resumo, é possível utilizar várias regras e condições, desde que cada rota tenha sua própria expressão condicional. A escolha da rota a ser seguida é feita de forma exclusiva com base na verificação validação dessas condições.

Painel
borderColor#ebecf0

Toggle Cloak
id@saiba-mais-5
 Como testar se as condições definidas estão corretas?

Cloak
id@saiba-mais-5

Para testar se as condições criadas para o componente Exclusivo estão corretas, é possível seguir algumas abordagens:

  • validação manual: revisar as condições – analisando as expressões e verificando se são lógicas e se não existe sobreposição ou ambiguidades entre elas – e compreender os dados envolvidos – entendendo quais variáveis ou dados são avaliados para garantir que as condições estejam de acordo com o esperado em cada situação;
  • testes: criar um conjunto de entradas (valores das variáveis) que abrangem as possibilidades de decisão que o componente pode tomar. Depois, executar o processo com essas entradas e verificar se ele segue a rota correta;
  • ferramentas de teste de BPMN: utilizar alguma ferramenta que ofereça recursos específicos para validação e testes do componente Exclusivo. Essas ferramentas permitem simular a execução do processo, analisar os fluxos e verificar se as decisões tomadas pelo componente estão corretas;
  • revisão lógica de negócio: contar com a análise colaborativa dos especialistas no negócio pode ajudar a validar se as condições criadas fazem sentido para o objetivo do processo. 
Painel
borderColor#ebecf0

Toggle Cloak
id@saiba-mais-6
 Por que a solicitação parou depois do componente Exclusivo?

Cloak
id@saiba-mais-6

Existem alguns motivos pelos quais uma solicitação pode ficar "presa" no componente Exclusivo e geralmente eles estão associados à forma como as condições e lógicas de decisão foram configuradas. Os motivos mais comuns são:

  • condição não atendida: nenhuma das condições configuradas para o componente foi atendida e não existe um fluxo padrão de escape. Isso pode ocorrer quando as condições não foram configuradas corretamente, não consideraram algum cenário mais específico ou a lógica das condições não foi definida de forma adequada;
  • dados ou variáveis de entrada ausentes ou inválidos: quando dados ou variáveis que são utilizados para determinar a rota que a solicitação deve seguir não estão presentes no processo ou são inválidas. Por exemplo, um dado ou variável que deveria ter sido preenchida anteriormente e não foi;
  • inconsistência de execução: se ocorrer alguma inconsistência ou falha técnica na plataforma que está executando o processo no momento de avaliar as condições do componente, o fluxo pode ser interrompido sem ser direcionado para uma rota válida. Isso também pode ocorrer por questões de timeout – se o fluxo envolve tempos de espera ou tempos máximos e esses tempos tenham sido atingidos sem que existam definições sobre como lidar com esses casos – e por questões de integração – quando o fluxo depende de dados de uma fonte externa (como API, banco de dados ou integração com outros produtos) e ocorrer alguma falha nessa fonte;
  • falta de fluxo padrão: não há um fluxo padrão por onde a solicitação possa seguir caso nenhuma das condições seja atendida. É uma boa prática sempre definir um fluxo padrão, pois garante que o fluxo não seja interrompido quando nenhuma condição foi atendida;
  • falhas em subprocesso ou etapas anteriores: se antes do componente um subprocesso ou etapa falhou ou não foi completada corretamente – não fornecendo as informações necessárias para a decisão, por exemplo – pode afetar a verificação validação das condições e impedir o avanço da solicitação.

Para resolver essas questões, é importante revisar as regras e condições, garantir que as variáveis de entrada estão sendo corretamente inseridas e sempre definir um fluxo padrão para que sempre haja uma rota válida para a solicitação seguir adiante.

...