**Status: ** Em Execução
Resumo Executivo
A Icatu enfrentava desafios relacionados ao contexto de Comissões, incluindo fragilidade no código, problemas de performance e disponibilidade, além de dificuldades para evolução do sistema. Para resolver essas questões, foi iniciado um projeto de estrangulamento deste contexto, com foco em modernização técnica, otimização de processos de negócio e adoção de boas práticas de engenharia de software.
Situação (antes da nossa atuação)
A Icatu enfrentava uma série de desafios relacionados ao sistema responsável pelo gerenciamento de comissões. Um dos principais problemas era a fragilidade do código. A cada atualização no sistema, surgiam preocupações significativas, pois ele era difícil de testar adequadamente. Como resultado, era comum que problemas só fossem detectados após a implementação em produção, gerando retrabalho e impacto na operação.
Outro ponto crítico era a performance e disponibilidade do sistema. Alguns processos mais pesados comprometiam a eficiência geral, tornando operações mais lentas e, em alguns casos, causando indisponibilidade temporária de funcionalidades essenciais. Isso impactava diretamente a experiência dos usuários e as operações do dia a dia.
Após uma análise cuidadosa dos cenários críticos, a recomendação inicial foi o estrangulamento do contexto de Comissões. Essa decisão foi fundamentada por diversas razões estratégicas: o contexto apresentava menor complexidade em comparação a outros, tinha um número reduzido de acoplamentos e possuía potencial de melhorar significativamente a performance geral do sistema ao desacoplar processos de faturamento, pagamento e contabilização de comissões.
Implicações
- Atualizações no sistema geravam insegurança devido à dificuldade de identificar problemas antes da produção.
- Lentidão em processos comprometia a eficiência e produtividade das operações.
- Indisponibilidade de funcionalidades durante processamentos pesados prejudicava a experiência dos usuários.
- A estrutura acoplada dificultava a evolução e manutenção de outros contextos críticos, como faturamento e sinistros.
O que fizemos
O projeto de estrangulamento do contexto de Comissões na Icatu foi iniciado com base em uma análise detalhada das oportunidades e desafios enfrentados pelo sistema atual. As principais iniciativas incluem:
- Aproveitamento de iniciativas existentes de modernização:
- A Icatu já possui diretrizes e práticas estabelecidas para modernização, o que agilizou o planejamento do processo para o contexto de Comissões.
- Utilização do conhecimento interno do time:
- O projeto conta com o apoio de membros experientes da equipe que ainda possuem conhecimento profundo sobre os processos de Comissões.
- Ajuste e otimização de processos de negócio:
- O projeto também inclui melhorias em processos de negócio identificados como desalinhados ou ineficientes.
- Redução de dependência de código SQL:
- Foco na redução do uso de Stored Procedures e migração para linguagens mais robustas e instrumentadas, como o C#.
- Adesão a práticas sólidas de engenharia de software:
- O projeto adota padrões e técnicas que promovem o desenvolvimento de uma solução coesa e bem estruturada, reduzindo a entropia do sistema ao longo do tempo.
- Redução de acoplamento:
- A arquitetura está sendo desenhada para tornar a aplicação mais modular, facilitando sua evolução e melhorando a performance e a produtividade dos times.
- Proposta de arquitetura To-Be:
- A solução futura busca atender objetivos como gestão segura e eficiente de comissões, conformidade regulatória, alta disponibilidade e capacidade de expansão futura.
Entregáveis
Como o projeto de estrangulamento do contexto de Comissões ainda está em execução, os entregáveis estão sendo definidos à medida que o trabalho avança. Contudo, espera-se que o projeto entregue:
- Uma nova arquitetura para o contexto de Comissões, garantindo maior segurança, desempenho e disponibilidade.
- Redução do acoplamento entre sistemas, promovendo maior coesão e autonomia dos times.
- Processos de negócio otimizados, alinhados às melhores práticas e necessidades da Icatu.
- Um sistema com maior testabilidade e manutenibilidade, utilizando linguagens modernas e padrões robustos de engenharia de software.