Guia Automação com BPMS Bonita: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
| (4 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
Guia para Automação de Processos de Negócios com BPMS Bonita: validação com processos da UFSC |
Método MAP :: Guia para Automação de Processos de Negócios com BPMS Bonita: validação com processos da UFSC |
||
<br>Prof. Maurício FLORIANO GALIMBERTI, Dr. |
<br>Prof. Maurício FLORIANO GALIMBERTI, Dr. |
||
<br>EAPn – Escritório de Automação de Processos de Negócios |
<br>EAPn – Escritório de Automação de Processos de Negócios |
||
| Linha 20: | Linha 20: | ||
==Guia para Modelagem e Automação de Processos de Negócios== |
==Guia para Modelagem e Automação de Processos de Negócios== |
||
Constituído de 12 etapas, o guia inicialmente estabelece os passos necessários para efetuar a modelagem e redesenho do processo de negócio, possibilitando nas etapas posteriores a execução da automação. As etapas finais envolve procedimentos de testes e a disponibilização do processo de negócio automatizado aos usuários finais. |
|||
<br><br> |
<br><br> |
||
Na [[Guia Automação com BPMS Bonita#Etapa 1 - Identificar e mapear processos|Etapa 1]] , antes de começar o processo de modelagem, é realizado a identificação e mapeamento dos processos. É necessário levantar informações de onde extrair os dados necessários, usualmente podem vir de fontes como: documentos, logs de uso, conversas informais com usuários do sistema, entrevistas estruturadas, dentre outros. |
Na [[Guia Automação com BPMS Bonita#Etapa 1 - Identificar e mapear processos|Etapa 1]] , antes de começar o processo de modelagem, é realizado a identificação e mapeamento dos processos. É necessário levantar informações de onde extrair os dados necessários, usualmente podem vir de fontes como: documentos, logs de uso, conversas informais com usuários do sistema, entrevistas estruturadas, dentre outros. |
||
| Linha 299: | Linha 299: | ||
[[Arquivo:B18.png|commoldura|centro|Figura 18 - Contrato das outras tarefas. |
[[Arquivo:B18.png|commoldura|centro|Figura 18 - Contrato das outras tarefas. |
||
]] |
]] |
||
===Atividade 8.2=== |
====Atividade 8.2==== |
||
Definir as regras dos fluxos: nesta atividade serão definidas as regras de negócio com o fluxo do processo. Para definir o fluxo serão utilizadas variáveis, de qualquer tipo nesta etapa, porém é mais apropriado utilizar ''Business variables'' ou ''Process variables'', pois o valor dessas variáveis pode vir a ser alterado durante a execução do processo, ao contrário dos ''Parameters''. |
Definir as regras dos fluxos: nesta atividade serão definidas as regras de negócio com o fluxo do processo. Para definir o fluxo serão utilizadas variáveis, de qualquer tipo nesta etapa, porém é mais apropriado utilizar ''Business variables'' ou ''Process variables'', pois o valor dessas variáveis pode vir a ser alterado durante a execução do processo, ao contrário dos ''Parameters''. |
||
<br><br> |
<br><br> |
||
| Linha 312: | Linha 312: | ||
Os três elementos mencionados abordam genericamente fluxos de processos em que é necessário criar caminhos alternativos gerando fluxos paralelos ou unificando a sequência de atividades. Os gateways atuam no controle direcionando o fluxo conforme decisões tomadas anteriormente, por exemplo, a alteração de uma variável ao longo do processo anterior ao elemento de decisão. |
Os três elementos mencionados abordam genericamente fluxos de processos em que é necessário criar caminhos alternativos gerando fluxos paralelos ou unificando a sequência de atividades. Os gateways atuam no controle direcionando o fluxo conforme decisões tomadas anteriormente, por exemplo, a alteração de uma variável ao longo do processo anterior ao elemento de decisão. |
||
====Atividade 8.2.1==== |
=====Atividade 8.2.1===== |
||
Definir caminho através de Gateways: declarar regras de negócio para seguimento do fluxo dos processos que passam por elementos de decisão. |
Definir caminho através de Gateways: declarar regras de negócio para seguimento do fluxo dos processos que passam por elementos de decisão. |
||
<br><br> |
<br><br> |
||
| Linha 334: | Linha 334: | ||
[[Arquivo:B21.png|commoldura|centro|Figura 21 - Regra de negócio do caminho "Sim".]] |
[[Arquivo:B21.png|commoldura|centro|Figura 21 - Regra de negócio do caminho "Sim".]] |
||
===Atividade 8.3=== |
====Atividade 8.3==== |
||
Mapear atores: mapear os atores definidos na Etapa 6, segundo a regra de negócio que define quais usuários podem executar tarefas de cada raia. |
Mapear atores: mapear os atores definidos na Etapa 6, segundo a regra de negócio que define quais usuários podem executar tarefas de cada raia. |
||
<br><br> |
<br><br> |
||
| Linha 363: | Linha 363: | ||
[[Arquivo:B25.png|commoldura|centro|Figura 25 - Ambiente de desenvolvimento dos formulários.]] |
[[Arquivo:B25.png|commoldura|centro|Figura 25 - Ambiente de desenvolvimento dos formulários.]] |
||
===Atividade 9.1=== |
====Atividade 9.1==== |
||
Criar formulário para cada tarefa humana automatizada e realizada com auxílio do BPMS Bonita. |
Criar formulário para cada tarefa humana automatizada e realizada com auxílio do BPMS Bonita. |
||
<br><br> |
<br><br> |
||
| Linha 458: | Linha 458: | ||
<br><br> |
<br><br> |
||
Os passos de configuração podem variar devido à utilização de variáveis e parâmetros. Neste Guia a configuração dos conectores foi baseada nos processos já implementados pelos desenvolvedores. |
Os passos de configuração podem variar devido à utilização de variáveis e parâmetros. Neste Guia a configuração dos conectores foi baseada nos processos já implementados pelos desenvolvedores. |
||
===Etapa 11 - Instalar o processo de negócio em um ambiente de teste=== |
|||
Nesta Etapa do Guia, o objetivo é instalar o processo automatizado em um ambiente de testes. O processo será executado para verificação e validação por equipe de testes de processo e/ou usuários finais, dependendo da estratégia adotada. O objetivo é validar se o processo está de acordo com o desejado em termos da fidelidade ao processo como foi projetado e adaptado ao que era realizado antes de ser automatizado. Aspectos de usabilidade também podem e devem ser levantados junto aos usuários, mas como mencionado acima, isto depende da estratégia de testes definida pela equipe. Caso não esteja de acordo, deve-se elaborar um relatório de discrepâncias para identificar a qual Etapa retornar (Diagrama do Ciclo de Automação também deve refletir este aspecto), baseando-se nas indicações dos usuários, para melhor adequá-lo ao usuário final. |
|||
<br><br> |
|||
No capítulo “''Configuração do ambiente de produção dos processos''”, é descrita a estrutura e configuração do ambiente de produção que estamos utilizando no Escritório de Automação de Processos de Negócios - EAPn do LSC/UFSC. |
|||
<br><br> |
|||
No BPMS Bonita, a implementação dos processos em um servidor requer ao menos dois usuários: um ''tenant'' ou ''technical user'' e um usuário ''administrator''. Estes usuários possuem acesso a diferentes áreas do Portal do Bonita com funções específicas para configuração e implantação de arquivos para disponibilizar os processos e possibilitar sua execução. Através do ''technical user'' é realizada a inserção e atualização do BDM enquanto que o outro usuário realizará o ''deploy dos processos'', sendo que ambos os usuários também podem adicionar e atualizar a organização. A criação e configuração destes usuários será explicada no capítulo “Configuração do ambiente de produção dos processos”. |
|||
====Atividade 11.1==== |
|||
Integrar o BDM ao ambiente de teste: os processos automatizados devem ser compatíveis ao BDM inserido no Bonita, garantindo a correlação com a tabela de banco de dados do ambiente de teste, H2. Para isso, um único BDM que contenha todos os dados de negócio dos processos deve ser importando, já que na versão Community do Bonita todos os processos compartilham o mesmo BDM. |
|||
=====Atividade 11.1.1===== |
|||
Exportar o BDM: utilizando o Bonita Studio, exportar o arquivo compactado do BDM utilizado nos processos para a máquina local com acesso ao servidor de testes. |
|||
<br><br> |
|||
'''Procedimentos:''' |
|||
<br> |
|||
#No Bonita Studio, acessar a aba '''Development -> Business Data Model -> Export…''' (Figura 41), e selecionar a pasta para a qual se deseja que o arquivo seja exportado. |
|||
<br><br> |
|||
'''Instrumentação:''' |
|||
<br> |
|||
Bonita Studio: Business Data Model |
|||
<br> |
|||
[[Arquivo:B41.png|commoldura|centro|Figura 41 - Tela de exportação do BDM.]] |
|||
=====Atividade 11.1.2===== |
|||
Instalar o BDM no ambiente de testes: realizar a instalação do BDM dos processos no ambiente de teste. |
|||
'''Procedimentos:''' |
|||
<br> |
|||
#Acessar o ambiente de teste com o usuário ''tenant'', na aba '''BPM Services''' (Figura 42) e verificar o '''Status''' |
|||
##caso esteja em '''RUNNING''' (Figura 42) selecione a opção '''Pause''' e confirme na tela que irá aparecer. O '''Status''' será alterado para '''PAUSED''' (Figura 43), siga para o procedimento 2. |
|||
##caso o Status já esteja em PAUSED siga para o procedimento 2. |
|||
#No ambiente de teste na aba '''Business Data Model''' (Figura 44) selecione o arquivo exportado na '''atividade 11.1.1''', selecione então a opção ''Activate'' e confirme na tela que será mostrada. |
|||
#Ainda no ambiente de testes, após a instalação do BDM volte à aba '''BPM Services''' e selecione a opção '''Resume''' e confirme. O '''Status''' será alterado para '''RUNNING'''. |
|||
[[Arquivo:B42.png|commoldura|centro|Figura 42 - ''BPM Services'' em execução.]] |
|||
[[Arquivo:B43.png|commoldura|centro|Figura 43 - ''BPM Services'' parado.]] |
|||
[[Arquivo:B44.png|commoldura|centro|Figura 44 - Importação do Business Data Model.]] |
|||
<br> |
|||
====Atividade 11.2==== |
|||
Instalar o processo desenvolvido no ambiente de testes: exportar os processos automatizados através do Bonita Studio e os inserir no Bonita Portal para administrador, habilitando-os aos usuários para teste. |
|||
=====Atividade 11.2.1===== |
|||
Fazer o ''build'' do processo: exportar um arquivo compactado do processo, gerado através do Bonita Studio, para a máquina local com acesso ao servidor de testes. |
|||
<br><br> |
|||
'''Procedimentos:''' |
|||
<br> |
|||
#No Bonita Studio, acessar a aba '''Server -> Build…''' (Figura 45), selecione o processo que deseja instalar no ambiente, e selecione a pasta para a qual se deseja que o arquivo seja exportado. |
|||
<br> |
|||
'''Instrumentação:''' |
|||
<br> |
|||
Bonita Studio |
|||
[[Arquivo:B45.png|commoldura|centro|Figura 45 - Tela de ''build'' do processo.]] |
|||
<br> |
|||
=====Atividade 11.2.2===== |
|||
Instalar o processo no ambiente de testes: realizar a instalação do BDM dos processos no ambiente de testes. |
|||
<br><br> |
|||
'''Procedimentos:''' |
|||
<br> |
|||
#Acessar o ambiente de testes com o usuário de ''deploy''. Na aba '''BPM -> Processes''' (Figura 46) selecione a opção '''+INSTALL''', selecione o arquivo (.bar) da definição do processo com todas as dependências necessárias e então selecione a opção Install. Após, será redirecionado para a página de configuração do processo (Figura 47). |
|||
#Na página de configuração do processo, na aba '''Actors''' (Figura 47), verifique se os usuários mapeados para os atores definidos estão de acordo com a utilização do ambiente de testes. Caso não estejam, basta configurar de acordo com o desejado. Os usuários podem ser selecionados por '''Users''', '''Roles''', '''Groups''' e por '''Membership'''. |
|||
#Ainda na página de configuração do processo, após o mapeamento dos atores, na aba '''General''', modifique a '''Activation state''' de '''DISABLED''' (Figura 48) para '''ENABLED''' (Figura 49). |
|||
[[Arquivo:B46.png|commoldura|centro|Figura 46 - ''BPM processes''.]] |
|||
[[Arquivo:B47.png|commoldura|centro|Figura 47 - Tela de configuração do processo na aba ''Actors''.]] |
|||
[[Arquivo:B48.png|commoldura|centro|Processo desabilitado.]] |
|||
[[Arquivo:B49.png|commoldura|centro|Figura 49 - Processo habilitado.]] |
|||
<br> |
|||
'''Observações, dicas e boas práticas:''' |
|||
<br> |
|||
Vale reforçar que qualquer alteração realizada sobre o BDM deve ser repassada ao ambiente de testes para que não ocorra nenhum erro. |
|||
<br><br> |
|||
Após a implementação do processo no ambiente de testes, começa o período de testes. Para uma boa avaliação do modelo e implementação do processo, os testes também devem ser realizados por usuários finais que executarão os processos, durante o dia-a-dia. Isto deve envolver e ser conduzido pelo Dono do Processo. |
|||
===Etapa 12 – Implantar o processo automatizado em um ambiente de betatestes e produção=== |
|||
Nesta Etapa do Guia, o objetivo é fazer a instalação do processo automatizado no ambiente de produção. Isso significa que o processo sairá da fase de desenvolvimento e testes alpha (locais, internos à equipe EAPn) para passar a ser um produto/serviço funcional e operante de uma determinada empresa/organização. Portanto, após aprovação do modelo e automatização, o processo é então implantado no ambiente de produção, à semelhança de uma versão betatestes, com os usuários reais do processo. Os passos necessário a esta Etapa 12 são os mesmos da Etapa 11, mas agora no ambiente/servidor de produção. |
|||
<br><br> |
|||
É previsível haver novas alterações no processo automatizado, geralmente ocasionadas por mudanças organizacionais, alterações em formulários e diretrizes, condições de operação, entre outros fatores. Dessa forma, o elemento de decisão após a Etapa 12 garante que mesmo no ambiente de produção, conforme a necessidade de alterações, o processo retorne para a Etapa 6, na qual são revisados os aspectos implementados na automação mediante requisitos do processo. |
|||
==Dicas complementares no uso da ferramenta Bonita Studio, nas Etapas do Guia de Modelagem e Automação== |
|||
*Na Etapa 7, o importante é modelar todos os dados necessários para o processo funcionar corretamente. Novos atributos podem ser inseridos no modelo futuramente sem problemas. É interessante aumentar o tamanho das variáveis de texto, pois o padrão provavelmente será insuficiente. Para isso, selecione a variável já criada no modelo, e aumente o “''Length''” para o valor desejado. |
|||
*As ''Pool variables'' (''Business variables'' ou ''Process variables'') e ''Documents'' também podem ser definidos através de ''scripts''. Quando é criado um Contrato para as ''Business variables'', o Bonita Studio gera ''scripts'' para o usuário poder trabalhar com as variáveis, variáveis essas que serão submetidas através de um formulário. Caso possua algum atributo de uma ''Business variable'' que não será inserido diretamente no formulário, mas que precisa ser persistido para o banco de dados, é necessário a criação de um ''script'' manual para este atributo. Esse atributo é adicionado no contrato da tarefa que o valor do mesmo deve ser atualizado, na aba '''Execution -> Operation''' (Figura 50) da tarefa, identificando o atributo desejado e modificando o ''script'' que foi criado automaticamente. |
|||
[[Arquivo:B50.png|commoldura|centro|Figura 50 – Atualizar atributo de uma ''Business variable''.]] |
|||
No caso das ''Process variables'', elas são específicas para uso em Contratos de tarefas e não em Contratos de ''Pool'', e o tempo de vida corresponde ao tempo do caso/instância, embora não fique armazenado no Banco de Dados de processos. Quando se crie uma variável deste tipo, deve-se selecionar a tarefa a qual esta variável pertença. Na aba '''Execution -> Operations''', selecionar a opção Add na primeira caixa de seleção, selecionar a variável e selecionar o Lápis de Edição (Figura 51) ao lado da segunda caixa de seleção, selecionar Script e escrever o código para a variável. O símbolo na primeira caixa de seleção indica o tipo da variável, se ela é ''Business variable'', ''Process variable'' ou ''Document''. |
|||
[[Arquivo:B51.png|commoldura|centro|Figura 51 - Atualizar o valor de uma ''Process variable''.]] |
|||
Também é possível criar ''Scripts'' para estas variáveis na criação das mesmas, determinando o que o Bonita Studio chama de valor ''default'' da variável. |
|||
<br><br> |
|||
A seguir serão apresentadas três figuras referentes às ''Process variables''. A Figura 52 mostra o caminho de criação/modificação da variável, a figura 53 mostra caminho para acessar o script da variável, e a figura 54 mostra o painel de script da variável. |
|||
[[Arquivo:B52.png|commoldura|centro|Figura 52 - Criar/Modificar uma ''Process variable''.]] |
|||
[[Arquivo:B53.png|commoldura|centro|Figura 53 - Definições da ''Process variable''.]] |
|||
[[Arquivo:B54.png|commoldura|centro|Figura 54 - Definição do valor ''default'' da variável.]] |
|||
*A Etapa 8 depende bastante dos atributos definidos na Etapa 7. O foco nesta Etapa é criar as melhores expressões lógicas que permitirão dividir o fluxo nos ''gateways''. Caso necessário, é possível voltar à Etapa 7 e incluir novos atributos para servir de base nesta Etapa. |
|||
<br> |
|||
Para auxílio na Etapa 8, seguem alguns exemplos de Process variables utilizadas até o momento nos processos implementados. |
|||
<br><br> |
|||
'''idpessoa''': Retorna o valor do “idpessoa” do usuário desejado. |
|||
<br><br> |
|||
<pre> |
|||
for (Object obj : apiAccessor.getIdentityAPI().getCustomUserInfo(BonitaUsers.getProcessInstanceInitiator(apiAccessor,processInstanceId).id, 0, 0)) { |
|||
if (obj.definition.name == "idpessoa") { |
|||
return Long.parseLong(obj.value); |
|||
} |
|||
} |
|||
return 0; |
|||
</pre> |
|||
<br><br> |
|||
'''ehProfessor''': Verifica se o usuário em questão é professor: se ele for professor, o código retorna TRUE; se o usuário não for Professor, o código retorna FALSE. |
|||
<br><br> |
|||
<pre> |
|||
import org.bonitasoft.engine.identity.UserMembership; |
|||
import org.bonitasoft.engine.identity.UserMembershipCriterion; |
|||
long roleId = apiAccessor.identityAPI.getRoleByName("Professor").id; |
|||
long userId = BonitaUsers.getProcessInstanceInitiator(apiAccessor,processInstanceId).id; |
|||
for (UserMembership um : apiAccessor.identityAPI.getUserMemberships(userId, 0, 0, UserMembershipCriterion.ASSIGNED_DATE_ASC)){ |
|||
if (um.getRoleId() == roleId){ |
|||
return true; |
|||
} |
|||
} |
|||
return false; |
|||
</pre> |
|||
<br><br> |
|||
*Na Etapa 10, quando é gerado o formulário pelo Bonita Studio, esse formulário já contém algumas variáveis que serão muito utilizadas durante a formatação do formulário final, para mostrar dados do processo que já foram inseridos em tarefas anteriores. |
|||
<br> |
|||
Para fazer acesso a variáveis do BDM é utilizado o context da seguinte forma: |
|||
#No '''UI Designer''' na aba '''Variables -> Create a new variable'''. |
|||
#Crie um nome para a variável, e selecione o tipo '''External API'''. |
|||
Como valor defina: <pre>..//{{context.nomeDoObjeto_ref.link}}</pre> |
|||
<br> |
|||
Substitua nomeDoObjeto pelo nome da variável definido na Etapa 8. |
|||
<br><br> |
|||
Para acessar documentos: |
|||
<pre>context.nomeDoDocumento_ref</pre> |
|||
<br><br> |
|||
Para acessar ''Process variables'': |
|||
#No '''UI Designer''' na aba '''Variables -> Create a new variable'''. |
|||
#Crie um nome para a variável, e selecione o tipo '''External API'''. |
|||
#Como valor defina: <pre>../API/bpm/caseVariable/{{caseId}}/nomeDaVariável</pre> |
|||
<br> |
|||
Substitua nomeDaVariável pelo nome da variável definido na Etapa 8. |
|||
<br><br> |
|||
A variável caseId é muito utilizada, porém ela não é criada junto com o formulário. Para acessar o valor do caseId: |
|||
#No '''UI Designer''' na aba '''Variables -> Create a new variable'''. |
|||
#Crie um nome para a variável, e selecione o tipo '''Javascript expression'''. |
|||
#Como valor defina: <pre>return $data.task.caseId;</pre> |
|||
<br> |
|||
Para acessar variáveis ou documento múltiplos é necessário fazer o seguinte: |
|||
#Inserir um '''Container''' vazio no formulário |
|||
#Definir a '''Collection''' do container como o atributo múltiplo desejado. E.g, <pre>nomeDoObjeto.atributo</pre>, isso fará com que o '''Container''' receba os valores deste atributo. |
|||
#Inserir algum campo dentro do Container. Campos de Input ou Text são adequados para mostrar dados. |
|||
Definir como valor do campo inserido acima como: <pre>$item</pre> |
|||
<br> |
|||
Isto fará com que sejam mostrados ao usuário todos os elementos do atributo. Cada elemento do atributo será mostrado em um bloco diferente. Caso o atributo possua dois valores será mostrado 2 campos de '''Input''', um para cada valor. |
|||
<br> |
|||
*Nas Etapas 7 e 8 é fundamental ter criado anteriormente os grupos e papéis dos usuários que pertençam à Organização que será utilizada |
|||
Edição atual tal como às 20h42min de 3 de julho de 2026
Método MAP :: Guia para Automação de Processos de Negócios com BPMS Bonita: validação com processos da UFSC
Prof. Maurício FLORIANO GALIMBERTI, Dr.
EAPn – Escritório de Automação de Processos de Negócios
LSC – Laboratório de Sistemas de Conhecimento
Resumo[editar]
A Universidade Federal de Santa Catarina (UFSC) funciona há mais de 50 anos, servindo a comunidade e fomentando a educação de milhares de pessoas anualmente. Por ser uma universidade pública, a UFSC depende do investimento do governo para continuar operante. A UFSC não gerencia seus processos de negócio acadêmicos, e automatizar estes processos deve otimizar tempo e recursos preciosos para seu funcionamento. Por isso, o Laboratório de Sistemas de Conhecimento (LSC), pertencente ao departamento de Informática e Estatística (INE) no Centro Tecnológico (CTC) da UFSC, em processo de implantação do Escritório de Automação de Processos de Negócio (EAPn), vem ao longo de sua existência desenvolvendo soluções, materiais e estudos visando a automação e melhoria dos processos de negócio. O objetivo deste trabalho é criar um guia de modelagem e automação de processos, que permitirá identificar, modelar, melhorar e automatizar processos acadêmicos, validando com processos do Departamento de Informática e Estatística e do Centro Tecnológico da UFSC. A função do guia é servir de base para o processo de modelagem e automação de processos de negócios acadêmicos da universidade. Este guia segue as normas e técnicas utilizadas pela abordagem de Gerenciamento de Processos de Negócio, assim como sua notação mais atual - Business Process Modelling Notation 2.0. Como resultado, processos de negócio acadêmicos foram modelados e automatizados com as ferramentas Bizagi Modeler e Bonita BPM, e o guia de modelagem e automação de processos acadêmicos foi criado.
Introdução[editar]
Este guia tem por objetivo auxiliar estudantes e profissionais que atuam com modelagem de processos de negócios, mais especificamente interessados em automação de processos de negócios. O ciclo BPM apresentado considera, especificamente nas etapas de automação, a utilização do BPMS Bonita.
O Bonita possui 3 ambientes, o Bonita Studio, o Bonita Portal e o UI Designer, sendo cada um deles caracterizados por:
- O Bonita Studio é o ambiente principal de desenvolvimento do BPMS Bonita. Nele são criados os diagramas com suas regras de negócio e objetos de dados.
- O Bonita Portal é o ambiente em que o usuário final tem acesso, podendo executar os processos automatizados.
- O UI Designer é o ambiente de desenvolvimento das interfaces com o usuário, geralmente no formato de formulários, que serão utilizados pelo usuário final na execução dos processos automatizados.
Este guia foi proposto e ajustado com base na fundamentação teórica de BPM e nas experiências de automação de processos de negócios com o Bonita BPMS. Pode ser visto na Figura 1 um esquema em BPMN (BPM Notation) do fluxo desde o levantamento de requisitos de processos, passando pela modelagem e automação de processos de negócio, e terminando com a implantação do processo automatizados. Tal esquema, adotado pela equipe do Escritório de Automação de Processos de Negócios (EAPn) da UFSC, interno ao Laboratório de Sistemas de Conhecimento (LSC), sintetiza o Guia que será apresentado neste documento.
Este Guia é apresentado conforme suas etapas e atividades. São apresentadas as atividades que devem ser realizadas, seus procedimentos, a instrumentação utilizada, além de observações, dicas e boas práticas de utilização da ferramenta em cada etapa específica.
Guia para Modelagem e Automação de Processos de Negócios[editar]
Constituído de 12 etapas, o guia inicialmente estabelece os passos necessários para efetuar a modelagem e redesenho do processo de negócio, possibilitando nas etapas posteriores a execução da automação. As etapas finais envolve procedimentos de testes e a disponibilização do processo de negócio automatizado aos usuários finais.
Na Etapa 1 , antes de começar o processo de modelagem, é realizado a identificação e mapeamento dos processos. É necessário levantar informações de onde extrair os dados necessários, usualmente podem vir de fontes como: documentos, logs de uso, conversas informais com usuários do sistema, entrevistas estruturadas, dentre outros.
Na Etapa 2, para possibilitar o mapeamento e desenho dos processos, é necessário primeiramente entender o processo em questão e identificar requisitos e dados detalhados para a modelagem.
Na Etapa 3 é realizado a modelagem do processo de negócio atual, através da notação BPM. Este modelo é denominado AS-IS, pois apresenta a visão das atividades do processo assim como ele é executado pela organização. Através dele é possível obter melhor compreensão do processo e identificar pontos cruciais para melhorias.
Na Etapa 4, através da análise do modelo atual do processo efetuado na Etapa 3, é realizado o redesenho do processo, dando origem ao modelo TO-BE. Dessa forma, é contemplado as melhorias identificadas possibilitando uma visão que mostra a melhor forma de realizar o processo.
Na Etapa 5 é apresentado um planejamento de automação. Constam atividades necessárias que irão economizar tempo do desenvolvedor em etapas posteriores, minimizando buscas por ferramentas em etapas avançadas da automação dos processos.
Na Etapa 6 será realizada a diagramação do processo de negócio, mapeando-se os processos TO-BE para processos TO-DO com vistas à automação com o Bonita BPMS.
Na Etapa 7 será montada a estrutura de dados persistentes que será utilizada pelos processos, a partir de informações dos processos que serão automatizados.
Na Etapa 8 são tratadas as regras de negócio do processo automatizado. São implementados os fluxos que o processo irá seguir a partir de informações passadas pelo executor do processo.
Na Etapa 9 são criados os formulários, que fazem parte da interface gráfica que os usuários irão interagir, através de preenchimento de campos e buscas de informações relevantes a cada processo.
Na Etapa 10 são implementados os conectores que interagem com sistemas externos, como por exemplo acesso a serviços ou variáveis em banco de dados externos ao ambiente de produção dos processos.
O elemento de decisão após a etapa 10 tem por objetivo verificar se todos os dados estão sendo mostrados adequadamente ao usuário final através dos formulários. Caso sejam necessários outros dados, então será preciso verificar os formulários, e caso ainda faltem dados ou informações mais complexas de outros serviços externos, podem ser adicionados conectores para acessar as mesmas. Com os formulários adequados ao processo, segue-se para a próxima etapa de automação.
Na Etapa 11, após garantir que os formulários estão de acordo com o desejado, é realizada a instalação do processo em um ambiente de teste, estruturado em um servidor para desenvolvimento. O processo é executado localmente, dessa forma, exige a configuração de parâmetros para simular o ambiente de execução real, garantindo que o ambiente de teste tenha as mesmas características do ambiente de produção, tais como a estrutura de banco de dados e a organização de usuários.
Após a realização dos testes é verificado se o processo atende aos objetivos propostos e satisfazem os requisitos definidos na etapa de planejamento. Caso sejam identificados erros nos aspectos de automação ou em usabilidade, o mesmo pode passar por uma revisão a partir da Etapa 6. Após os usuários de testes aprovarem o processo, pode-se então passar à próxima etapa.
Na Etapa 12, o processo final é alocado em um servidor de produção. Assim o processo é disponibilizado para ser executado efetivamente pelos usuários finais. Caso o processo sofra mudanças na realização de atividades, nos dados e regras de negócio ou tecnologias associadas, o processo automatizado passará por uma atualização que compreenda as alterações necessárias. Dessa forma, deverão ser revistas todas as etapas de automação, a partir da Etapa 6, seguindo até que o processo automatizado seja disponibilizado novamente no servidor de produção.
O restante deste Guia conta, ainda, com soluções desenvolvidas para o BPMS Bonita. Estas buscam auxiliar na construção de formulários, criação de variáveis, além de uma seção com dicas complementares no uso da ferramenta Bonita Studio, nas etapas do guia de modelagem e automação. Na seção de configuração do ambiente de produção dos processos é explicado como foram montados e configurados os ambientes de testes e produção utilizados na automação dos processos desenvolvidos pelo EAPn.
Etapa 1 - Identificar e mapear processos[editar]
Antes de começar o processo de modelagem, é necessário levantar informações de onde extrair os dados necessários. Estes dados podem vir de fontes como: documentos, logs de uso, conversas informais com usuários do sistema, entrevistas estruturadas, dentre outros. O objetivo principal desta fase é identificar processos de trabalho, através das mais variadas fontes.
Etapa 2 - Selecionar processos e levantar dados detalhados para modelagem[editar]
Para mapear os processos e desenhá-los, é necessário primeiramente entender o processo em questão e identificar possíveis erros. Isto é necessário para que estes erros não voltem a serem cometidos, evita que os usuários do sistema rejeitem o sistema proposto, identifique os pontos que devem ser melhorados e ter métricas que permitam melhorar o processo futuramente. Para isso, deve-se escolher um ou mais processos e analisar todas as informações disponíveis do processo de trabalho.
Estas informações podem ser extraídas de: documentos relevantes ao processo, entrevistas com funcionários de chefia e funcionários que trabalham diretamente naquele processo, brainstorming, observação da execução do processo. A aplicação de um questionário pode ser utilizada para extrair o máximo de informação possível dos funcionários envolvidos no processo. Levando-se em consideração, fazer as perguntas corretas são de grande importância na hora de coletar informações. Para auxiliar na resolução deste problema, é proposto 10 perguntas para o levantamento de dados do processo (adaptado por Galimberti, 2016), sendo elas:
- O que se faz? Que tipo de informação passar, coletar e controlar?
- O que se faz, de que forma e como são arquivados?
- Quando se faz?
- Como se faz? Como são transmitidas as informações?
- Como ocorrem as interfaces entre o processo e a análise?
- Quais as dificuldades percebidas? Estas dificuldades são exclusivas deste processo? Esta dificuldade tem reflexo em outros processos?
- Quais passos podem ser eliminados?
- As pessoas envolvidas possuem dificuldades em executar o processo?
- As alterações irão afetar as relações pessoais internas?
- Os formulários ou documentos do processo merecem um estudo minucioso?
Ao final desta etapa, espera-se obter a maior quantidade de dados possíveis sobre o processo. Estes dados serão utilizados na próxima etapa para a construção do modelo atual do processo, conhecido como “As Is”.
Etapa 3 - Modelar o processo de negócio atual com a notação de BPM (As-Is)[editar]
Ao mapear e desenhar um processo, podemos utilizar este modelo para melhor compreensão do processo, simular alternativas viáveis e facilitar o trabalho de treinamento de novos funcionários. As informações levantadas nas primeiras duas etapas do guia serão de extrema importância nesta parte, e a qualidade da modelagem está diretamente ligada a qualidade dos materiais levantados anteriormente. Como a notação padrão é a BPMN 2.0, o novo modelo desenhado deverá seguir rigorosamente sua especificação, para que sua implementação possa ser utilizada em ferramentas que também sigam a especificação, caso contrário, há grandes chances de o modelo gerado não funcionar em todas as aplicações que suportam BPMN.
A especificação atualizada de BPMN deverá ser consultada para que a modelagem seja a mais correta e atualizada possível. Atualmente a especificação está na versão 2.0, atualizada pela última vez em 2011. Ferramentas de modelagem de processos deverão ser utilizadas para criar o modelo para a automação do processo desejado, que ocorre na etapa 5 em diante deste guia. A ferramenta utilizada na criação dos modelos deste trabalho foi o BizAgi Modeler, disponível para a plataforma Windows e é totalmente gratuito. Em conjunto com a especificação, outras técnicas podem ser utilizadas na construção do modelo, como entrevistas, modelagem com papel e brainwriting. Estas técnicas permitem que o responsável pela modelagem tenha uma ampla visão do processo, seus usuários e suas tarefas, de forma a gerar o modelo mais próximo possível da realidade.
Ao final da modelagem, espera-se ter em mãos o modelo atual do processo, modelado em BPMN 2.0, também conhecido como “As Is”. Além disso, espera-se obter medidas de melhorias, documentação do processo atual, identificação dos itens mais significativos e um relatório dessa fase. A Figura 2 ilustra esta etapa, utilizando a ferramenta Bizagi Modeler.
Etapa 4 - Melhorar e redesenhar o modelo de processo (To-Be)[editar]
Nesta fase, o objetivo principal é melhorar o processo escolhido na fase de mapeamento e desenho de processo. Para isso, é necessário criar uma discussão entre as partes envolvidas, de forma que sugestões de melhorias sejam registradas, além de questionamentos sobre a real necessidade e influência de certas partes no processo.
Será necessário analisar os dados do processo (de forma estruturada ou não), identificando possíveis problemas com o processo atual, tais como: gargalos, falta de integração, retrabalho, redundâncias, atrasos, dentre outros. Como sugerido por Galimberti, 2016, algumas ferramentas podem ser utilizadas para verificar as melhorias em processos, sendo elas: diagramas de causa e efeito, controle estatístico de processo e método interativo de gestão de quatro passos. Além disso, o processo “As Is” modelado na etapa anterior pode ser impresso e analisado por diversas pessoas ao mesmo tempo, de forma a criar um ambiente de sugestão de melhorias e críticas ao modelo.
Após os problemas e sugestões do processo serem identificados e coletados, o redesenho do processo deverá ser feito, utilizando as normas da notação de BPM 2.0, de forma a mitigar ao máximo os problemas identificados anteriormente. Durante o redesenho, tenta-se eliminar ao máximo a burocracia, tarefas duplicadas e erros, além de reduzir o tempo do ciclo do processo, simplificar métodos e atividades. Ao final desta fase, espera-se ter em mãos o modelo redesenhado, também conhecido como “To Be”. Este modelo poderá então ser publicado internamente para fins de documentação, auxiliando no entendimento do processo por seus participantes, além de ser utilizado nos próximos passos da automação.
Etapa 5 - Planejamento da automação de processos de negócio[editar]
Nesta Etapa deve ser realizada uma análise do processo de negócio com vistas à automação. Retoma-se o levantamento prévio de informações importantes necessárias para o processo, como por exemplo, dados profissionais de atuação dos interessados no processo dentro da organização. Esses dados, muitas vezes, são acessados através de serviços disponibilizados por algum sistema externo ao ambiente de produção.
Também deve ser criada uma primeira versão do esquema da Organização (Organization) que é de vital importância para a automação do processo, com as hierarquias necessárias para realização dos processos e suas atividades.
Atividade 5.1[editar]
Identificar estrutura organizacional da empresa para mapear a Organização para a estrutura de um BPMS. Identificar setores e serviços disponíveis pela Organização que poderão ser utilizados na automação do processo: nessa atividade serão analisadas as informações necessárias para realização do processo e, com isso, a identificação de webservices para acesso a informações desejadas.
Procedimentos:
- Analisar as informações estruturais da empresa (organogramas de hierarquia organizacional);
- Identificar setores e subsetores da empresa (ex.: setor RH, subsetor administrativo, subsetor de finanças, setor de Produção, subsetor de pesquisa e desenvolvimento);
- Identificar as funções desempenhados pelas pessoas da empresa nos processos a serem automatizados (ex.: chefe, auxiliar administrativo, técnico de informática);
- Identificar as pessoas que integram cada setor e suas devidas funções (ex.: Pessoa ‘X’ é um técnico de informática no subsetor de pesquisa e desenvolvimento);
- Analisar as informações do processo para identificar os requisitos para implementação da automação que atendam aos serviços necessários.
- Consultar o departamento de tecnologia da informação do setor/área/empresa/instituição, e verificar quais APIs são utilizadas para acessar tais informações;
- Caso não exista alguma API para informações necessárias que estejam armazenadas em banco de dados, pode-se solicitar, a um setor de TI por exemplo, a criação de APIs/serviços.
Instrumentação:
Bonita Studio: Conectors, verificar quais serão necessários para acessar as informações desejadas.
Atividade 5.2[editar]
Montar a estrutura da organização no Bonita Studio: com a estrutura organizacional analisada na atividade 5.1, deve-se montar a estrutura no ambiente do Bonita Studio.
Procedimentos:
- Criar a estrutura organizacional no Bonita Studio, na aba superior Organization -> Manage…, na tela Manage Organizations (Figura 3) selecionar a opção Add, que iŕa adicionar uma organização vazia a qual será usada para montar a estrutura analisada na atividade 5.1, selecionar a opção Next para ir ao próximo passo;
- Na tela Organization groups (Figura 4) adicionar os setores e subsetores identificados, selecionando os botões Add group e Add subgroup. Na parte lateral direita é possível alterar algumas configurações, e após selecione o botão Next para ir ao próximo passo;
- Na tela Organization roles (Figura 5) adicionar as funções identificadas na atividade anterior selecionando o botão Add. Na parte lateral direita é possível alterar algumas configurações, e após selecione a opção Next para seguir ao próximo passo;
- Na tela Organization users (Figura 6) na aba List of users, adicionar os funcionários da empresa selecionando o botão Add. Na parte lateral direita é possível definir a relação dos usuários com a organização, estabelecendo seu grupo e função. Esta associação é designada como Membership, sendo necessário adicionar, ao usuário, o seu grupo e função na aba Membership. Um usuário pode ter múltiplos Memberships, já que este pode assumir diferentes funções e estar vinculado a mais de um grupo.
- Cada usuário possui uma lista de atributos que podem ser preenchidas, no Personal contact e no Professional contact. Caso seja necessária alguma informação que não se enquadre dentro desses atributos, pode-se criar informações personalizadas (custom information) na aba User information management (Figura 7) e selecionando o botão Add;
- Selecionar o botão Finish para concluir a edição da Organização.
Atividade 5.3[editar]
Ativar uma Organization para o ambiente de desenvolvimento de processos.
- Tendo-se alguma estrutura organizacional construída no ambiente de desenvolvimento, deve-se ativar a mesma na aba Organization -> Deploy…, que se seguirá com a janela/dialog Deploy Organization (Figura 8). Seleciona-se a organização desejada, e um username default, que esteja contido na Organization de interesse (não é fornecida lista para seleção), finalizando com a seleção do botão Deploy para ativar a organização.
Implementação:
Bonita Studio -> módulo Organization
Etapa 6 - Diagramação do Processo de Negócio “To-Do”[editar]
Nesta Etapa, o objetivo é otimizar o modelo atual do processo de negócio, removendo passos e atividades que não serão úteis na fase de automação. Estes passos/atividades geralmente são realizados por seres humanos nos modelos “As Is” e “To Be”, e quando automatizados serão realizados pela ferramenta de automação, como troca de mensagens, upload de arquivos, assinaturas digitais, dentre outros. Um exemplo de otimização é remover atividades como "Solicitar assinatura", "Entregar documento”, “Notificar professor”, pois assim que automatizadas, o próprio BPMS irá se encarregar de executar essas atividades.
Atividade 6.1[editar]
Preparar modelo “To Do” para implementação, e diagramas fluxo To-Do no Bonita Studio: nessa atividade será realizada a análise dos modelos “To Be” a fim de obter um modelo “To Do” refinado, somente com tarefas realmente necessárias à automação do processo. Assim, será realizada, no Bonita Studio, a diagramação do modelo “To Do” refinado do processo.
- Artefatos de Entrada: Modelos “To Be”
- Artefatos de Saída: Modelo “To Do”
Procedimentos:
- Analisar os modelos para verificação de tarefas que não são úteis ao processo automatizado
- Remover as atividades que não são úteis.
- Diagramar o fluxo do processo, em notação BPM, a partir do esboço “To Do” obtido no passo anterior.
- Atividades humanas são identificadas como human tasks.
- Atividades totalmente automatizadas, associadas à imagem de uma roldana na notação BPM, são identificadas como service task.
- Envio de e-mail são feitos a partir de conectores e também são implementados com service task pela notação BPM. Detalhes sobre implementação com conectores na Etapa 9 deste Guia.
Instrumentação:
Notação BPM disponível no Bonita Studio (Figura 9); Bonita Studio
A Figura 10 mostra o diagrama de um processo implementado.
Atividade 6.2[editar]
Criar e definir os atores de cada raia: nesta atividade são criados os atores que executam as tarefas do processo.
Procedimentos:
- Criar os atores na pool do processo.
- Associar os Atores para as lanes.
- Associar “Posições” (Grupo/Funções/Membros/Users) da Organization para os Atores das lanes (a engine da BPMS faz o resto…)
Instrumentação:
Bonita Studio
A Figura 11 mostra o menu de criação dos atores, e a Figura 12 mostra a atribuição dos atores em suas respectivas raias.
Observações, dicas e boas práticas:
Evitar cruzamento de linhas de fluxo; evitar poluição visual no diagrama; tornar o diagrama o mais legível possível para que possam ser realizadas leituras rápidas e simples do fluxo do processo.
Atribuir nomes genéricos aos atores, pois o processo pode ser executado por vários centros/departamentos da Organização. Por exemplo, Secretaria do Departamento, Chefia do Departamento, ou se for o caso utilizar nomes de departamentos e/ou pessoas se somente os mesmos podem realizar a tarefa.
O Bonita Studio define como primeira tarefa a ser executada, a tarefa da Pool, ou seja, a tarefa de inicialização do processo não precisa ser definida como um elemento do diagrama, sendo definida diretamente pelo contrato da pool. Mais informações nas Etapas 8 e 10 deste Guia.
Etapa 7 - Modelar base de dados do processo[editar]
Nesta etapa, o objetivo é definir e criar um modelo de dados que permitirá o funcionamento correto do sistema automatizado. Estes dados serão extraídos de documentos analisados previamente, além de também serem descobertos durante o processo de automação. Este modelo de dados servirá de base para o correto funcionamento do sistema automatizado, e é fundamental que o mesmo esteja alinhado com a automação, visto que terá um impacto significativo no processo.
A alteração dos dados do modelo de dados poderá ser realizada no decorrer da automação do processo. Surgem necessidades, como um novo dado durante o desenvolvimento da aplicação, isto é, um campo de observação, uma variável de controle do tipo booleana, inserção de arquivos, entre outros.
Atividade 7.1[editar]
Reexaminar formulários e documentos dos processos a serem implementados para definição das variáveis: ler os documentos e formulários para identificar as variáveis que são necessárias para realização correta do processo.
Procedimentos:
- Analisar documentos e formulários do processo
- Identificar as variáveis necessárias
- Identificar tipo de variável (int, long, string, entre outros)
- Identificar variáveis que são usadas em vários processos.
- Agrupar variáveis específicas do processo modelado em um único grupo
- Separar variáveis de Arquivos (quando o processo precisa de Documentos) das demais variáveis
Instrumentação:
Bonita Studio: Business Data Model (BDM), utilizado para verificar os tipos de variáveis disponíveis e se estas atendem às características das variáveis coletadas.
Atividade 7.2[editar]
Implementar modelo de dados: com base no resultado da atividade 7.1, revisar e criar modelos de objetos de negócio na base de dados no Bonita Studio.
Procedimentos:
Criar os grupos obtidos na atividade 7.1 no modelo de dados do Bonita Studio (BDM - Business Data Model) como Business Objects (objetos de negócio) (Figura 13).
Em cada grupo devem ser adicionadas as respectivas variáveis com seus tipos, exceto os Arquivos.
Instrumentação:
Bonita Studio: Business Data Model
Na aba Development -> Business Data Model -> Manage… do Bonita Studio:
Observações, dicas e boas práticas:
Os arquivos/documentos (pdf, doc, docx, txt, etc.), que são necessários no processo, serão adicionados nas regras de negócio (na Etapa 8), não no BDM.
Na versão gratuita do Bonita só pode ser utilizado 01 BDM no servidor de produção. Isto não é problema na configuração do EAPn, nem para se colocar em produção, em especial na validação em uma IES ou na aplicação de ensino. As principais restrições identificadas até o momento estão relacionadas a processos que tiverem mais do que um desenvolvedor, sendo necessário realizar uma integração de BDMs para que todos os processos funcionem no servidor de produção. Isto já está perfeitamente sistematizado no ambiente do EAPn.
Deve ser seguido o padrão java para nome de variáveis e o nome do objeto sempre começará com letra maiúscula, mas seus atributos são os usuários que definem, e.g, Objeto1 com atributo variavelDeNegocio1 sem caracteres especiais de preferência.
A equipe do EAPn do CTC recomenda que todo Objeto de Dados pertencente a um processo receba as iniciais referentes ao processo, e.g, processo P, os objetos do modelo de dados irão receber o nome PxxxNomeDoObjeto (P - processo; xxx - número do projeto; NomeDoObjeto - nome do objeto pertencente ao processo), a fim de padronizar o conjunto de processos. O número propriamente dito pode estar alinhado aos padrões da Organização, caso estejam disponíveis para conhecimento.
Etapa 8 - Implementar regras de negócio utilizadas no processo[editar]
Nesta etapa do Guia, o objetivo é definir regras de negócio no BPMS que permitam funcionamento do sistema automatizado. Essas regras refletem as políticas adotadas no processo, e existem para satisfazer os objetivos do negócio, satisfazer clientes, fazer o bom uso de recursos, além de obedecer às leis ou regras do próprio negócio. Um bom exemplo, é a utilização de atributos booleanos, que são utilizados no decorrer do processo de automação. Estes atributos podem definir qual caminho o processo irá percorrer, através de seus valores (verdadeiro ou falso). Além disso, as regras de negócio abrangem o disparo automático de mensagens, gatilhos de eventos, como efetuar um pagamento, ou emitir notas fiscais, por exemplo. As regras de negócio são aplicadas dependendo do recurso a ser implementado, como se vê à frente.
Atividade 8.1[editar]
Associar o BDM às tarefas a serem executadas: nesta atividade serão selecionados os objetos de dados e seus atributos, definidos na etapa 7, para serem associados com as tarefas diagramadas na etapa 6 através de variáveis de negócio. No Bonita Studio existem 4 tipos de variáveis de negócio: Business variables, Process variables, Documents, e Parameters, que podem ser criadas na Pool do processo.
As Business variables e as Process variables estão localizadas na aba Data/Pool variables (Figura 13).
As Business variables são as instâncias dos Objetos de dados do BDM que serão utilizadas no processo. No exemplo do processo de Requisição de Informações de Controle, este possui um objeto no BDM chamado P01RequisicaoInformacoes. Para implementar-se as regras de negócios será necessário haver uma respectiva Business variable, podendo-se criar como requisicaoInformacoes. Essa variável será persistida para o banco de dados.
Já as Process variables são variáveis para utilização apenas enquanto o processo estiver aberto, como auxiliares, não sendo necessárias agora, e geralmente são utilizadas para:
- Mostrar aos usuários informações pertinentes apenas durante o processo;
- Definir regras de negócio.
Estas variáveis não serão persistidas quando o processo for encerrado.
Os Documents (Figura 15) são variáveis utilizadas na manipulação de arquivos/documentos que serão inseridos durante o processo. Estas variáveis serão persistidas e devem ser criadas nesta etapa, pois não são gerenciadas pelo BDM.
Os Parameters (Figura 16) são variáveis que podem ser utilizadas em algum script do processo e são atribuídos valores que são fixos para todos os processos, mas podem vir a mudar com o tempo. Por exemplo, para urls de acesso, para não precisar mudar o script é criado um parâmetro que facilita a alteração do valor. Seria o equivalente a um parâmetro constante em código.
O nome das variáveis deve possuir o primeiro caractere em letra minúscula e não possuir nenhum caractere especial, apenas letras e números (a-z, A-Z, 0-9), sem acentos ou espaços.
Atividade 8.1.1[editar]
Criar variáveis: criar as variáveis que serão utilizadas no processo.
Procedimentos:
- Verificar o processo e decidir quais objetos do BDM serão utilizados no processo.
- Selecionar a Pool do processo e criar uma Business variable para cada objeto.
- Identificar os possíveis documentos ou arquivos que serão utilizados no processo.
- Criar as variáveis dos documentos.
Convém ressaltar que não necessariamente o processo terá Process variables ou Parameters. Caso seja verificada a necessidade dos mesmos durante um estágio mais avançado de desenvolvimento, basta selecionar a Pool do processo e criar tais variáveis.
Atividade 8.1.2[editar]
Criar os Contratos de cada tarefa: selecionar as variáveis que serão utilizadas em cada tarefa.
Nesta atividade serão definidos os Contratos das tarefas. Como comentado na etapa 6, o processo começa a ser executado pelo Contrato colocado na aba Execution da Pool. Posteriormente serão definidos/criados os contratos de cada tarefa separadamente.
Procedimentos:
- Tarefa da Pool
- Selecionar a Pool, no menu inferior do programa selecionar a aba Execution -> Contract (Figura 17).
- Selecionar a opção Add from data…
- Selecionar a Business variable ou Document, pois são as variáveis que serão persistidas, que se deseja incluir na tarefa.
- Business variable:
- Selecionar a variável desejada.
- Selecionar a opção Next.
- Selecionar os atributos que se deseja incluir na tarefa.
- Selecionar a opção Finish.
- Documents:
- Selecionar o documento desejado.
- Selecionar a opção Finnish.
- Business variable:
- Demais Tarefas:
- Selecionar a tarefa desejada, no menu inferior do programa selecionar a aba Execution -> Contract (Figura 18).
- Selecionar a opção Add from data…
- Selecionar a Business variable ou documento que se deseja incluir na tarefa.
- Business variable:
- Selecionar a variável desejada.
- Selecionar a opção Next.
- Selecionar os atributos que se deseja incluir na tarefa.
- Selecionar a opção Finish.
- Documents:
- Selecionar o documento desejado.
- Selecionar a opção Finish.
- Business variable:
Caso haja mais do que uma variável e/ou documento, executar novamente o passo 1.3.
Caso haja mais do que uma variável e/ou documento, executar novamente o passo 2.3.
Atividade 8.2[editar]
Definir as regras dos fluxos: nesta atividade serão definidas as regras de negócio com o fluxo do processo. Para definir o fluxo serão utilizadas variáveis, de qualquer tipo nesta etapa, porém é mais apropriado utilizar Business variables ou Process variables, pois o valor dessas variáveis pode vir a ser alterado durante a execução do processo, ao contrário dos Parameters.
Esta atividade será focada em Gateways que tenham que tomar algum tipo de decisão (Exclusive ou Inclusive). Elementos de decisão fazem parte da notação de processos de negócio (BPMN 2.0), e o Bonita Studio possui as três, sendo eles o gateway Paralelo (AND), Exclusivo (XOR) e Inclusivo.
O gateway Paralelo, quando possui apenas uma entrada, e esta entrada é satisfeita, libera todas as saídas simultaneamente; caso possua duas ou mais entradas, necessita que todas as entradas sejam satisfeitas para disparo das saídas e seguimento do fluxo.
O gateway Exclusivo, quando possui apenas uma entrada e várias saídas, verifica as saídas e aquela saída que possui uma condição verdadeira é disparada. Neste caso, quando possui mais de uma saída, é necessário configurar uma das saídas como default; quando possui mais do que uma entrada, assim que uma das entradas é satisfeita, uma das saídas é disparada para seguimento do fluxo, sendo que neste gateway apenas uma saída é disparada. Se ele possuir apenas uma saída, nenhuma condição é necessária para ele seguir o fluxo.
O gateway Inclusivo é uma junção das funções do gateway Paralelo com o Exclusivo. Quando utilizado para fazer a convergência de fluxos, com uma ou mais entradas, ele espera que ambos os fluxos ativos sejam concluídos para liberar suas saídas, atuando como um sincronizador de fluxo. As saídas ativadas dependem das condições estabelecidas, disparando todas as que possuem condições verdadeiras, dessa forma, uma ou mais saídas do gateway poderão dar seguimento ao fluxo.
Os três elementos mencionados abordam genericamente fluxos de processos em que é necessário criar caminhos alternativos gerando fluxos paralelos ou unificando a sequência de atividades. Os gateways atuam no controle direcionando o fluxo conforme decisões tomadas anteriormente, por exemplo, a alteração de uma variável ao longo do processo anterior ao elemento de decisão.
Atividade 8.2.1[editar]
Definir caminho através de Gateways: declarar regras de negócio para seguimento do fluxo dos processos que passam por elementos de decisão.
Procedimentos:
- Selecionar a linha de saída do elemento de decisão do fluxo (variável com valor “Sim” no exemplo da Figura 19).
- Selecionar a aba General (Figura 20).
- Selecionar a opção Use expression.
- Selecionar o Lápis de edição ao lado da caixa de seleção. Abrirá uma tela.
- Selecionar a aba Script (Figura 21).
- Utilize o “Assistente de programação” pressionando “Ctrl’ + “Barra de Espaço”: procure por variáveis e métodos que permitam testar o valor do fluxo. O resultado deste script será um boolean, e passará se validado “true” (este código no script estará gerado em groovy).
- Selecionar a opção Ok.
- Selecionar a linha de saída do elemento de decisão, do fluxo caso a variável possua o valor “Não”.
- Selecionar a aba General.
- Selecionar a opção Default flow.
A Figura 19 exemplifica uma utilização do gateway XOR.
Atividade 8.3[editar]
Mapear atores: mapear os atores definidos na Etapa 6, segundo a regra de negócio que define quais usuários podem executar tarefas de cada raia.
Procedimentos:
- Selecionar a Pool do processo;
- No menu superior, selecionar a aba Server -> Configure;
- Na caixa de diálogo Local configuration for <nome do processo> selecionar a aba Actor mapping (Figura 22);
- Selecionar o ator, e um dos 4 botões no lado direito da caixa de diálogo (Groups…, Roles…, Memberships…, Users…). Ao selecionar o botão, abrirá outra caixa de diálogo;
- Caso selecionado Groups, Roles ou Users:
- Selecionar as checkboxes que correspondem ao ator em questão (Figura 23);
- Caso selecionado Memberships:
- Selecionar o botão Add memberships…, selecionar um grupo e um papel para cada Membership adicionado (Figura 24);
- Selecionar o botão Finish, para aplicar esta configuração ao ator;
- Realizar o passo 4 para cada ator do processo;
- Selecionar o botão Finish para aplicar as configurações de mapeamento dos atores no processo.
Observações, dicas e boas práticas:
A linguagem groovy é baseada na linguagem java, mas possui características de small talk, o que torna a programação mais simples do que java. A linguagem groovy possui tipagem dinâmica.
Utilizar boas práticas de programação, uso de indentação e comentários, torna mais fácil o trabalho em equipes com várias pessoas.
Etapa 9 – Definir e criar formulários e interfaces gráficas do processo de negócio[editar]
Nesta Etapa do guia, o objetivo é criar as telas de interface gráfica do processo automatizado. Cada atividade do modelo em notação BPM requer uma tela, e cada tela deverá apresentar os dados relevantes à atividade. Estas telas podem ser desenhadas de diversas formas, cabendo à pessoa responsável decidir como será seu design, levando em consideração a usabilidade e a funcionalidade do sistema proposto. O Bonita Studio possui um ambiente para criação de formulários chamado UI Designer. Segue na Figura 25 a tela de inicialização do UI Designer, mostrando que o ambiente possui vários elementos gráficos para utilização na construção dos formulários.
Atividade 9.1[editar]
Criar formulário para cada tarefa humana automatizada e realizada com auxílio do BPMS Bonita.
Procedimentos:
- Identificar as tarefas que serão realizadas por pessoas (usuários humanos) no BPMS Bonita (aqui denominadas human tasks);
- Criar um formulário para cada uma destas tarefas, com base nas regras de negócio e de quais informações são disponíveis para cada usuário no processo.
- O Bonita Studio já cria automaticamente um formulário modelo para cada human task: basta selecionar a tarefa desejada na aba Execution->Contract, selecionar o ícone do UI Designer (Figura 26) após a definição do contrato discutido na etapa 8.
- Para manutenção do formulário, selecionar a aba Execution->Form e selecionar o Lápis de Edição (Figura 27) ao lado da caixa de seleção do formulário.
Instrumentação:
Bonita Studio: UI Designer
Observações, Dicas e Boas Práticas:
A partir do Contrato definido em cada tarefa, é possível gerar uma estrutura simples do formulário da tarefa, para servir como base do formulário final. Neste formulário base já vem algumas variáveis de formulário que são recorrentemente utilizadas. Porém, dependendo do que necessitam ser mostrado ao usuário, deverão ser criadas mais variáveis de formulário através de APIs do Bonita, javaScript, entre outras formas de obtenção das informações necessárias, além de ser possível a utilização de arquivos de estilos (CSS e javaScript, o ambiente UI Designer é implementado em Angular), e arquivos de imagem.
O Bonita possui dois formulários que não estão associados a elementos de tarefas, que são o Instantiation Form e Overview Page, que não são obrigatórios para o processo, mas devido à interface e funcionamento do Bonita Portal, optou-se que cada processo deve possuir estes dois formulários. O Instantiation Form tem a função de inicializar o processo, e o Overview Page tem a função de mostrar aos participantes do processo tudo o que já foi realizado na execução do processo.
Ao término de um processo é possível a visualização dos dados do processo. Porém, não é possível a visualização de variáveis que foram definidas no ambiente do Bonita Studio como Process Variables, pois elas são definidas como transientes, ou seja, quando o processo termina elas não são mantidas em uma base de dados, e por esse motivo não podem ser acessados nos processos arquivados.
Nomear os formulários de acordo com o nome do processo ao qual o mesmo pertence.
Etapa 10 - Integrar o processo com sistemas externos ao Bonita[editar]
Nesta Etapa do Guia, o objetivo é conectar sistemas externos ao Bonita Studio, identificados na Etapa 5, que serão utilizados para tratamento de e-mails, obtenção de informações que estão fora do escopo do Bonita, através de sistemas legados, entre outros.
Nos processos implementados até o momento foram utilizados apenas dois sistemas externos, que são chamados de conectores dentro do ambiente do Bonita Studio, o de e-mail, e o REST (Transferência de Estado Representacional) para obter informações através de API’s (Interface de Programação de Aplicativos) de web services (sistemas legados) da infraestrutura de informática da Universidade Federal de Santa Catarina (UFSC).
Os conectores no Bonita são definidos como conectores de entrada, quando acontecem antes do início de uma tarefa, ou conectores de saída quando ocorrem depois que uma tarefa termina. E são implementados dentro das tarefas que se deseja que possuam tais conectores.
Atividade 10.1[editar]
Integrar o processo com sistema de e-mail: nesta atividade será implementado o uso de conectores de e-mail.
Utilizar das regras de negócio e da estrutura do processo para implementar os conectores de e-mail, pois nesta etapa já temos uma ideia de quem receberá as mensagens de aviso de andamento do processo.
Procedimentos:
- Identificar os usuários que receberão mensagens de andamento do processo
- Para cada tarefa que necessitar de um conector de e-mail (Figura 28), implementar o mesmo com os seguintes dados:
- smtp host servidor host para envio de e-mail;
- número da porta de envio do servidor;
- definição do endereço de e-mail do usuário que receberá a mensagem;
- conteúdo da mensagem. Variáveis podem ser inseridas na mensagem utilizando a tag ‘${nomeVariável}’, tais como: parâmetros, variáveis de processos, negócios ou APIs. Pressionando as teclas ‘Ctrl + Espaço' é possível visualizar a listagem de todas as variáveis disponíveis e selecionar as de interesse.
Todas as configurações do conector de email são apresentadas nas Figuras 29, 30, 31 e 32, como segue
Instrumentação:
Bonita Studio conector de mensagem SMTP 1.0.0.
Atividade 10.2[editar]
Integrar o processo com sistema REST: nos processos implementados até o momento, por motivos didáticos, optou-se por apenas realizar acesso de busca a dados de um sistema legado. Portanto, utilizou-se apenas o conector REST, o que se faz com o método GET.
Procedimentos:
- Selecionar a tarefa que irá utilizar o conector REST.
- Na aba Execution -> Connectors in, selecionar a opção Add.
- Na tela Connector definitions (Figura 33), selecionar na aba Categories a opção REST, e na aba Connectors definitions a opção GET, e selecionar a opção Next.
- Na tela General (Figura 34), criar um nome para o conector. Pode também ser adicionado uma descrição, mas é opcional, e selecionar a opção Next.
- Na tela REST request configuration (Figura 35), informar a url de acesso do conector e selecionar a opção Next. Neste passo, nos processos implementados até o momento, utilizamos um script que concatena um Parameter contendo uma parte da url com uma Process variable que contém o “idpessoa” do usuário (estudo de caso da UFSC) que necessitamos a informação.
- Na tela Optional advanced settings (Figura 36) apenas selecionar a opção Next.
- Na tela Authentication settings (Figura 37), selecionar Authentication BASIC, selecionar o Username e Password de acesso da API REST utilizada, e selecionar a opção Next. Neste passo utilizamos Parameters para o Username e Password. O método de autenticação pode mudar de um processo para outro.
- Na tela SSL configuration (Figura 38) apenas selecionar a opção Next.
- Na tela Proxy settings (Figura 39) apenas selecionar a opção Next.
- Na tela Output operations (Figura 40) são definidos quais atributos serão selecionados do resultado retornado pela API REST utilizada. Após selecionar os dados, selecionar a opção Finish, finalizando assim a configuração do conector REST.
Observações, dIcas e boas práticas:
Quando os parâmetros dos conectores são implementados através de variáveis ou expressões, não é possível realizar testes de funcionamento do conector no ambiente do Bonita Studio. Portanto, esse conector não pode ser testado no Studio, sendo necessário executar o processo para verificar o funcionamento.
Testar o conector REST para verificação da configuração dos dados que o mesmo retorna. Para realizar esse teste, basta inserir valores fixos nos campos ao invés de usar parâmetros e variáveis.
A configuração dos conectores podem ser salvas para possível reutilização do mesmo através do botão Save. E para importar a configuração em outro conector do mesmo tipo, basta clicar no botão Load.
Como e-mail é utilizado para realizar uma tarefa de envio de mensagens, a utilização de conectores de e-mail foi realizada através de conectores de saída como padrão. E os conectores REST que foram utilizados para acessar informações foram definidos como conectores de entrada por padrão.
Os passos de configuração podem variar devido à utilização de variáveis e parâmetros. Neste Guia a configuração dos conectores foi baseada nos processos já implementados pelos desenvolvedores.
Etapa 11 - Instalar o processo de negócio em um ambiente de teste[editar]
Nesta Etapa do Guia, o objetivo é instalar o processo automatizado em um ambiente de testes. O processo será executado para verificação e validação por equipe de testes de processo e/ou usuários finais, dependendo da estratégia adotada. O objetivo é validar se o processo está de acordo com o desejado em termos da fidelidade ao processo como foi projetado e adaptado ao que era realizado antes de ser automatizado. Aspectos de usabilidade também podem e devem ser levantados junto aos usuários, mas como mencionado acima, isto depende da estratégia de testes definida pela equipe. Caso não esteja de acordo, deve-se elaborar um relatório de discrepâncias para identificar a qual Etapa retornar (Diagrama do Ciclo de Automação também deve refletir este aspecto), baseando-se nas indicações dos usuários, para melhor adequá-lo ao usuário final.
No capítulo “Configuração do ambiente de produção dos processos”, é descrita a estrutura e configuração do ambiente de produção que estamos utilizando no Escritório de Automação de Processos de Negócios - EAPn do LSC/UFSC.
No BPMS Bonita, a implementação dos processos em um servidor requer ao menos dois usuários: um tenant ou technical user e um usuário administrator. Estes usuários possuem acesso a diferentes áreas do Portal do Bonita com funções específicas para configuração e implantação de arquivos para disponibilizar os processos e possibilitar sua execução. Através do technical user é realizada a inserção e atualização do BDM enquanto que o outro usuário realizará o deploy dos processos, sendo que ambos os usuários também podem adicionar e atualizar a organização. A criação e configuração destes usuários será explicada no capítulo “Configuração do ambiente de produção dos processos”.
Atividade 11.1[editar]
Integrar o BDM ao ambiente de teste: os processos automatizados devem ser compatíveis ao BDM inserido no Bonita, garantindo a correlação com a tabela de banco de dados do ambiente de teste, H2. Para isso, um único BDM que contenha todos os dados de negócio dos processos deve ser importando, já que na versão Community do Bonita todos os processos compartilham o mesmo BDM.
Atividade 11.1.1[editar]
Exportar o BDM: utilizando o Bonita Studio, exportar o arquivo compactado do BDM utilizado nos processos para a máquina local com acesso ao servidor de testes.
Procedimentos:
- No Bonita Studio, acessar a aba Development -> Business Data Model -> Export… (Figura 41), e selecionar a pasta para a qual se deseja que o arquivo seja exportado.
Instrumentação:
Bonita Studio: Business Data Model
Atividade 11.1.2[editar]
Instalar o BDM no ambiente de testes: realizar a instalação do BDM dos processos no ambiente de teste.
Procedimentos:
- Acessar o ambiente de teste com o usuário tenant, na aba BPM Services (Figura 42) e verificar o Status
- caso esteja em RUNNING (Figura 42) selecione a opção Pause e confirme na tela que irá aparecer. O Status será alterado para PAUSED (Figura 43), siga para o procedimento 2.
- caso o Status já esteja em PAUSED siga para o procedimento 2.
- No ambiente de teste na aba Business Data Model (Figura 44) selecione o arquivo exportado na atividade 11.1.1, selecione então a opção Activate e confirme na tela que será mostrada.
- Ainda no ambiente de testes, após a instalação do BDM volte à aba BPM Services e selecione a opção Resume e confirme. O Status será alterado para RUNNING.
Atividade 11.2[editar]
Instalar o processo desenvolvido no ambiente de testes: exportar os processos automatizados através do Bonita Studio e os inserir no Bonita Portal para administrador, habilitando-os aos usuários para teste.
Atividade 11.2.1[editar]
Fazer o build do processo: exportar um arquivo compactado do processo, gerado através do Bonita Studio, para a máquina local com acesso ao servidor de testes.
Procedimentos:
- No Bonita Studio, acessar a aba Server -> Build… (Figura 45), selecione o processo que deseja instalar no ambiente, e selecione a pasta para a qual se deseja que o arquivo seja exportado.
Instrumentação:
Bonita Studio
Atividade 11.2.2[editar]
Instalar o processo no ambiente de testes: realizar a instalação do BDM dos processos no ambiente de testes.
Procedimentos:
- Acessar o ambiente de testes com o usuário de deploy. Na aba BPM -> Processes (Figura 46) selecione a opção +INSTALL, selecione o arquivo (.bar) da definição do processo com todas as dependências necessárias e então selecione a opção Install. Após, será redirecionado para a página de configuração do processo (Figura 47).
- Na página de configuração do processo, na aba Actors (Figura 47), verifique se os usuários mapeados para os atores definidos estão de acordo com a utilização do ambiente de testes. Caso não estejam, basta configurar de acordo com o desejado. Os usuários podem ser selecionados por Users, Roles, Groups e por Membership.
- Ainda na página de configuração do processo, após o mapeamento dos atores, na aba General, modifique a Activation state de DISABLED (Figura 48) para ENABLED (Figura 49).
Observações, dicas e boas práticas:
Vale reforçar que qualquer alteração realizada sobre o BDM deve ser repassada ao ambiente de testes para que não ocorra nenhum erro.
Após a implementação do processo no ambiente de testes, começa o período de testes. Para uma boa avaliação do modelo e implementação do processo, os testes também devem ser realizados por usuários finais que executarão os processos, durante o dia-a-dia. Isto deve envolver e ser conduzido pelo Dono do Processo.
Etapa 12 – Implantar o processo automatizado em um ambiente de betatestes e produção[editar]
Nesta Etapa do Guia, o objetivo é fazer a instalação do processo automatizado no ambiente de produção. Isso significa que o processo sairá da fase de desenvolvimento e testes alpha (locais, internos à equipe EAPn) para passar a ser um produto/serviço funcional e operante de uma determinada empresa/organização. Portanto, após aprovação do modelo e automatização, o processo é então implantado no ambiente de produção, à semelhança de uma versão betatestes, com os usuários reais do processo. Os passos necessário a esta Etapa 12 são os mesmos da Etapa 11, mas agora no ambiente/servidor de produção.
É previsível haver novas alterações no processo automatizado, geralmente ocasionadas por mudanças organizacionais, alterações em formulários e diretrizes, condições de operação, entre outros fatores. Dessa forma, o elemento de decisão após a Etapa 12 garante que mesmo no ambiente de produção, conforme a necessidade de alterações, o processo retorne para a Etapa 6, na qual são revisados os aspectos implementados na automação mediante requisitos do processo.
Dicas complementares no uso da ferramenta Bonita Studio, nas Etapas do Guia de Modelagem e Automação[editar]
- Na Etapa 7, o importante é modelar todos os dados necessários para o processo funcionar corretamente. Novos atributos podem ser inseridos no modelo futuramente sem problemas. É interessante aumentar o tamanho das variáveis de texto, pois o padrão provavelmente será insuficiente. Para isso, selecione a variável já criada no modelo, e aumente o “Length” para o valor desejado.
- As Pool variables (Business variables ou Process variables) e Documents também podem ser definidos através de scripts. Quando é criado um Contrato para as Business variables, o Bonita Studio gera scripts para o usuário poder trabalhar com as variáveis, variáveis essas que serão submetidas através de um formulário. Caso possua algum atributo de uma Business variable que não será inserido diretamente no formulário, mas que precisa ser persistido para o banco de dados, é necessário a criação de um script manual para este atributo. Esse atributo é adicionado no contrato da tarefa que o valor do mesmo deve ser atualizado, na aba Execution -> Operation (Figura 50) da tarefa, identificando o atributo desejado e modificando o script que foi criado automaticamente.
No caso das Process variables, elas são específicas para uso em Contratos de tarefas e não em Contratos de Pool, e o tempo de vida corresponde ao tempo do caso/instância, embora não fique armazenado no Banco de Dados de processos. Quando se crie uma variável deste tipo, deve-se selecionar a tarefa a qual esta variável pertença. Na aba Execution -> Operations, selecionar a opção Add na primeira caixa de seleção, selecionar a variável e selecionar o Lápis de Edição (Figura 51) ao lado da segunda caixa de seleção, selecionar Script e escrever o código para a variável. O símbolo na primeira caixa de seleção indica o tipo da variável, se ela é Business variable, Process variable ou Document.
Também é possível criar Scripts para estas variáveis na criação das mesmas, determinando o que o Bonita Studio chama de valor default da variável.
A seguir serão apresentadas três figuras referentes às Process variables. A Figura 52 mostra o caminho de criação/modificação da variável, a figura 53 mostra caminho para acessar o script da variável, e a figura 54 mostra o painel de script da variável.
- A Etapa 8 depende bastante dos atributos definidos na Etapa 7. O foco nesta Etapa é criar as melhores expressões lógicas que permitirão dividir o fluxo nos gateways. Caso necessário, é possível voltar à Etapa 7 e incluir novos atributos para servir de base nesta Etapa.
Para auxílio na Etapa 8, seguem alguns exemplos de Process variables utilizadas até o momento nos processos implementados.
idpessoa: Retorna o valor do “idpessoa” do usuário desejado.
for (Object obj : apiAccessor.getIdentityAPI().getCustomUserInfo(BonitaUsers.getProcessInstanceInitiator(apiAccessor,processInstanceId).id, 0, 0)) {
if (obj.definition.name == "idpessoa") {
return Long.parseLong(obj.value);
}
}
return 0;
ehProfessor: Verifica se o usuário em questão é professor: se ele for professor, o código retorna TRUE; se o usuário não for Professor, o código retorna FALSE.
import org.bonitasoft.engine.identity.UserMembership;
import org.bonitasoft.engine.identity.UserMembershipCriterion;
long roleId = apiAccessor.identityAPI.getRoleByName("Professor").id;
long userId = BonitaUsers.getProcessInstanceInitiator(apiAccessor,processInstanceId).id;
for (UserMembership um : apiAccessor.identityAPI.getUserMemberships(userId, 0, 0, UserMembershipCriterion.ASSIGNED_DATE_ASC)){
if (um.getRoleId() == roleId){
return true;
}
}
return false;
- Na Etapa 10, quando é gerado o formulário pelo Bonita Studio, esse formulário já contém algumas variáveis que serão muito utilizadas durante a formatação do formulário final, para mostrar dados do processo que já foram inseridos em tarefas anteriores.
Para fazer acesso a variáveis do BDM é utilizado o context da seguinte forma:
- No UI Designer na aba Variables -> Create a new variable.
- Crie um nome para a variável, e selecione o tipo External API.
Como valor defina:
..//{{context.nomeDoObjeto_ref.link}}
Substitua nomeDoObjeto pelo nome da variável definido na Etapa 8.
Para acessar documentos:
context.nomeDoDocumento_ref
Para acessar Process variables:
- No UI Designer na aba Variables -> Create a new variable.
- Crie um nome para a variável, e selecione o tipo External API.
- Como valor defina:
../API/bpm/caseVariable/{{caseId}}/nomeDaVariável
Substitua nomeDaVariável pelo nome da variável definido na Etapa 8.
A variável caseId é muito utilizada, porém ela não é criada junto com o formulário. Para acessar o valor do caseId:
- No UI Designer na aba Variables -> Create a new variable.
- Crie um nome para a variável, e selecione o tipo Javascript expression.
- Como valor defina:
return $data.task.caseId;
Para acessar variáveis ou documento múltiplos é necessário fazer o seguinte:
- Inserir um Container vazio no formulário
- Definir a Collection do container como o atributo múltiplo desejado. E.g,
nomeDoObjeto.atributo
, isso fará com que o Container receba os valores deste atributo. - Inserir algum campo dentro do Container. Campos de Input ou Text são adequados para mostrar dados.
Definir como valor do campo inserido acima como:
$item
Isto fará com que sejam mostrados ao usuário todos os elementos do atributo. Cada elemento do atributo será mostrado em um bloco diferente. Caso o atributo possua dois valores será mostrado 2 campos de Input, um para cada valor.
- Nas Etapas 7 e 8 é fundamental ter criado anteriormente os grupos e papéis dos usuários que pertençam à Organização que será utilizada





















































