Possíveis melhorias e refatoração no sistema PPE
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.
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 |
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.
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.
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 integração.
RESPONSÁVEIS
- Alexandre Santos Freire (Analista de Desenvolvimento Full-stack);
- André Henrique Cortez (Analista de Desenvolvimento Full-stack);
-
Jorge Luiz de Jesus Paiva Junior (Analista de Desenvolvimento Full-stack).
- Moisés Ferreira (Analista de Desenvolvimento Full-stack).