Destaques do World Quality Report 2020

Conhecendo a importância do World Quality Report, nós da Prime Control trouxemos os principais insights divulgados na edição de 2020. Confira!

Acesse a edição completa do World Quality Report 2019-20, clicando aqui.

O documento começa com algumas das reflexões feitas por Mark Buenen, líder global e responsável por digital assurance e engenharia de qualidade no Capgemini Group, uma das empresas responsáveis pela criação do World Quality Report.

A  necessidade de “orquestrar” as ações de Quality Assurance (QA) nos negócios está mais forte do que nunca. Isso se deve, entre outros fatores, às aceleradas mudanças nas demandas de negócios, à adoção de novas tecnologias, e ao cada vez mais rápido desenvolvimento de novas metodologias de trabalho.

Neste cenário, a disseminação da mentalidade ágil e das práticas de DevOps por organizações do mundo todo é uma das mudanças mais impactantes observadas. Há, pelo menos, três importantes consequências:

  • Essas organizações podem dispensar antigas estruturas e regras de operações.
  • Aumentar ao máximo a velocidade das entregas se torna uma possibilidade.
  • Equipes autônomas trabalhando na entrega de features têm mais liberdade para escolher abordagens e tecnologias.

Dispor apenas de soluções tecnológicas e habilidades tradicionais de testes já não seria o bastante no cenário atual: automação, data analytics e inteligência artificial também entram na jogada.

Raffi Margaliot, vice presidente sênior e gerente geral de entrega de aplicações da Micro Focus, outra empresa responsável pelo World Quality Report, também partilhou suas reflexões no início do documento, as quais resumimos na sequência.

Testes e automação permanecem fatores críticos para segurança e confiabilidade na entrega de softwares, mas trazem consigo custos e complexidades que desafiam mesmo as equipes mais sofisticadas.

Parte do desafio está no uso, ainda predominante, de ecossistemas de testes separados – os benefícios de ter ambientes conectados são evidenciados no estudo.

Garantir que a testagem e a automação estejam presentes ao longo de todo o ciclo de desenvolvimento seria uma das maneiras de prosperar no cenário atual.

Além disso, da mesma forma que Buenen, Margaliot também reforça a importância de habilidades que vão além daquelas tradicionalmente ligadas a testes de softwares – adquiri-las e desenvolvê-las trará grandes benefícios às equipes atuais.

Agile e DevOps: business drivers são mais importantes do que nunca

O principal desafio estratégico que as equipes de QA estão enfrentando na adoção de métodos ágeis e DevOps é encontrar as prioridades operacionais e de negócios: mais do que nunca, elas precisam garantir que o desenvolvimento de projetos esteja bem alinhado às necessidades do negócio e dos consumidores.

Ecossistemas inteligentes, conectados e orientados ao negócio são necessários, hoje, para se obter melhores resultados. É também crucial determinar os KPI (Key Performance Indicators, ou Indicadores-Chave de Performance) que definem o sucesso de iniciativas e agile e DevOps.

Executivos e líderes de equipes têm feito o possível para “reprogramar” seus colaboradores e também recrutar novos talentos, alinhando-se ao novo cenário.

A mudança provocada pelo ágil e pelo DevOps também influencia quando os testes e a QA ocorrem no ciclo de desenvolvimento: já não é necessariamente na fase final; podem (ou, talvez, devem) ocorrer em paralelo a ele.

Podemos esperar um aumento, nos próximos anos, na introdução de sistemas inteligentes e conectados que sejam flexíveis, autossustentáveis e que estejam no mesmo passo das demandas.

É necessário realizar testes em todo o ciclo de desenvolvimento, e não se pode perder o foco de validar o processo de negócio de ponta a ponta, conectando as capacidades individuais e os grupos de produtos. Quando os ecossistemas estiverem finalmente conectados, haverá escopo para QA contínua.

Inteligência Artificial: habilidades mais amplas são necessárias em QA

A correta implementação de IA na automação de testes pode torná-los muito mais eficientes, tornando-os capazes, entre outras coisas, de encontrar (de forma autônoma) problemas a serem solucionados; priorizar devidamente os problemas; e otimizar a estratégia para criar testes que sejam ao mesmo tempo previsíveis e adequados às necessidades.

Conhecimento em estatísticas, em matemática, em métricas que são específicas das estratégias e ambições do negócio – tudo isso deve fazer parte do arsenal dos responsáveis pela implementação de IA na QA e nos testes.

No relatório anterior, havia sido dito que “o uso de IA em testes deve demandar novas habilidades e criar novos papéis, como estrategistas de QA IA, cientistas de dados, e especialistas em IA para QA e equipes de testes”. Essas previsões, considerando a evolução do cenário, permanecem válidas.

Enquanto projetos de machine learning estão em desenvolvimento, a Capgemini não vê muitos sinais dessa abordagem sendo aplicada especificamente em testes. Contudo, em relação a IA, já se veem sinais de atividades nas organizações.

Ainda sobre esse assunto: conforme se familiarizam com o machine learning, as organizações irão cada vez mais entender suas diferenças em relação à IA. Verão que, para que os testes com IA sejam efetivos, é preciso dar aos sistemas acesso aos dados certos – algo que o machine learning pode proporcionar, processando informações em quantidade e, com isso, ajudando a identificar e otimizar os casos de teste.

Automação de testes: equipes precisam de um ambiente inteligente, comum e de ponta a ponta

A automação de testes já não é algo meramente “funcional”, a ser adotado por questões práticas: é uma necessidade que engloba todo o ciclo de desenvolvimento. Essa mudança se deve, em parte, à crescente adoção de DevOps.

Temos visto um crescimento dos MBT (Model-Based Testing, ou Testagem Baseada em Modelos) – o design de casos de testes automatizados, que levam a automação para além de seu escopo tradicional.

A maior parte dos frameworks não tem a cognição de que precisam para se auto-recuperar: são construídos para automatizar passos manuais, mas não são “inteligentes” o suficiente, sendo incapazes de reagir a mudanças, gerar dinamicamente os recursos de que precisam, ou entender e interpretar resultados. Essas limitações levam a um significativo esforço de manutenção.

E, embora compreensível, a adoção de uma multiplicidade de ferramentas de automação não necessariamente ajuda. Contudo, se essas ferramentas estiverem conectadas, unidas por um framework inteligente, muitos dos problemas mencionados anteriormente seriam resolvidos.

Em um cenário mais inteligente, casos de testes seriam capazes de “dialogar” uns com os outros, encontrar os dados necessários, e se consertar ou realizar ajustes.

Vimos também um crescimento significativo em ferramentas de automação OpenSource, em substituição de alguns produtos comerciais. Parte disso se deve a cortes de custos, mas também à flexibilidade, e à possibilidade de resolver problemas com a ajuda da comunidade Open Source.

Ao invés de pensar em automação de testes como uma capacidade, deveriam pensar como uma plataforma. Quando deixar de se tratar de uma série de ferramentas e ao invés disso se tornar um ambiente comum, que irá se tornar mais amplo, benefícios baseados no negócio serão devidamente priorizados.

TDM e TEM: progresso insuficiente

Percebemos pouco progresso nos quesitos de TDM (Test Data Management, ou Gerenciamento de Dados de Teste) e TEM (Test Environment Management, ou Gerenciamento de Ambientes de Teste).

20% dos entrevistados responderam que realizam testes em ambientes temporários baseados em nuvem, enquanto para 30% os testes são feitos em ambientes tradicionais e físicos.

Houve pouco movimento no teste funcional de core enterprise packages, como CRM, ERP e plataformas de sistema financeiro.

Uma hipótese levantada para tal “inércia” é a de que as pessoas tendem a se sentir mais confortáveis mantendo o status quo, deixando escapar os eventuais benefícios de uma mudança – curiosamente, porém, 60% dos entrevistados disseram que o maior desafio que encaram em relação a ambientes de teste é o custo (dois anos antes, era uma situação relatada por 39% dos entrevistados), ou seja, não trata-se de uma “insegurança” propriamente dita.

Uma segunda hipótese é a de que muitas pessoas dão menos valor a dados corporativos do que seria esperado. Embora a tendência para a transformação digital seja largamente reconhecida, o papel que os dados desempenham no negócio ainda não é totalmente entendido pelas equipes de testes e QA.

A terceira possível razão para a inércia é a de que é difícil manter uma visão compreensiva e ampla do negócio quando há muitos dados e muitos sistemas em mudança – que, de certa forma, tende a elevar os riscos envolvidos.

Contudo, o status quo é falsamente atraente e adotar novas abordagens em relação a ambientes de teste pode justamente ajudar a mitigar problemas de volume de trabalho; elevar a qualidade; e gerenciar custos.

Compliance e risco de segurança: ainda a parte mais importante da estratégia de TI

As respostas dos entrevistados sobre os principais desafios envolvendo a segurança dos dados das aplicações podem ser divididas em três categorias: a arquitetura da segurança de dados; os princípios e políticas envolvendo esse dados; e as práticas de segurança.

Por trás das dificuldades envolvendo a terceira categoria está a questão das capacidades dos membros das equipes.

Garantir a segurança de desenvolvimento, QA e testes sempre será um trabalho em andamento, pois os riscos continuarão evoluindo e, junto com eles, os ambientes regulatórios para se proteger.

Contenção de gastos e eficiência: orçamentos de testes e QA diminuem – mas isso pode ser porque a QA está se tornando parte do mainstream

Em 2015, os respondentes do WQR disseram que mais de um terço (35%) de seus orçamentos de TI era direcionado para testagem e QA. Desde então, a porcentagem tem caído, e neste ano está no patamar de 23%. Há uma série de fatores envolvidos:

  • O crescimento da computação em nuvem influenciou a maneira como as empresas se estruturam, e elevou sua eficiência.
  • O aumento no uso de virtualização tem um efeito similar ao da computação em nuvem.
  • A crescente adoção de abordagem ágil e práticas de DevOps está se tornando mais integral aos processos de desenvolvimento, diminuindo o time-to-market e elevando o custo-benefício.
  • A automação de testes ajuda a priorizar os passos de desenvolvimento e aumenta o throughput volume.

Em relação ao último item, contudo, a pesquisa mostrou que a automação para fins de testagem não vem crescendo como se antecipava. É uma pena, pois uma automação inteligente pode ajudar a encontrar e solucionar erros rapidamente, além de dar base para que equipes combinadas de teste e desenvolvimento decidam quais mudanças darão os melhores e mais rápidos retornos.

A busca por qualidade está deixando de ser considerada tarefa de uma área de atividade específica.

Recomendações

Construa ecossistemas de testes conectados, empregando analytics inteligentes

As tendências gerais a respeito de QA que foram observadas no relatório este ano incluem:

  • uma crescente abordagem guiada pelo negócio;
  • um aumento na demanda por testagem de ponta a ponta;
  • e um crescimento no interesse por inteligência artificial.

Acreditamos que uma das melhores maneiras de suprir as necessidades implícitas em cada uma dessas tendências é criar uma abordagem inteligente, integrada e holística.

Por definição, um ecossistema de testes conectado pode oferecer monitoramento e entrega de desenvolvimentos de sistema que sejam contínuos.

Se esse ecossistema também for inteligente, pode-se usar analytics inteligentes para detectar erros em tempo real, e simultaneamente gerar dados de teste de forma automática. Também pode incorporar scripts de testes que sejam inteligentes e adaptados.

O ecossistema inteligente e compreensivo deve estar à altura dos propósitos – antenado aos fatores individuais que definem o sucesso para a organização.

Expanda os skillsets ligados a IA nas equipes de testes, incluindo ciência de dados, estatísticas, matemática e mais

A pesquisa deste ano mostra que as pessoas estão mais atentas do que nunca à necessidade de expandir o leque de habilidades disponíveis às equipes de testes e QA.

As habilidades centrais devem ser mantidas, mas também complementadas por capacidade em automação, ambientes de testes e dados de testes, além de  software development engineering testing (S-DET).

Soft skills também são mais necessárias do que antes, para que se possa colaborar mais com o negócio e também garantir que os testes e a QA trarão resultados à altura.

A expansão da IA nos negócios cria duas necessidades: alcançar desenvolvimentos inteligentes para trazer vantagens estratégicas e táticas para o negócio; e usar IA especificamente em testagem e QA.

Para atingir essas necessidades, a organização deve atrair, reter e desenvolver o conhecimento necessário. Isso inclui habilidades em ciência de dados, análise estatística, matemática aplicada, e um entendimento de processos cognitivos.

Eleve a capacidade de percepção e visibilidade de ambientes de teste

As organizações precisam tornar mais visíveis as questões fundamentais dos ambientes de testes – mapeamentos, pontos de integração e configurações que irão torná-los adequados aos propósitos. A falta de progresso nessas questões tornou mais lenta a adoção não apenas de ambientes de teste baseados em nuvem, mas também de ambientes de teste virtualizados, compartimentados e temporários (mas não baseados em nuvem).

Recomendamos que as organizações deem mais ênfase à abordagem baseada em nuvem. Adotar tal abordagem faria com que fosse mais fácil ver se os ambientes de teste estão disponíveis ou não – facilitando a coordenação e o gerenciamento, o que por sua vez torna as operações mais custo-efetivas.

Recomendamos também que o conhecimento sobre os ambientes de teste seja disseminado na organização de maneira mais ampla, sem se restringir à testagem e QA.

Adote uma abordagem de centro de excelência para gerenciamento de dados de teste

Ao criar um centro de excelência dedicado ao gerenciamento de dados, as organizações podem criar e manter dados de teste em tempo real de sistemas de produção, garantir sua consistência, e entregá-los com uma regularidade as-a-service para as equipes de scrum que precisarem.

Reimagine a automação de testes como uma plataforma

A automação de testes está crescendo em popularidade. No momento, porém, não está entregando os resultados que se espera. Em parte, isso ocorre porque tecnologias inteligentes ainda não entregam as análises inteligentes ou adaptações em tempo real que trarão uma grande mudança de performance.

Outro fator é o de que a automação ainda é díspar, com uma multiplicidade de ferramentas que, de maneira coletiva ou individual, não está resolvendo os desafios das organizações.

Recomendamos que as organizações enxerguem a automação de testes mais como uma plataforma do que como uma capacidade: ela deve ser vista como uma ampla arena compartilhada por ferramentas e funções que se unem para cumprir um propósito coletivo.

Aprimore sua abordagem em segurança

É fato que a tecnologia se desenvolve rápido e que as ameaças à segurança crescem como resultado – e, também, as expectativas externas tanto de corpos regulatórios quanto de consumidores.

Para chegar a outro nível no quesito segurança, recomendamos que as equipes de testagem e QA promovam maior automação nessa área. Assim, mais testes podem ser conduzidos, e com maior velocidade.

Por razões similares, também recomendamos que mais testes de segurança sejam movidos para ambientes de testes baseados em nuvem. É uma abordagem mais rápida, flexível e iterativa.

Outra recomendação é que segurança e testagem de segurança sejam fatores presentes nos primeiros estágios do ciclo de desenvolvimento do design.

Acesse a edição completa do World Quality Report 2019-20, clicando aqui.

Newsletter

Assine nossa newsletter e seja avisado sobre novos artigos, cases, eventos e muito mais.

E-books e Relatórios

Conheça nossa base de ebooks, artigos, relatórios e cases. Aprenda sobre as boas práticas de testes, qualidade de software e muito mais.

Tudo disponível para download gratuitamente.