Melhoria do processo de teste (TPI) usando modelo PDCA
⚡ Resumo Inteligente
A melhoria do processo de teste aplica o ciclo PDCA aos testes, de forma que cada projeto deixe lições mensuráveis. Esta página explica as quatro etapas do PDCA, os modelos de maturidade subjacentes e as métricas que comprovam que a melhoria realmente ocorreu.
O que é melhoria do processo de teste?
Melhoria do processo de teste É a prática de medir o desempenho de um processo de teste, identificar seus pontos fracos e aplicar mudanças controladas para que o próximo projeto entregue maior qualidade a um custo menor e em menos tempo. Trata o teste como um processo que pode ser medido e ajustado, em vez de uma atividade repetida da mesma forma em cada versão.
Imagine o GuruO projeto do Banco 99 acaba de ser concluído. A diretoria elogiou seu trabalho e o cliente está satisfeito. Mesmo assim, seu chefe ainda tem algumas perguntas para você.
Os gerentes frequentemente descrevem teste de software como um processo problemático e incontrolável. Olhando para trás, para o GuruNo projeto do Banco 99, você enfrentou algum dos seguintes problemas?
Esses são problemas comuns em praticamente qualquer projeto de teste. Muitas organizações percebem que aprimorar o processo de teste é a única maneira duradoura de resolvê-los, pois aprender com os erros do passado é o que impede que os mesmos erros se repitam no próximo ciclo de lançamento.
Por que testar a melhoria do processo?
O cenário a seguir demonstra a importância da melhoria do processo de teste. GuruO projeto 99 Bank está concluído, a qualidade dos testes foi ótima e você recebeu um bom feedback do cliente.
Qual é a lição aprendida com esse cenário? É simplesmente... “Sempre tente fazer melhor”Mesmo quando você acredita ter feito um bom trabalho, sempre haverá outros fazendo melhor, porque encontraram ideias e soluções melhores que as suas.
Toda empresa deseja que o projeto seja concluído com o mais qualidade, no menor custo, e no menor tempo de entrega. A melhoria do processo de teste é o que ajuda uma equipe de testes a atingir os três objetivos simultaneamente.
Como implementar melhorias no processo de teste?
Implementar a melhoria do processo de teste no GuruNo projeto 99 Bank, o Gerente de Testes pode acompanhar o PDCA O modelo PDCA (Planejar-Executar-Verificar-Agir) é um método de gestão em quatro etapas utilizado em negócios para o controle e a melhoria contínua de um processo. Cada passagem pelo ciclo representa um ciclo de melhoria, e o resultado da etapa "Agir" torna-se a entrada para a próxima etapa "Planejar".
💡 Dica: Execute o ciclo PDCA em um problema específico por vez. Um ciclo que visa um único ponto problemático mensurável, como o tempo de execução de regressão, termina rápido o suficiente para mostrar um resultado em uma única versão.
Etapa 1) Planejar
A fase de Planejamento é onde a melhoria é projetada. Ela é dividida em três etapas menores.
Passo 1.1) Identifique o problema
A primeira atividade de um processo de melhoria de teste é identificar os problemas que ocorreram no projeto atual. Os problemas neste projeto podem acontecer novamente em outro projeto. Resolver problemas e descobrir soluções para evitá-los no futuro é o objetivo principal da Melhoria de Testes.
Agora, voltando ao projeto. GuruNo site do 99 Bank, você encontrou algum problema ou sugestão de melhoria? Selecione abaixo.
| Senhor não | Problema | Descrição | Selecionar |
|---|---|---|---|
| 1 | Qualidade | O cliente ainda encontrou alguns Defeito após o lançamento | |
| 2 | Entrega | O projeto foi adiado | |
| 3 | Time | Alguns funcionários não cooperaram com outros membros da equipe | |
| 4 | Competências | O membro da equipe não tinha as habilidades desejadas para concluir suas tarefas | |
| 5 | e Autônoma | O Test Manager não monitorou bem o progresso, o que causou atraso em alguns projetos | |
| 6 | Comunicação | Nenhum contato constante com o cliente; entendendo mal a exigência do cliente | |
| 7 | Custo | O custo do projeto foi ultrapassado além do orçamento definido |
Etapa 1.2) Determinar o alvo
Compreenda o problema e as questões que ocorreram no projeto. É assim que você determina os pontos de melhoria e as fases de teste que merecem atenção prioritária.
Suponha que você tenha identificado que a fase de execução do teste demorou muito muito tempo e custo para concluir. Os testes poderiam ser mais rápidos e baratos? Essa questão se torna o objetivo do ciclo. Um objetivo útil é definido como um número e um prazo, por exemplo, "reduzir o esforço de execução de regressão em 30% antes do próximo lançamento".
Passo 1.3) Definir as ações de melhoria
Com base na meta acordada, são definidas as ações de melhoria. Essas ações devem ser graduais e introduzidas aos poucos, pois não é realista mudar tudo imediatamente.
Por exemplo, para tornar os testes mais rápidos e baratos, as seguintes ações são candidatas.
No exemplo acima, as opções A e B tornam os testes mais rápidos e baratos. A opção C tornaria os testes mais rápidos, mas mais caros, pois um testador mais experiente exige um salário maior. Essa relação de custo-benefício é exatamente o motivo pelo qual cada ação candidata deve ser avaliada em relação ao objetivo, e não à intuição.
Etapa 2) Faça
Você já definiu os pontos de melhoria. Agora é hora de elaborar um plano para implementá-los. Esse plano deve responder às seguintes perguntas.
- Quais pontos de melhoria devem ser implementados e em que ordem?
- Quando o plano deve ser concluído?
- Quais etapas devem ser concluídas para atingir o plano?
- Quem é o responsável por cada etapa e como a conclusão será confirmada?
Realizar ações de melhoria
Uma vez estabelecido o plano, ele precisa ser implementado. Atividades de melhoria podem interromper o trabalho de teste que já está em andamento, portanto, um Gerente de Testes deve prestar atenção. por WhatsApp. para eles a fim de evitar indesejados consequências.
Considere o seguinte cenário. No GuruPara tornar os testes mais rápidos e baratos, você decidiu usar o projeto 99 Bank. teste de automação Em vez de um grande bloco de testes de regressão manual, após a implementação da ação, a produtividade aumentou significativamente.
Etapa 3) Verifique
Na etapa de verificação, você realiza três coisas.
- Avalie o eficiência das ações de melhoria de testes
- Meça como eficaz a solução foi
- Analise se isso poderia ser melhorado mais distante
O objetivo desta fase é confirmar se as ações de melhoria foram implementadas com sucesso e avaliar se a meta estabelecida no Plano foi efetivamente alcançada.
A melhor maneira de realizar essa avaliação é com métricaAs métricas são essenciais para uma gestão organizacional bem-sucedida. O Gerente de Testes coleta dados e os utiliza para medir parâmetros como produtividade, qualidade e custo.
Por exemplo, antes da automação ser aplicada ao projeto, a produtividade dos testes era 10 casos de teste por hora-homemApós a implementação da automação, a produtividade foi medida em 20 casos de teste por hora-homem.
Mas, junto com esse ganho, surgiu um problema indesejado.
Neste caso, aplicando automação. aumentou a produtividade dos testes, mas a qualidade dos testes diminuiuUma ação de melhoria pode, portanto, causar sérios problemas. conseqüências Em outros casos, a ferramenta de teste precisa ser selecionada com muito mais cuidado, e o conjunto de testes automatizados precisa ser revisado com o mesmo rigor que o código de produção. Uma avaliação estruturada das ferramentas candidatas, como a descrita em [referência], é essencial. Selenium tutorial, impede que uma ferramenta seja adotada simplesmente por ser popular.
⚠️ Aviso: Nunca avalie uma melhoria com base em uma única métrica. Uma mudança que dobra a taxa de transferência de execução, mas reduz a detecção de defeitos, tornou o processo mais rápido e pior ao mesmo tempo. Sempre combine uma métrica de velocidade com uma métrica de qualidade.
Considere o mesmo cenário novamente. O Guru99 custo do projeto tinha invadir porque os membros da equipe levaram muito a sério muito tempo para executar os casos de teste. Ao usar a ferramenta de teste automatizado, você economizou 30% do custo do projeto. Isso é uma boa melhoria, mas seu chefe espera mais.
Portanto, é sempre necessário buscar soluções mais inovadoras que aprimorem ainda mais o processo de teste. Nesse cenário, outras opções podem gerar economia adicional nos custos do projeto.
- Gerencie seus recursos humanos de forma eficaz para que os testadores qualificados sejam alocados onde agregam mais valor.
- Negocie melhores condições comerciais com seus fornecedores de ferramentas e pessoal.
- Elimine casos de teste duplicados ou de baixo valor em vez de automatizá-los.
Etapa 4) Agir
Quando as ações de melhoria forem implementadas com sucesso e a meta for atingida, o Gerente de Testes deverá concluir o ciclo com as seguintes atividades.
- Revisão as atividades de melhoria e agir de acordo com as lições aprendidas.
- Padronizar o ponto de melhoria dentro do processo de gerenciamento de testes
- Atualizar os documentos de política, os modelos de plano de teste e os documentos de processo padrão.
- Determinar Quando e onde essas alterações serão aplicadas no próximo projeto.
Se a meta não for atingida, o ciclo não para. A meta não atingida é levada para uma nova fase de Planejamento, juntamente com tudo o que a fase de Verificação revelou sobre o motivo do desempenho insatisfatório da ação.
Comparação entre TPI NEXT, TMMi e CMMI
O ciclo PDCA é o motor da melhoria, mas um modelo de referência indica o que significa "melhorar". Três modelos são comumente usados e frequentemente confundidos entre si.
TPI PRÓXIMO é um modelo de referência específico para testes, publicado pela Sogeti. Ele avalia 16 áreas-chave, organizadas em três grupos, em relação a quatro níveis de maturidade: Inicial, Controlado, Eficiente e Otimizado. Como a avaliação é feita área-chave por área-chave, uma equipe pode ser Eficiente em uma área e ainda Controlada em outra.
TMMi, mantido pela TMMi Foundation, é um modelo de maturidade de testes em etapas com cinco níveis: Inicial, Gerenciado, Definido, Medido e Otimizado. Uma organização atinge um nível somente após satisfazer as áreas de processo desse nível.
CMMI Não se trata de um modelo de teste. Ele abrange toda a organização de desenvolvimento e sua representação em estágios também possui cinco níveis de maturidade: Inicial, Gerenciado, Definido, Gerenciado Quantitativamente e Otimizado. O TMMI foi projetado para complementar o CMMI, e não para substituí-lo.
| Modelo | Objetivo | Estrutura | Níveis de maturidade |
|---|---|---|---|
| TPI PRÓXIMO | Somente processo de teste | 16 áreas-chave em 3 grupos, com pontos de controle e agrupamentos. | 4 — Inicial, Controlado, Eficiente, Otimizado |
| TMMi | Somente processo de teste | Organizado por etapas, com áreas de processo atribuídas a cada nível. | 5 — Inicial, Gerenciado, Definido, Mensurado, Otimização |
| CMMI | Organização de desenvolvimento integral | Representação encenada ou contínua | 5 (em etapas) — Inicial, Gerenciado, Definido, Gerenciado Quantitativamente, Otimizando |
Métricas que comprovam a melhoria do processo de teste
A fase de verificação entra em colapso sem números. Um pequeno conjunto de métricas estáveis, coletadas antes e depois de cada ciclo, é suficiente, e as mesmas definições devem ser usadas em ambos os lados da comparação.
- Produtividade na execução de testes — casos de teste executados por hora-homem
- Percentagem de Detecção de Defeitos (DDP) — defeitos encontrados nos testes como uma porcentagem de todos os defeitos encontrados, incluindo aqueles relatados após o lançamento
- Custo por caso de teste executado — custo total do esforço de teste dividido pelo número de casos de teste executados
- Cobertura dos requisitos — requisitos com pelo menos um vinculado caso de teste
- Tempo de resposta para correção de defeitos — idade média de um defeito em toda a ciclo de vida do defeito
Com o GuruCom base nos números do 99 Bank, onde 180 defeitos foram encontrados nos testes e 20 foram relatados pelo cliente após o lançamento, o cálculo é simples.
# Defect Detection Percentage and improvement deltas def ddp(found_in_test, found_after_release): return found_in_test / (found_in_test + found_after_release) * 100 def delta(before, after): return (after - before) / before * 100 print("Defect Detection Percentage: %.1f%%" % ddp(180, 20)) print("Productivity gain: %.1f%%" % delta(10, 20)) print("Test cost change: %.1f%%" % delta(50000, 35000))
Saída:
Defect Detection Percentage: 90.0% Productivity gain: 100.0% Test cost change: -30.0%
Uma taxa de defeitos de 90% significa que um defeito em cada dez ainda chegou ao cliente, portanto, a meta de qualidade não foi totalmente atingida, mesmo que a produtividade tenha dobrado e o custo tenha caído 30%. Essa visão limitada é o que impede uma equipe de declarar vitória prematuramente.
Erros comuns na melhoria do processo de teste
A maioria dos programas de melhoria falha por razões organizacionais, e não técnicas. Os erros a seguir são responsáveis pela maioria das iniciativas abandonadas.
- Melhorar sem uma linha de base. Se ninguém mediu o processo antes da mudança, ninguém pode provar que a mudança ajudou. Registre a linha de base durante o planejamento, não depois.
- Buscar um nível de maturidade em vez de um fator determinante para o negócio. Um certificado que não reduz custos, defeitos ou prazos de entrega é uma despesa, não uma melhoria.
- Mudar tudo de uma vez. Quando cinco ações são implementadas na mesma versão, não pode haver uma regressão. traced para qualquer um deles.
- Automatizando um processo falho. A automação multiplica qualquer processo ao qual é aplicada, incluindo projetos de teste deficientes e critérios de entrada pouco claros.
- pularping a fase de Ação. Uma melhoria que nunca é incluída na política de testes e na ciclo de vida de teste de software Os documentos morrem com a equipe do projeto que os criou.
- Excluindo os testadores. As pessoas que não foram consultadas sobre uma mudança encontram, invariavelmente, maneiras de contorná-la.
Para aprofundar essas ideias, revise as fases do ciclo de vida de teste de software, aperte seu caso de teste projetar, formalizar o processo de gerenciamento de defeitos, avalie onde teste de automação proporciona um retorno real e veja como uma ferramenta como essa pode ajudar. HP ALM Pode armazenar as métricas das quais sua fase de verificação depende.












