| Data de elaboração |
02/08/2022. |
| Responsável pelo estudo |
Anderson Anschau, João Vitor Paulino Nobre, Milton Daniel Yama |
| Equipe do estudo |
TURING |
| Alvo |
Sistema de Outorga e Licenciamento Ambiental de Rondônia (SOLAR) |
| Origem |
Objetivo Estratégico: Implementação atualização em tempo real de detalhes do processo do SOLAR após assinatura de um documento no sistema GovDoc. |
| Objetivo |
Avaliar possíveis opções para a implementação atualização em tempo real de detalhes do processo do SOLAR após assinatura de um documento no sistema GovDoc. |
| Documentação correlata |
|
| Observações |
Webhook: é um recurso que possibilita o envio de dados em tempo real entre dois sistemas ou aplicativos distintos. |
Avaliar possíveis opções para a implementação atualização em tempo real de detalhes do processo do SOLAR após assinatura de um documento no sistema GovDoc.
Quando um fiscal criar um parecer no processo o mesmo é redirecionado para o sistema GovDoc para preenchimento do documento e posteriormente a assinatura. Ao voltar para a tela de detalhes do processo dentro do SOLAR não é evidente para o usuário que a página precisa ser recarregada, para habilitar as ações que direcionam para as próximas etapas do processo.

Sendo assim existe a necessidade de um mecanismo que identifique que o documento já foi assinado e que recarregue a página de detalhes do processo.
Descobrir a melhor forma de implementar uma função que atualize a página de detalhes do processo após a assinatura do documento no GovDoc.
Em conversa com o time chegamos a conclusão que existem duas maneiras de fazer essa implantação, sendo elas:
- Alternativa - Integração por Webhooks: Criar um serviço do tipo webhook na plataforma GovDoc, onde ao ser criado um novo documento através de integração de API seria fornecido o endereço de uma API de retorno, a qual o GovDoc deverá fazer uma chamada após assinatura do documento.
Para essa alternativa será necessário as seguintes alterações:
- Alternativa - Integração por Pooling: Alterar o front-end do SOLAR para criar um pooling na tela de detalhes do processo enquanto o processo estiver com status «Redigindo» fazer uma requisição em background para GovDoc e ao receber a resposta que o documento foi assinado pelo usuário exibir uma modal dando a opção de recarregar a página ou manter como está.
Para essa alternativa seria necessário as seguintes alterações:
- Alterações no SOLAR:
- Alterar o Front-end, tela de detalhes do processo, criando um looping de requisições a cada 1 minuto, quando o status do documento do parecer for «Redigindo», para solicitar o estado atual ao back-end do SOLAR.
- Criar um endpoint no Back-end do SOLAR que recebe o código do documento, verifica o estado do documento no GovDoc e retorna para o Front-end;
- Criar uma modal no Front-end que após receber a mudança de estado do documento é exibida para o usuário dando as opções de recarregar a página de detalhes ou manter como está, para que caso o usuário esteja fazendo alguma análise não atrapalhe o andamento da atividade.
Acreditamos que a integração entre os sistemas para retorno da informação de status de documentos pelo GovDoc é importante pois simplifica a usabilidade do sistema e torna mais fluido o processo e a experiência do cliente na plataforma.
Concluímos que a ambas as alternativas estudadas e apresentadas entregam um resultado satisfatório a nível de usabilidade para o cliente, entretanto podemos destacar pontos positivos e negativos a respeito de cada uma:
- alternativa - Integração por Webhooks:
- Pontos Positivos:
- Só existe a comunicação entre as plataformas quando ocorre a alteração de estado do objeto, evitando consultas e requisições desnecessárias;
- Pontos Negativos:
- Esforço de desenvolvimento alto pois tem um nível alto de complexidade;
- Envolve alterações tanto nos sistemas GovDoc quando no sistema SOLAR;
- Necessidade de criação de estrutura de tabelas em base de dados e ferramentas de controle de estado.
- alternativa - Integração por Pooling:
- Pontos Positivos:
- Oferece um caminho mais simples para a implantação;
- Esforço menor de desenvolvimento pois necessita apenas alterar apenas o projeto SOLAR;
- Pontos Negativos:
- Será feita uma maior quantidade de requisições para verificação de status de documento ao GovDoc, pois cada front-end que estiver aberto com um documento em estado «Redigindo» enviará uma requisição de tempos em tempo;
- Consequentemente maior consumo computacional;