Error Budget: Uma forma justa de equilibrar novas features e preservar a disponibilidade

Elemar Júnior

Sejamos honestos! Por melhor que sejam nossos procedimentos de teste, cada nova release colocada em produção estará recheada de novas funcionalidades e de bugs novos que precisaremos gerenciar, contornar e corrigir.

Se, por um lado, queremos permitir releases mais frequentes para atender aos anseios do negócio. Por outro, sempre temos o receio de que as novidades representem mais “dores de cabeça” do que benefícios.

Veja também

No e-commerce, por exemplo, novas features podem melhorar os índices de conversão, ajudando a empresa a vender mais. Entretanto, não se pode ignorar que qualquer intervalo de indisponibilidade deteriora a confiabilidade na marca e pode afastar clientes.

A forma mais justa de equilibrar o ímpeto inovador e a prudência é pela formação de um orçamento tolerado de erros.

O error budget é uma métrica definida em conjunto com os times de produto que determina a tolerância máxima de indisponibilidade para determinada área da plataforma em um determinado período de tempo. Por exemplo, se o “carrinho de compras” tem que ter um response time inferior a 300ms em 99% das requisições, assumimos que temos um error budget para retornar acima desse tempo em 1% dos requests. Assim, se são processadas 100.000 requisições por hora, poderemos “falhar” em 1.000!

Toda vez que o error budget é consumido, releases incluindo novas features são vetadas e somente voltam a ser autorizadas quando houver, mais uma vez, acúmulo de “orçamento” suficiente disponível.

A prática, embora simples, gera “efeitos colaterais” positivos:

  • Os squads passam a investir consideravelmente na redução de falhas ocasionais que podem consumir o budget;
  • As entregas ficam cada vez menores e localizadas, de forma que, se houver necessidade, rotinas de rollback sejam executadas mais rapidamente, reduzindo a drenagem do orçamento;
  • A preocupação com a implementação de rotinas eficientes e automáticas para rollback aumenta.
  • Os times de negócio adotam mais “prudência” ao definir SLOs para determinadas áreas do site. Afinal, quanto menor a tolerância a falhas, também menor será o ritmo permitido de introdução de novas features;
  • O consumo desenfreado do orçamento de erros de qualquer área do site, sem sinais de recuperação, é gatilho para formação de war rooms.

No final do dia, acaba valendo a máxima de que “o combinado não sai caro, nem barato”.

Em resumo

O problema
Cada nova release costuma estar recheada de novas funcionalidades e de bugs novos que precisaremos gerenciar, contornar e corrigir. É difícil estabelecer um equilíbrio ideal entre os ganhos de cada nova versão com as novas “dores de cabeça”. No final, é difícil decidir se vale a pena ou não, liberar uma nova release ou “esperar um pouco mais”
O insight
A forma mais justa de equilibrar o ímpeto inovador e a prudência é pela formação de um orçamento tolerado de erros – definido em conjunto com o time de negócio. Releases com features novas só são autorizadas se houver “orçamento” suficiente.
Os benefícios
Regras claras para permitir ou negar a publicação de novas releases, definidas a partir dos problemas encontrados em produção, orientam os times na adoção de práticas melhores de engenharia de software, contribuindo para o aumento do Velocity.

Compartilhe este insight:

Comentários

Participe deixando seu comentário sobre este artigo a seguir:

Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments

AUTOR

Elemar Júnior
Fundador e CEO da EximiaCo atua como tech trusted advisor ajudando empresas e profissionais a gerar mais resultados através da tecnologia.

NOVOS HORIZONTES PARA O SEU NEGÓCIO

Nosso time está preparado para superar junto com você grandes desafios tecnológicos.

Entre em contato e vamos juntos utilizar a tecnologia do jeito certo para gerar mais resultados.

Insights EximiaCo

Confira os conteúdos de negócios e tecnologia desenvolvidos pelos nossos consultores:

Arquitetura de Dados

Insights de um DBA na análise de um plano de execução

Especialista em performance de Bancos de Dados de larga escala
Arquitetura de Software

Estratégias para modernização do legado

Desenvolvedor .NET/NodeJs e especialista em Kafka com experiência em startups e grandes empresas
Infraestrutura e Nuvem

Migração para a nuvem, mais do que mudança tecnológica, implica em mudança da cultura organizacional

Engenheiro de nuvem, arquiteto de software e especialista em Containers e Devops

Acesse nossos canais

Simplificamos, potencializamos e aceleramos resultados usando a tecnologia do jeito certo

EximiaCo 2022 – Todos os direitos reservados

0
Queremos saber a sua opinião, deixe seu comentáriox
()
x

Error Budget: Uma forma justa de equilibrar novas features e preservar a disponibilidade

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

Condição especial de pré-venda: R$ 14.000,00 - contratando a mentoria até até 31/01/2023 e R$ 15.000,00 - contratando a mentoria a partir de 01/02/2023, em até 12x com taxas.

Tenho interesse nessa capacitação

Para solicitar mais informações sobre essa capacitação para a sua empresa, preencha o formulário a seguir:

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

O seu insight foi excluído com sucesso!

O seu insight foi excluído e não está mais disponível.

O seu insight foi salvo com sucesso!

Ele está na fila de espera, aguardando ser revisado para ter sua publicação programada.

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse nessa solução

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse neste serviço

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

× Precisa de ajuda?