BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Como medir a entrega contínua

Como medir a entrega contínua

A estabilidade e o throughput são as métricas que você pode analisar ao adotar práticas de entrega contínua. Essas métricas podem ajudá-lo a reduzir a incerteza, tomar decisões melhores sobre quais práticas amplificar ou amortecer e orientar seu processo contínuo de adoção de entrega na direção certa.

Steve Smith, um consultor de entrega contínua independente, falará sobre medir a entrega continua no Lean Agile Scotland 2017. A conferencia acontece de 4 a 6 de outubro em Edimburgo.

O InfoQ entrevistou Smith sobre o que torna a entrega contínua tão difícil, como as métricas podem ajudar a adotar a entrega contínua e o que medir, o que ele aprendeu usando as métricas em um departamento do governo do Reino Unido e como o conceito SRE de "orçamento de erro" se relaciona com o as métricas de entrega contínua.

InfoQ: O que torna a entrega contínua tão difícil?

Steve Smith: Eu sempre digo que existem dois tipos de pessoas que fazem entrega contínua: aqueles que sabem que é difícil e aqueles que estão em negação. A entrega contínua é difícil porque você está tentando introduzir uma grande quantidade de tecnologia e mudanças organizacionais em uma organização.

A automação e mudanças organizacionais, como migrações automáticas de banco de dados, não é a parte mais difícil. Escolher as ferramentas para usar tambem nao é a parte mais difícil. A maioria das ferramentas são muito boas, desde que você evite as que são ruins. A parte mais difícil é aplicar essas mudanças às circunstâncias e restrições únicas da organização. A entrega contínua é diferente para cada organização, e isso precisa ser reconhecido desde o início.

InfoQ: Como as métricas podem ajudar a adotar uma entrega contínua?

Smith: As métricas podem ajudar a reduzir a incerteza e a tomar melhores decisões. Elas ajudam você a entender se o seu processo de adoção está indo na direção certa.

Eu recomendo aos clientes que eles comecem com Improvement Kata, que cria um ciclo de melhorias iterativas e incrementais em torno de suas atuais formas de trabalhar. Mas quando você expõe sua visão, como você sabe se não foi muito longe? Quando você deseja estabelecer seu próximo marco de melhoria, como você sabe o que pretende? Quando você experimentou uma mudança, como migrações automáticas de banco de dados, como você sabe se melhorou a situação atual?

As métricas não podem dar essas respostas, mas elas podem te orientar para onde essas respostas estão. Trabalhei por 2,5 anos em um importante departamento do governo do Reino Unido e tivemos 60 equipes trabalhando com entrega contínua. Sem métricas, não sabíamos quais equipes deveriam ser ampliadas ou quais práticas poderiam ser atenuadas. As métricas que utilizamos identificaram as equipes com as quais precisávamos falar e sobre o que deveríamos falar.

InfoQ: O que você sugere para medir?

Smith: A entrega contínua consiste em melhorar a estabilidade e a velocidade do seu processo de liberação, então, sem surpresa, você deve medir a estabilidade e a velocidade! Esses são intangíveis, mas não sao difíceis de medir. Em How To Measure Anything, Douglas Hubbard mostra como usar cadeias de esclarecimento para medir intangíveis - você cria medidas tangíveis e relacionadas que representam a mesma coisa.

Por sorte, para nós, as medidas já foram identificadas. No State of DevOps Report, Nicole Forsgren, Jez Humble e outros mediram como a estabilidade e o throughput melhoram quando as organizações adotam práticas de entrega contínua. Eles medem a estabilidade com a taxa de falha e o tempo de recuperação de falhas, e eles medem o débito com tempo de espera e frequência. Sou um grande fã do trabalho de Nicole e Jez desde 2013, e fiz um profundo mergulho nas medidas usadas e como elas pertencem a entrega contínua. Essas sao as medidas que eu recomendo.

InfoQ: O que você aprendeu usando as métricas no departamento do governo?

Smith: Aprendi que a adoção de entrega contínua sem métricas é um pouco como o ambiente de produção operacional sem monitoramento. Sem medidas de adoção, você está voando cego. Você não sabe quais alterações foram bem-sucedidas e devem ser amplificadas, ou que falharam e deve ser revertidas o mais rápido possível.

Neste departamento particular do governo do Reino Unido, criamos um site interno que mostrou estabilidade e métricas de reprodução para cada equipe e todos os seus serviços. Isso nos deu dicas para todos os tipos de conversas interessantes e informações sobre alguns problemas incomuns. Por exemplo, uma equipe melhorou massivamente a estabilidade da implantação em um curto período de tempo, e quando eu conheci não estava claro o que estavam fazendo de forma diferente. A única pequena diferença era: eles tinham seus próprios painéis de logging e acompanhamento personalizados. Extraímos o painel JSON, escrevemos um DSL para gerar o mesmo JSON, e o lançamos para todas as equipes e serviços em todo o país. Dentro de algumas semanas, várias equipes nos informaram que o funcionamento de seus serviços de produção tornou-se mais fácil como resultado.

InfoQ: Qual a sua opinião sobre o conceito do Google SRE de "orçamentos de erro" e como ele se relaciona com suas métricas de entrega contínua?

Smith: O livro Site Reliability Engineering é muito bom. Curiosamente, a Betsy Beyer e outros definem a confiabilidade como uma função do MTBF e do MTTR, que é, naturalmente, sinônimo de definição de estabilidade contínua como função da taxa de falha e do tempo de recuperação de falhas.

Os orçamentos de erro são uma boa ideia. Eu sempre incentivo proprietários de produtos para definir seus requisitos operacionais, o que inclui a confiabilidade necessária para o seu produto. O uso do inverso como uma tolerância para a tomada de riscos poderia funcionar bem e seria interessante se uma equipe praticando entrega contínua fizesse algo semelhante - se eles medem rigorosamente a estabilidade e a taxa de transferência e bloquearem as implantações automáticas para a produção quando a estabilidade cair abaixo de um limiar configurável. Eu vi algumas compilações de pontuações de empresas no passado em análises estáticas, testes, OWASP, etc. A implantação de partidas de pontuação na estabilidade de implantações passadas não é algo que eu já tenha visto, mas seria bom ver.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT