A pergunta que chega a uma sexta-feira
«Porque é que o serviço de faturação faz isto?» A pergunta pode vir de um cliente, de um auditor ou da própria equipa. Responder-lhe bem exige saber que versão corre, de que mudança saiu, quem a aprovou, que requisito a pedia e que decisão a justificou.
Se cada uma dessas peças vive num lugar diferente sem ligação entre elas, a resposta leva dias. Se estão ligadas, leva minutos.
A cadeia
Cada elo aponta para o anterior com um dado concreto:
- O serviço em produção expõe a impressão digital do artefacto que executa.
- A impressão digital leva à construção que a produziu.
- A construção registra a mudança de código de onde saiu.
- A mudança cita a especificação ou a tarefa que a pedia.
- A aprovação da porta registra quem aceitou essa impressão digital e quando.
- A especificação e os registos de decisão explicam o porquê.
Nenhum destes dados é difícil de guardar. O difícil é fazê-lo sempre, e por isso a plataforma o faz automaticamente em cada construção e cada implementação, sem depender de que alguém se lembre.
Para que serve, além de auditar
- Diagnosticar: diante de uma falha, saber em segundos o que mudou desde a última versão boa.
- Voltar atrás com segurança: a impressão digital anterior e a sua aprovação continuam lá.
- Explicar o custo: cada serviço, com o seu responsável e a sua decisão de desenho, pode cruzar-se com o que custa (vimo-lo na série de FinOps).
A rastreabilidade mostra o que aconteceu. O que se fizer com isso quando algo falha é o que faz uma plataforma melhorar ou repetir os seus erros.
Como o aplicamos: Engenharia de Plataforma.