Publicar um sistema não encerra o investimento em tecnologia.
A partir daquele momento começam custos de operação, manutenção e evolução.
A dimensão desses custos depende da criticidade, quantidade de usuários, infraestrutura, integrações e ritmo de mudança do negócio.
Por isso, um projeto deve considerar desde o início como será mantido depois do lançamento.
Infraestrutura
A aplicação precisa rodar em algum lugar.
Os custos podem incluir:
- servidores ou cloud;
- banco de dados;
- storage;
- CDN;
- backup;
- monitoramento;
- serviços de e-mail;
- filas;
- APIs externas;
- observabilidade.
Alguns são fixos. Outros variam conforme utilização.
Manutenção corretiva
Mesmo sistemas estáveis podem apresentar problemas.
Mudanças em navegadores, sistemas operacionais, APIs e dependências externas podem gerar situações que não existiam no momento do desenvolvimento.
É importante existir um processo para registrar, priorizar e corrigir incidentes.
Manutenção preventiva
Esperar algo quebrar não é uma estratégia eficiente para plataformas importantes.
Trabalho preventivo pode incluir:
- atualizações;
- revisão de logs;
- capacidade;
- backups;
- certificados;
- segurança;
- dependências;
- banco de dados;
- monitoramento.
O objetivo é reduzir riscos antes que virem incidentes.
Evolução funcional
O negócio continua mudando.
Novas regras, produtos, integrações e necessidades dos usuários aparecem.
Separar orçamento de manutenção do orçamento de evolução ajuda a empresa a enxergar quanto está sendo gasto para manter a operação e quanto está sendo investido para melhorá-la.
Quanto reservar?
Não existe um percentual universal que sirva para qualquer sistema.
Uma plataforma pequena e pouco alterada possui dinâmica diferente de um sistema crítico utilizado diariamente por milhares de pessoas.
Para estimar, considere:
- criticidade;
- horário de operação;
- quantidade de usuários;
- volume;
- número de integrações;
- infraestrutura;
- velocidade de evolução;
- qualidade do código existente;
- documentação;
- nível de atendimento necessário.
SLA influencia custo
Atender um problema apenas em horário comercial é diferente de manter cobertura estendida.
Tempos de resposta e resolução também afetam a estrutura necessária.
Por isso, SLA deve ser definido de acordo com impacto real da indisponibilidade e formalizado no contrato.
Sistemas legados podem exigir uma fase inicial diferente
Quando uma nova equipe assume uma plataforma existente, pode existir um período maior de diagnóstico e estabilização.
Depois que ambiente, código e processos são conhecidos, a sustentação tende a se tornar mais previsível.
Custo de não manter
Adiar manutenção também possui custo.
Dependências muito antigas, ausência de backup testado, falta de monitoramento e acúmulo de dívida técnica tornam futuras mudanças mais arriscadas e caras.
Manutenção não elimina todo incidente, mas reduz exposição desnecessária.
Conclusão
O custo real de um sistema é seu ciclo de vida.
Desenvolvimento inicial, infraestrutura, manutenção e evolução precisam ser considerados como partes do mesmo produto.
Empresas que planejam essa continuidade conseguem tomar decisões melhores sobre arquitetura e investimento desde o começo.
Seu sistema já está em produção e precisa de continuidade?
A Jumps pode assumir sustentação e evolução de plataformas digitais após uma avaliação técnica do ambiente.
Relacionado: Sustentação e Evolução · Como assumir um sistema legado sem parar a operação.