Ir para o conteúdo principal

Possíveis melhorias e refatoração no sistema PPE

Data de elaboração 01/07/22
Responsável pelo estudo
  • Alexandre Santos Freire Ferreira (Assessor)
  • Moisés Ferreira (Assessor)
Equipe do estudo Caveiras
Alvo PPE - Plataforma de Publicação Eletrônica de Diários Oficiais do Estado de Rondônia.
Origem
  • Melhoria: Otimizar pontos críticos no sistema que são passiveis de falhas, considerando o volume de processamento realizados simultaneamente por estes.
Objetivo Identificar problemas no sistema PPE.
Observações Existem funcionalidades executando muitos processos, estas necessitam de analise detalhada pois estão situadas em pontos críticos no sistema.

1. Introdução

Este estudo técnico é para fins de identificar os possíveis problemas encontrados no sistema PPE para que possam ser realizadas as devidas correções e melhorias de código para facilitar a manutenção e implementação de novas funcionalidade. Além disso, melhorar a usabilidade de funcionalidades já existentes no sistema.

2. Desenvolvimento

3.1 Problemas e possíveis soluções

Problemas  Soluções 
Filtro de pesquisa de DARES não está funcionando corretamente. O usuário não consegue encontrar a DARE gerada. Refatorar consulta das DARES 
A listagem das DARES está desordenada, dificultando a pesquisa. Ordenar as DARES por data de vencimento para facilitar a visualização
Lentidão na pesquisa de Matérias Internas Refatorar consulta de matérias internas
Lentidão na leitura de arquivos

- Utilizar o Ceph Storage para salvar os arquivos

- Salvar a referencia do arquivo no banco de dados

Não existe tela de identificação de acesso negado para o usuário

Implementar view e adapta-la a configuração da biblioteca do Sauron


O usuário cadastrado como  Representante Legal, ao cadastrar-se como Pessoa Física , consegue visualizar todas as matérias que foram vinculadas ao perfil antigo de representante legal. 


- Atualizar regras de cadastro

- Inativar usuário no Sauron conforme as regras de cadastro

Confusão na identificação da situação da matéria quando o pagamento não foi realizado 

Atualizar a flag de Aguardando publicação para Aguardando Pagamento da DARE

Falta de testes em funcionalidades que executam vários processos.  Ex: Gerar Diário, Atualizar Diário, Publicar Diário

- Testes de integração com banco em memória

- Uso de bibliotecas que geram dados aleatórios. Ex: Bogus .NET

Versão do EntityFrameworkCore desatualizada.

Atualizar para a mesma versão do projeto

Listagem de Matéria Interna Cancelada e Reprovada sem filtro

Implementar filtro

3.2 Erros comuns

Erro: No momento em que uma matéria, a API de agendamento não está retirando o cancelamento da matéria no PPE causando erro ao Gerar o diário

Solução: Implementar rotina de consulta e atualização de agendamento de matérias antes de gerar o diário. 

3.3 Melhorias e novas funcionalidade identificadas

- Filtros dinâmicos: O usuário irá definir como será o filtro de pesquisa. Possibilitando que o usuário realize a pesquisa de matérias como desejar.

- Ao gerar o diário, possibilitar a execução em segundo plano, informando ao usuário que o processo está em execução, exibindo o seu progresso até a finalização. 

3. Conclusão

Foram identificadas funcionalidades com ausência de testes e que executam muitos processos até a finalização da requisição. Estas funcionalidades serão refatoradas conforme a implementação dos testes de unidade e testes de integração.