O Modelo de Maturidade da Qualidade

Discover how to deliver better software and systems in rapidly scaling environments. Join our Community

Como desenvolver um modelo de maturidade da qualidade para ajudar as equipas a acompanhar comportamentos que contribuem para a criação de aplicações de qualidade.

Republicado com autorização do excelente blogue da Kristin, thinkingtester.com.

Há um ano, a empresa onde trabalho adotou algo a que chamámos “Modelo de Maturidade da Qualidade”. Trata-se de um modelo que ajuda as equipas a medir o seu desempenho relativamente a comportamentos que contribuem para a criação de aplicações de qualidade. O projeto foi um grande sucesso, por isso decidi partilhar alguns detalhes sobre ele com o mundo!

Começámos por criar uma definição de qualidade. Utilizando esta excelente publicação de blogue como ponto de partida, definimos os sete Atributos da Qualidade na Paylocity. Uma aplicação de qualidade é:

Valiosa: Satisfaz as necessidades do cliente.

Funcional: Faz aquilo que dizemos que faz e conseguimos medir essas interações.

Fiável: Está disponível quando é necessária.

Segura: Protege as informações dos clientes e da empresa.

Com bom desempenho: Responde dentro de um período de tempo aceitável.

Fácil de utilizar: É fácil e intuitiva de utilizar.

Fácil de manter: É fácil de testar, implementar, automatizar, monitorizar, atualizar e dimensionar.

Depois de definirmos estes atributos, criámos uma lista de comportamentos para as equipas de desenvolvimento, de modo a ajudar a garantir que esses atributos fazem parte dos nossos produtos. Para cada um dos comportamentos, determinámos como seria a versão mínima desse comportamento, como seria uma versão padrão e como seria uma versão excelente. A partir daí, criámos o Modelo de Maturidade da Qualidade.

Eis alguns exemplos dos comportamentos definidos no Modelo de Maturidade da Qualidade:

Valiosa: A equipa identifica e investiga as necessidades dos clientes.

Funcional: A equipa cria, executa, monitoriza e mantém uma automatização de testes fiável.

Fiável: A equipa monitoriza ativamente o estado das suas aplicações e toma as medidas adequadas conforme necessário.

Segura: A equipa cria e segue uma estratégia de segurança de acordo com as melhores práticas de segurança.

Com bom desempenho: A equipa cumpre consistentemente as normas SLO do seu produto.

Fácil de utilizar: A equipa garante que o produto pode ser utilizado em vários dispositivos e navegadores/plataformas suportados, quando aplicável.

Fácil de manter: A equipa gere e é responsável pelas suas implementações, seguindo o processo de gestão de versões.

Implementámos o Modelo de Maturidade da Qualidade em todas as equipas e pedimos-lhes que identificassem quais destes comportamentos já demonstravam. A partir daí, pedimos às equipas que definissem objetivos trimestrais para adotarem mais comportamentos. A cada responsável pela qualidade foi atribuído um grupo de equipas com as quais se reunia mensalmente, para ajudar a responder a quaisquer perguntas e responsabilizar as equipas.

Após um ano a trabalhar na adoção do modelo, fizemos progressos significativos! Eis alguns exemplos:

Uma equipa comprometeu-se a fazer com que toda a equipa fosse responsável pela automatização de testes. A equipa trabalha em conjunto para garantir que os testes não são duplicados; por exemplo, se um teste unitário já abranger o que é necessário testar numa funcionalidade, não é preciso escrever um teste da interface do utilizador. Isto permite à equipa poupar bastante tempo na criação e manutenção de testes, libertando-a para se concentrar em novas funcionalidades.

Outra equipa garantiu que todos os seus elementos sabiam utilizar a estrutura de automatização da interface do utilizador. Um programador conseguiu realizar um teste de regressão completo do trabalho que estava a fazer na interface do utilizador e corrigir todos os erros que encontrou, sem envolver mais ninguém da equipa.

Um dos testadores de uma equipa criou um plano de testes reutilizável, para que os programadores pudessem determinar o que testar. Quando ambos os testadores da equipa estiveram de licença ao mesmo tempo, os programadores conseguiram prosseguir com o desenvolvimento e os testes das funcionalidades sem problemas.

Uma equipa conseguiu utilizar os progressos realizados na automatização de testes para acelerar os seus lançamentos, passando de uma vez por mês para duas vezes por mês.

Se procura uma forma de melhorar a qualidade do seu produto, minimizar defeitos que chegam à produção e acelerar o seu tempo de entrega, o Modelo de Maturidade da Qualidade pode ser uma excelente forma de ajudar. Recomendo que inicie uma conversa com os responsáveis da sua empresa sobre os comportamentos de qualidade que gostaria de ver nas suas equipas!

Leitura relacionada: CRIAR UMA ESTRATÉGIA DE QUALIDADE

Para saber mais sobre ferramentas que ajudam as suas equipas a gerir dados de teste, consulte a nossa lista das 10 MELHORES FERRAMENTAS DE GESTÃO DE DADOS DE TESTE

Kristin Jackvony
Kristin discovered her love of software testing in 2009 following a career in music education. She’s been a QA Lead, QA Manager, SDET, and is currently working as a Principal Engineer at Paylocity. She believes that good testing begins with good thinking: knowing why you are testing, planning what to test, and determining the best way to test it. Find more of her on her website, thinkingtester.com.

You may also like