A vida de um Analista de Qualidade (QA) em um time de Alta Performance

Artigos

A vida de um Analista de Qualidade (QA) em um time de Alta Performance

Caio Majdalani
Escrito por Caio Majdalani em 1 de agosto de 2019
Junte-se a mais de 7000 alunos

Entre para nossa lista e receba conteúdos exclusivos e com prioridade

Antes de mais nada, você deve estar se perguntando: “Por que Alta Performance? ”. Para falar sobre isso, tenho que contar como tudo começou e como eu, analista QA, entrei de cabeça na ideia.

Há alguns meses fui convidado a participar, como QA, do time de Operações Críticas da FCamara. Esse time, chamado “High Performance Team”, utiliza uma metodologia de iterações, baseada em lean startup, mvp canvas e design thinking, criando ciclos de desenvolvimento de curto prazo, aumentando a visibilidade do projeto e a performance do time, consequentemente melhorando o resultado do projeto.

Se você é desenvolvedor e/ou está familiarizado com o processo de desenvolvimento de alta performance, entende o tamanho do desafio que é, para um analista QA, fazer parte de um time como esse.

Mas antes de falar sobre o trabalho de um QA nesse processo, é necessário que algumas dúvidas básicas sejam esclarecidas.

O que é ser um Analista QA?

Quality Assurance (QA) 

Define-se como um conjunto de atividades para garantir a qualidade nos processos de desenvolvimento.

Ser um analista QA, ao contrário do que muitos imaginam, não é apenas “testar”. Há uma diferença sutil, mas muito importante, entre o “Analista de Teste” e o “Analista de Qualidade”:

Tester X QA

Analista de teste seria aquele envolvido especificamente na área de testes de software elaborando casos de testes e executando. Já o analista de qualidade seria aquela pessoa envolvida no trabalho que define um processo de desenvolvimento de software e depois certifica esse processo.

O trecho acima cita a diferença básica entre os dois cargos. Na FCamara,por exemplo, há uma cultura de aprendizado diferenciada. Os gestores e líderes dos projetos sempre incentivam aos desenvolvedores e analistas a participarem de todo o processo e a entenderem o negócio, não só a parte técnica do produto, mesmo se a participação do indivíduo se inicie com o projeto já em andamento.

Para resumir bem as definições dos dois cargos:

Analista de Teste: Valida o produto
Analista de Qualidade: Valida o processo

O que é preciso para ser um analista QA?

Além de conhecimentos técnicos sobre todo o processo de desenvolvimento de um software, tipos diferentes de testes e ferramentas e metodologias de automação de testes, validação de processos, etc — falarei sobre estas em outro artigo — , o analista QA precisa ter características pessoais que são diferenciais para o sucesso de sua participação nesses projetos, como:

  • Ser detalhista. O analista QA precisa conhecer e entender o funcionamento de cada funcionalidade do sistema, por menor que ela seja. O entendimento do negócio desde a fase de idealização do projeto é crucial para o sucesso do seu trabalho. Quanto mais detalhista ele for, maior a chance de encontrar problemas ou até mesmo fazer sugestões de melhorias, tanto na aplicação quanto no código.
  • Ser curioso“O que será que acontece se eu fizer isso? ”. É imprescindível que o QA saiba que, provavelmente, o “caminho feliz” da aplicação estará funcionando corretamente. Isto é, se uma função da aplicação foi desenvolvida para o usuário pedir uma cerveja, para validar que essa funcionalidade se comporta como esperado, o QA precisa ser curioso o suficiente para testar o comportamento da aplicação ao receber “pedidos inesperados”.
  • Pensar como técnico e usuário. É claro que o analista QA possui conhecimentos que lhe dão uma certa “vantagem” na hora de interpretar comportamentos de uma aplicação. No entanto, a depender do objetivo dessa aplicação, todo tipo de usuário a utilizará. E nesse momento o analista QA precisa “pensar como o usuário” para interpretar se a aplicação está agindo corretamente também para usuários que não possuem conhecimentos técnicos porque, na maioria das vezes, os desenvolvedores vão pensar única e exclusivamente no funcionamento da aplicação, e não em como o usuário vai se comportar com ela.
  • Ser comunicativo. O analista QA não pode ser tímido, introvertido. A comunicação é essencial para conseguir os envolvidos entendam suas sugestões/críticas, e além disso, é essencial também para o engajamento entre os membros da equipe com o projeto.
  • Se atualizar. Na área de tecnologia, todos os dias surgem novas ferramentas, metodologias, aplicações, etc, desenvolvidas para aumentar a produtividade do trabalho de desenvolvedores e analistas. O QA precisa estar sempre pronto para aprender e se profissionalizar com essas mudanças. Quanto mais diversificado é o seu conhecimento com todo tipo de ferramenta e metodologia de teste/desenvolvimento, maior será sua valorização em seus times.

Como é o trabalho do QA nesse processo?

Para entender a participação do QA nesta metodologia, você precisa perceber que, por se tratar de entregas de resultados de curto prazo (normalmente duas semanas), o tempo para entendimento do negócio, validação de processos, execução de testes e demais atividades consequentemente também é muito menor. Por isso, a objetividade na realização destas e a comunicação entre desenvolvedor e analista QA é extremamente importante desde o início do ciclo de desenvolvimento.

Um dos desafios do QA está em exatamente conseguir aplicar seu conhecimento e experiência no pouco tempo que lhe é disponibilizado. No entanto, um desafio maior pode estar em se adaptar a metodologias como essa e a rotina dos desenvolvedores do time, sem deixar que a performance do seu trabalho seja prejudicada. É extremamente importante que o QA participe de todo o processo para entender o funcionamento do sistema, e não só encontre “erros”, mas sugira e participe nas decisões das resoluções destes, e é um diferencial que tenha conhecimentos técnicos na linguagem utilizada no projeto para isso.

Por isso, a minha visão sobre meu trabalho como QA mudou bastante desde que comecei a participar deste time. Comecei a perceber que, para conseguir acompanhar os resultados de alta performance, preciso me manter atualizado sobre processos de desenvolvimento X testes, inclusive não só como QA, mas também como desenvolvedor.

Após me engajar nessa ideia, eu fui apresentado a algumas metodologias de desenvolvimento, como TDD (Test Driven Development) e BDD (Behavior Driven Development), que mudaram minha visão sobre todo o ciclo de vida de um software, aumentando consideravelmente o meu potencial de participação desde o início desse ciclo.

Conclusão

Cada vez mais são criados processos e ferramentas para viabilizar melhorias nas fases do ciclo de vida de um software. Processos de automatização de testes, como o TDD e o BDD, são bons exemplos dessas mudanças. Cabe ao analista QA utilizar destas ferramentas, unidas ao seu conhecimento e experiência, para descobrir como otimizar o seu trabalho, inclusive em ambientes em que o “tempo disponível” não é o ideal para a prática de testes, afinal, raramente vai ser.

Conseguimos citar neste texto, alguns dos grandes desafios que um analista QA enfrenta todos os dias, principalmente em equipes que trabalham de forma parecida com o modelo “High Performance Team”. Mas definitivamente, seu maior desafio ainda está em “matar um leão por dia” para conseguir continuar provando o valor e a importância do seu trabalho, aumentando seu espaço e criando oportunidades de melhorias para si e para os times em que possa participar. Pois ainda há — e talvez sempre haverá — algum “recuo” de clientes quando se trata de disponibilizar tempo, o mais próximo possível do ideal, para a execução de testes em um projeto.

Concluindo, deixarei alguns links abaixo para que vocês possam ter informações mais detalhadas sobre as metodologias e ferramentas citadas nesse texto, inclusive, de outras fontes que não foram citadas, mas que acredito ser de grande valia para quem quer seguir a carreira de QA nos dias atuais.

Um grande abraço e até mais!

High Performance Team — FCamara, Formação e Consultoria
Equipes de alta performance para desenvolvimento de novas soluções inovadoras para sua empresa.www.fcamara.com.br

Thanks to Waldyr Felix (hide).

E ai,

o que você achou deste conteúdo? Conte nos comentários.

Entre para nossa lista e receba conteúdos exclusivos e com prioridade

Junte-se a mais de 7000 alunos