Com o advento das técnicas de desenvolvimento ágil, a profissionalização no gerenciamento de projetos e a especialização dos papéis envolvidos no processo de desenvolvimento de software como um todo, a garantia da qualidade (Quality Assurance ou simplesmente QA) passou a ter um maior destaque e ser percebida com mais importância. Contratos de desenvolvimento passaram a especificar parâmetros claros e objetivos para verificação da qualidade dos produtos, e muitas vezes detalhando os processos envolvidos no controle da qualidade. Essas movimentações têm proporcionado melhorias significativas na qualidade dos produtos finais, mas a separação dos membros da equipe responsáveis pelos processos de qualidade dos demais integrantes gera alguns riscos para os projetos, como veremos a seguir.
O Manifesto Ágil
O Manifesto Ágil trouxe algumas mudanças de paradigma em relação aos projetos de desenvolvimento de software. Ao perceber que existe mais valor nos resultados do que nos processos, o Manifesto Ágil dá maior ênfase em aspectos do projeto que se relacionam de forma mais direta ao valor entregue ao cliente. Dessa forma, prioriza, por exemplo, responder a mudanças para que seja entregue um software funcionando, que satisfaça o cliente, e de preferência antes mesmo do prazo previsto. Enquanto os resultados de metodologias de desenvolvimento ágil são notáveis, podem surgir conflitos com disciplinas mais tradicionais do desenvolvimento, principalmente se houver a separação das equipes.
Através de uma comunicação aberta e direta, que valoriza a interação entre as pessoas, as técnicas de desenvolvimento ágil conseguem produzir bons resultados. Mas quando processos que fazem parte do desenvolvimento, e em particular a garantia da qualidade, operam em separado, sem os mesmos compromissos com os resultados e a satisfação do cliente, pode surgir um verdadeiro gargalo, com o potencial de prejudicar os efeitos positivos normalmente observados no ambiente de desenvolvimento ágil.
Esse tipo de situação, se não tratada, pode gerar conflitos na equipe, fazendo com que os desenvolvedores deixem de perceber o enorme valor dos processos de QA, e que, por sua vez, os analistas de QA prejudiquem o bom andamento do trabalho, ao operar em dissonância dos princípios do Manifesto Ágil.
Compreensão mútua
Com o tempo, tem-se percebido que uma solução para esse problema é que os desenvolvedores e analistas de QA busquem uma compreensão mútua dos processos de trabalho uns dos outros. Dessa forma, os desenvolvedores passam a compreender a importância e a dinâmica do trabalho dos analistas de QA e vice-versa, fazendo com que operem em harmonia e focados nos mesmos objetivos de geração de valor e satisfação do cliente. Recomenda-se, inclusive, que os analistas de QA recebam treinamentos formais na metodologia ágil. Analogamente, como já se observa hoje em muitas equipes de desenvolvimento ágil, a qualidade e os testes devem ser bem recebidos pelos desenvolvedores. A boa integração entre essas equipes faz com que os importantes conhecimentos nas áreas tradicionais da qualidade sejam preservados e gerem ainda mais valor ao cliente através de produtos com bom desempenho, estáveis e sem erros.
Novas atribuições
Em um cenário de desenvolvimento ágil, o analista de QA passa até mesmo a ter um novo papel e responsabilidades, passando a auxiliar o cliente na homologação de testes funcionais. Adicionalmente, deve integrar-se ao time de desenvolvimento, descrevendo os testes de aceitação e auxiliando em sua automatização. O valor gerado por um processo afinado de garantia de qualidade é extremamente importante para o resultado final, e a integração do analista de qualidade à equipe de desenvolvimento é instrumental na realização desse objetivo.
Melhoria contínua
Como parte da busca pela melhoria contínua em QA, a seleção por ferramentas que atendam às necessidades do analista de qualidade e ao mesmo tempo estejam alinhadas com os recursos utilizados no desenvolvimento é um caminho de sucesso. Essa escolha permite a aproximação do trabalho da equipe de desenvolvimento ao do analista de QA, trazendo melhoras no desempenho e desempenho ao mesmo tempo em que proporciona um melhor controle de qualidade do código desenvolvido.
A Supero oferece um conjunto de soluções para análise de programas ABAP, que provê a unificação e a automatização de tarefas de inspeção de código fonte, permitindo a geração de indicadores de desempenho e fornecendo feedback automatizado. O resultado é um trabalho mais integrado entre desenvolvimento e QA, com reflexos visíveis nos prazos de entrega e na qualidade das entregas, gerando maior satisfação aos seus clientes. Conheça mais sobre a Supero e suas soluções em www.supero.com.br e saiba também como alcançar esses resultados.