Como rastrear a implementação com build automatizado

No processo de desenvolvimento de software, historicamente, nos deparamos com a necessidade de análise de impacto de mudanças. Consequentemente, a necessidade de rastrear as implementações realizadas, para possíveis adequações. Com o uso de ferramentas de build automatizado e um processo de itens de backlog em ferramental integrado, esta necessidade é atingida de forma facilitada.


No decorrer desta leitura, vamos demonstrar uma configuração básica deste processo, fazendo uso do Azure Devops e uma aplicação simples em Java. Será demonstrado um fluxo simples de gestão de atividade integrada, com uma esteira de CI/CD, possibilitando assim, o rastreio do trecho de código atrelado a execução de build automatizado.

Criando o vínculo branch x task

Através da atividade podemos criar a branch específica para o desenvolvimento. 

Este procedimento permite que a task vinculada mantenha todo o histórico de commits realizados na branch criada, sem a necessidade de informar esta no ato do commit. 

Interface gráfica do usuário, Aplicativo, Teams

Descrição gerada automaticamente

Alterando o fonte e verificando o rastreio

A partir deste momento, qualquer alteração realizada na branch passa a ser rastreada pela ferramenta. 

Caso a branch não tenha sido criada vinculada a uma task, não impede de se implementar o rastreio. Basta que no ato do commit seja citado o número desta precedido do símbolo “#”.

Texto

Descrição gerada automaticamente

Efetuando o commit

Tela de computador com texto preto sobre fundo branco

Descrição gerada automaticamente

Texto

Descrição gerada automaticamente

Histórico de Alterações na Task.

O AzureDevops nos permite também rastrear a alteração e qual atividade demandante através do histórico da branch. Na imagem abaixo temos além da task a identificação da linha de código e arquivo impactado pela alteração assim como o responsável pela ação.

Tela de computador

Descrição gerada automaticamente

Rastreio da task na branch

Até o momento abordamos o rastreio pré-automatização de build no ambiente, contudo, ele é base para alcançarmos os objetivos que queremos. Após essa prática o ferramental se responsabiliza por garantir o rastro em todas as fases da esteira DevOps. 

Abaixo segue uma sequência de imagens demonstrando o rastreio no processo de release:

Interface gráfica do usuário, Aplicativo, Teams

Descrição gerada automaticamente

Tela de celular

Descrição gerada automaticamente

Interface gráfica do usuário

Descrição gerada automaticamente

Fazendo uso desta simples prática conseguimos ganhar velocidade na identificação do que motivou a alteração no código fonte, possibilitando o rastreio do executor, objetivo inicial (task) e consequentemente uma rápida resposta de ajuste se for necessário. 

Contudo faz-se necessário o aculturamento dos times ágeis de desenvolvimento para garantir o fluxo de alimentação da ferramenta seja na criação da branch, no ato do commit ou no fluxo de aprovação de releases para permitir tais ganhos. 

*Material desenvolvido com o apoio dos profissionais Jamil Costa, Ricardo Werneck e Diógenes Souza