Quality Assurance vs. Quality Control

Na área de Qualidade de Software algumas mudanças estão ocorrendo relacionadas ao papel das pessoas que “cuidam” para que tudo esteja funcionando de acordo com as expectativas dos usuários. A missão é a mesma, mas a tarefa mudou um pouquinho de acordo com o tempo e as últimas alterações de metodologias e de pensamento.

O que antes era “testar no final” ditou por muito tempo as regras e foi considerado tarefas de Quality Control mas, agora mudou! As empresas não estão mais interessadas em chegar na ponta com defeitos de produção e entrar no famoso ciclo constrói/testa/conserta/re-testa, querem fazer certo desde o primeiro momento! E isso é bom, nos traz uma infinidade de possibilidades em como atuar em todo o flow de desenvolvimento do software.

Um dos valores Lean é evitar o desperdício (waste), e assim construir um fluxo de entrega de software que garanta que no final desse fluxo o software vai estar em produção funcionando de acordo com o esperado. Os tipos de desperdícios mais típicos são estes:

  • Task-switching: mudança de tarefas e de foco o tempo todo
  • Waiting: gastos de período de espera entre os testes e sua correção
  • Defects. gastos com gestão de defeitos, priorização de defeitos e

Para tal, já existia, mas vem com a força toda o termo: Quality Assurance

quality_assurance

Quality Assurance é desenvolver um sistema de gestão da Qualidade com atividades mínimas que garantam a qualidade no início do fluxo. É testar antes mesmo de desenvolver. Não podemos esquecer também que temos que ter em mente outro grande valor do Lean: gerar tarefas que agregem de fato valor ao software em termos de qualidade e elminar aquelas que não geram valor no produto final.

Desta forma, Agile Tester agora vai para o início do flow de desenvolvimento, interagindo com o PO (Product Owner) e com o UX (User Experience Designer), planejando todas as atividades de testes que serão realizadas para a entrega final da feature (ou funcionalidade).

Assim, são gerados testes de aceitação e checklists para o início do fluxo de desenvolvimento, são selecionados os smoke tests para automatizar os cenários e então são automatizados os cenários mais importante. Que são executados com a suite de testes de entrega do desenvolvimento. num fluxo de deploy contínuo.

Então Quality Assurance trabalha tambérm  com processo e métricas além de focar nos testes de fato. O profissional precisa entender o flow desde a concepção até o desenvolvimento identificando e corrigindo as falhas para que defeitos sejam prevenidos.

Além disso, é preciso entender que todas as atividades de testes precisam ser planejadas antes de um novo lançamento. Assim, você consegue colocar as atividades de testes antes do flow de desenvolvimento, e os testes acabam guiando o desenvolvimento.

Ao planejar as atividades de testes de lançamento de uma nova feature, tenha sempre em mente:

“Nenhum processo é perfeito! Além disso, sua equipe é única e provavelmente está sempre enfrentando desafios diferentes. Por isso, o processo deve ser adaptado e melhorado continuamente para atender de forma eficiente as necessidades da equipe.” (André Farias Gomes na JavaMagazine Ed. 77)

 

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s