Newsletter #027 - QA e DORA Métricas P. I
Seu newsletter semanal voltado para tecnologia e qualidade de software
Olá pessoal, mais uma semana de newsletter voltado para tecnologia e qualidade de software.
Na semana passada continuamos na visão da evolução dos estudos, sendo ele na camada de planejamento, estratégia e por fim voltado para soft skills que conversamos sobre a dificuldade de dizer não. Caso não tenha lido da semana passada, segue o link. Na newsletter de hoje iremos conversar um pouco sobre a metrificação de aplicação chamada DORA e como o QA pode atuar nessa camada, então bora lá?
DORA Métricas
As aplicações que utilizamos atualmente sempre estão em evolução, ambientes cada vez mais complexos e com regras de negócios rígidas fazem com que devemos metrificar tudo que puder a fim de garantir uma entrega de qualidade para o cliente final. Desde as mudanças dos softwares para ambientes em nuvem, foi necessário mudar conceitos que antes eram aplicados em sistemas desktops, como por exemplo a divisão entre time de desenvolvimento e time de implantação, hoje uma vertente que foi popularizado é o DevOps que é a junção desses times.
Dentro dessa visão de conceito de DevOps um dos autores mais conhecido chamado Gene Kim e precursor de DevOps criou o livro Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations, apresentou o conceito de DORA Metrics para o mundo e está se popularizando cada vez mais.
O conceito DORA Metrics (DevOps Research and Assessment) propõem o acompanhamento de quatro métricas que indicam como anda o desempenho da equipe DevOps e dos softwares desenvolvidos por uma empresa. Com isso, os gestores têm melhores informações para embasar decisões sobre mudanças na organização e processos da equipe. No estudo feito durante oito anos, os pesquisadores chegaram a quatro métricas consideradas ideais para acompanhar e medir o desempenho das equipes DevOps e dos softwares utilizados. Elas são:
Deployment Frequency (“Frequência de Implantação”) - A métrica Deployment Frequency mede a frequência que a equipe atualiza seus softwares em Produção, disponibilizando melhorias ou correções nas aplicações usadas pela empresa ou por seus clientes. Esse valor é ajustado dependendo do tamanho da empresa, podemos dizer que normalmente, essa métrica é acompanhada dia a dia e, em geral, quanto mais ações de deployment são realizadas, melhor o time está trabalhando.
Lead Time for Changes (“Tempo para Implantações”), também denominada “Delivery Lead-Time” - Mede o tempo que a equipe demora para fazer o código sair do status de “commited” para "executado com sucesso”, ou seja, analisa o tempo médio de desenvolvimento e implantação de um software.
É uma métrica que mede a velocidade de desenvolvimento dos códigos e softwares, ajudando a compreender melhor o ciclo de vida das soluções criadas pela equipe. Naturalmente, o ideal é que as adaptações sejam realizadas o mais rápido possível.
Change Failure Rate (“Taxa de Falhas em Implantações”) - A Change Failure Rate, como o próprio nome sugere, aponta qual é a taxa de falhas nas adaptações e mudanças propostas pela equipe DevOps. Logo, é um excelente indicador de qualidade e estabilidade das soluções desenvolvidas. Basicamente, a taxa é obtida dividindo o número de falhas e problemas apresentados pelo número total de mudanças e implantações realizadas, ajudando a balancear a métrica Deployment Frequency.
Tudo o que se quer é fazer implantações com a maior frequência possível, porém não a qualquer custo. Uma ótima métrica de Deployment Frequency só deve ser comemorada caso a métrica de Change Failure Rate esteja baixa.
Time to Restore Service ( “Tempo para Restauração de Serviço”), também denominada Mean-Time-to-Restore ou Mean-time-to-Recover - Por fim, Time to Restore Service é uma métrica bastante direta, que indica a média de tempo necessário para que a equipe restaure falhas e problemas que tiram os sistemas e aplicações do ar. Em empresas que atendem seus clientes digitalmente, essa é uma métrica especialmente crítica, pois quanto mais tempo leva para solucionar problemas que tiram os sistemas do ar, mais insatisfeitos ficam os clientes e mais dúvidas eles terão para expandir o relacionamento com sua empresa.
Bom, nessa primeira parte conhecemos um pouco sobre DORA Métricas e os momentos que devemos metrificar nossa aplicação. Para a próxima semana estaremos analisando o papel do QA em cada métrica DORA e como sua atuação irá melhorar a entrega do software para o cliente com excelência. Até lá 🚀!
O que rolou de Tecnologia?
Engenharia de software além da codificação - newsletter muito interessante onde o foco do projeto é mostrar as diversas fases do ciclo de desenvolvimento de software, trazendo o papel de cada membro do time até em soft skills que são necessários, muito válido a leitura.
Como lidar com dívidas técnicas - essa talvez é uma das perguntas de um milhão de dólares. Nesse texto o autor traz perspectivas de como resolver uma das maiores dores de uma empresa de tecnologia que é lidar e acabar com as dividas técnicas. Muito interessante e útil a leitura.
Guia passo a passo para introduzir com segurança alterações de alto risco em seu sistema de software - quem nunca passou por aquele dilema se coloca em produção um alteração de alto risco. Nesse texto o autor aborda passos que podemos realizar dentro do time para que consiga entregar essas alterações de maneira mais organizada e diminuindo os riscos.
5 bibliotecas de componentes de UI para construir aplicativos personalizados em 2024 - dentro da área de frontend, um dos dilemas quais são as principais bibliotecas de componentes que devemos utilizar. Nesse tutorial abrande 5 bibliotecas que serão tendências no ano de 2024.
E Qualidade de Software, como está?
Diferenciando os métodos de teste - caixa preta, caixa branca, caixa cinza - dentro da qualidade de software algo que nunca devemos esquecer da teoria voltada para os métodos de teste, sendo esses caixa preta, branca e cinza. O texto aborda essas diferenças e o momento de executar esses métodos, para quem está pensando em tirar a certificação CTFL é um bom texto para entendimento.
O que é teste contínuo? - a grande mudança que houve na qualidade de software é a visão de teste contínuo, no texto é abordado o que é o teste contínuo e como deve ser aplicado nas empresas com a utilização da cultura DevOps.
Planejamento de testes com AI Assistant - A utilização de Inteligencia Artificial em Qualidade de Software já não é mais novidade mais sim uma aplicação útil para o dia a dia. O texto aborda como realizar o planejamento dos testes com a utilização de IA como copiloto da escrita do planejamento.
Prompts LLM que o levarão do zero ao herói em testes de software - O Large Language Models revolucionou a área de tecnologia e em qualidade de software não é diferente. Nesse modelo aplicado por exemplo no chatGPT facilita a abordagem da escrita e planejamento. Nesse sentido, o texto apresenta como podemos criar a escrita de uma pergunta para esses modelos a fim de nos auxiliar nas mais diversas formas de pesquisa e soluções.
Eventos Importantes não perca!
Open Class: Dev Leadership - Uma aula experimental da Pós Tech - Evento Online.
Data: 06/02
Inscrições abertas
Vejo vocês na próxima newsletter 😁🚀!
“A vida é uma sucessão contínua de oportunidades.” – Gabriel García Márquez