A entrega de software ao high-standard é difícil. As empresas precisam acelerar sua rapidez e qualidade de entrega para se manterem competitivas e desenvolver ofertas digitais valiosas.
O Quality Engineering é o paradigma para permitir que as empresas respondam a esses desafios, restringindo o sistema geral aos requisitos de Qualidade. Nesta entrevista, damos um passo atrás para ter uma visão geral da qualidade e dos testes de software.
Com sua experiência no setor, Lalitkumar compartilha um SWOT sobre Qualidade de Software e uma metodologia que ele construiu ao longo dos anos para entregar com mais rapidez e qualidade, “Quality-Conscious Software Delivery” (QCSD).
Cobrimos os seguintes pontos:
- A principal tipologia dos problemas enfrentados com a Qualidade
- Os pontos fortes e fracos da Qualidade e Teste de Software
- As oportunidades para implementar o Quality-Conscious
- As ameaças para a evolução da Qualidade nas organizações
- As práticas valiosas para implementar a Qualidade
- Feedback da Definição da Quality Engineering
Junte-se à QE Unit para aceder a conteúdo exclusivo e regular da comunidade.
Sobre Lalitkumar Bhamare
Lalit passou 3 anos no Barclays Investment Bank como Analista de Teste Sênior e liderou seu L&D CoP (para testes), principalmente responsável por implementar as práticas de teste mais recentes no Barclays, como parte do Innov8 (um programa para toda a organização).
No relacionamento TCS-Cisco, ele também trabalhou como fundador e diretor do Grupo de Excelência em Tecnologia para Testadores. Ele trabalhou como consultor sob demanda para várias equipes de projeto no grupo Barclays, especialmente para implementar CDT em projetos de teste, entre outras coisas.
Lalit acredita que sua conexão com a comunidade global de testes e suas experiências de voluntariado o ajudam a contribuir com as organizações para as quais trabalha. Isso o ajudou a contribuir para a construção de uma cultura de teste intelectual em seu local de trabalho.
Ele é um testador qualificado, gerente de teste, instrutor, treinador e consultor sob demanda, tudo reunido em um único perfil. Seu talento criativo (que reflete suas atividades) é uma habilidade adicional que o ajuda a comunicar ideias com eficácia.
Pode segui-lo no Twitter @Lalitbhamare e Linkedin.
Antoine: Pode começar por-se apresentar?
Estou trabalhando na Alemanha para a XING, a plataforma de networking para profissionais. Tenho publicado a revista Tea Time for Testers nos últimos 10 anos. Também sou Diretor da Association for Software Testing (AST), ao mesmo tempo que ajudo algumas startups de teste. Eu também publico o relatório State of Testing. Toda a minha carreira profissional é dedicada à qualidade e teste de software.
Antoine: Com base em sua experiência no setor, quais são as principais tipologias de problemas que aborda?
Um grande problema que encontro é a compreensão da Qualidade em si. Freqüentemente, é dado como certo ou considerado uma fase particular dos projetos. É muito importante esclarecer que a qualidade não pode ser considerada uma parte secundária. A qualidade tem que fazer parte do produto com a consciência da qualidade e a mentalidade da equipe, não importa em que estágio da entrega do software esteja.
Eu acredito que esse problema é generalizado. Eu o encontro com várias funções em software: desenvolvedor, testadores, produto, liderança, etc.
Antoine: Isso provavelmente significa que a comunicação é uma habilidade essencial para os atores da Qualidade?
Na verdade, temos uma responsabilidade real na articulação e comunicação do valor do teste e da qualidade, que são coisas diferentes. Precisamos ajudar a liderança a compreender as implicações e tomar decisões nesses domínios. Existe uma relação indireta entre eles e o produto que entregaremos no final. Se estiver preocupado com a qualidade, precisa articular corretamente o valor do teste.
Antoine: Na sua perspectiva, quais são os pontos fortes e fracos da Qualidade?
Acho que a força é reconhecer que existe um problema. Na maioria das vezes, as pessoas dentro de uma organização nem mesmo percebem que existe uma. Consequentemente, eles não sabem o que resolver e não estão agindo de acordo com as prioridades certas. Eles podem perder um tempo valioso apenas corrigindo os sintomas, em vez das causas básicas. Assim que uma vez o problema bem identificado, podemos avançar para alinhar as ações corretas.
Em termos de fraquezas, a falta de compreensão compartilhada e responsabilidade pela qualidade. A falta de responsabilidade é em parte consequência de um entendimento pouco claro. Ouvimos regularmente falar de uma responsabilidade de toda a equipa pela qualidade, mas isso ainda não é um padrão na realidade. O teste agora está se expandindo mais rapidamente, mas deveria ter sido feito antes.
Essa noção de que as responsabilidades de qualidade e teste são para os testadores está errada. É necessária uma abordagem de equipe inteira para a qualidade, distribuindo responsabilidades específicas de uma cultura de qualidade comum, incluindo as partes interessadas. As melhorias na tecnologia são inúteis até que esse entendimento e responsabilidade compartilhados pela qualidade sejam resolvidos.
Antoine: Vê mais contextos em que essas fraquezas são superadas?
Tenho promovido isso com o workshop Whole Team Quality e o framework Quality-Conscious Software Delivery (QCSD). Acredito que é possível que cada membro da equipe faça o seu trabalho com mais qualidade. No final do dia, as mudanças acumuladas e a colaboração fazem uma grande diferença.
Na verdade, não precisamos de ferramentas sofisticadas ou métodos complicados. As pessoas só precisam saber como podem contribuir para uma definição compartilhada de qualidade por meio de seu trabalho. Não precisamos fazer muito “trabalho extra” para obter qualidade. Este não é um extra. É uma exigência do trabalho que temos que fazer, desde o início.
Antoine: Quais oportunidades identifica para implementar este paradigma de Qualidade?
Um pré-requisito é que as pessoas estejam dispostas a fazer um esforço e abertas para ver como fazer as coisas de forma diferente. Muitas oportunidades estão disponíveis sem a necessidade de mais recursos ou ferramentas. A maioria deles são acessíveis com abertura e treinamento. No final, evitamos muitas tarefas de patchwork. É uma questão de mentalidade.
Antoine: Pelo contrário, que ameaças identifica?
Gostaria de mencionar a mensagem compartilhada no artigo “We need to talk about testing” por Daniel Terhorst-North, o criador do Behavior Driven Development (BDD). Ele reconhece que temos que falar sobre teste de software, pois ele foi deixado de lado na indústria de software nos últimos 10 anos. Eu acredito que este tem sido um problema central em nosso setor e precisa mudar.
Ainda há uma maioria de profissionais que não tem clareza sobre o que são qualidade e testes significativos. Uma armadilha recorrente é considerar o teste como “automatizar tudo”. “Fazer tudo por meio de testes unitários”. Ao aplicar esse raciocínio, atalhos são tomados como “não precisamos de testadores” ou “não precisamos de pessoas afetadas pela qualidade”. Essa falta cultural, ignorância e desconhecimento são as ameaças mais significativas à Qualidade de Software.
“Há uma necessidade real de gestão, mudança e evolução da percepção de qualidade para todos os atores.”
Lalitkumar Bhamare
Antoine: Quais práticas considerou valiosas para a qualidade?
O primeiro é não dizer às pessoas o que fazer. Em vez disso, mostre e compartilhe com eles como faz as coisas. Eles irão captar seus raciocínios, idéias e expectativas mais rapidamente dessa forma. Não podemos sempre ser a pessoa que define e coordena ações específicas da equipe. É preciso liderar de uma forma que permita que as próprias pessoas promovam mudanças valiosas. Devemos estar com eles, sentar e agir para que tenham sucesso em sua jornada.
Esta é minha maior lição até agora.
Antoine: Interessante, isso significa que uma mentalidade de crescimento, abertura e habilidades de aprendizagem é fundamental para formar uma equipe?
Sim, porque o fracasso também é um critério essencial. As pessoas precisam aceitar o fracasso sem tomar as coisas para si. Em alguns casos, precisa permitir que as pessoas tentem aprender com seus fracassos. Eles aprenderão como fazer melhor não apenas neste caso, mas em casos maiores. Esta é uma forma de ajudá-los a ter sucesso e aprender a mudar a maneira como realizam certas atividades.
Antoine: Qual seria a principal conclusão da sua visão de Qualidade, QCSD e as prioridades que identificamos?
Não devemos focar na Qualidade apenas em termos do produto; essa é apenas uma noção de qualidade que entra em jogo. De uma abordagem completa à qualidade, precisamos considerar as pessoas, o projeto e suas interações. Existe uma relação profunda entre esses 3 eixos, afetando-se mutuamente. Precisamos melhorar os 3 aspectos de produto, pessoas e projeto para ter sucesso na entrega de software.
Antoine: Parece uma tendência das práticas de engenharia, não apenas de software, de se concentrar demais no aspecto do produto. Podemos facilmente perder o foco na perspectiva geral dos usuários, outros atores e atividades.
Aproveito a oportunidade desta entrevista para obter seu feedback sobre uma definição de Quality Engineering que estamos construindo na QE Unit. “O Quality Engineering restringe todas as atividades do ciclo de vida do software para fornecer continuamente uma experiência valiosa para seus utilizadores.“
Qual é o seu feedback? Encontra vínculos significativos e concretos com sua experiência, trabalho e dentro do ecossistema?
Isso ressoa muito. Acredito que não são apenas os utilizadores, mas também existem outros atores que eu identificaria como stakeholders. Eu provavelmente reformularia dessa forma, pois eles precisam definir e alinhar o valor, por exemplo. Super iniciativa e estou ansioso pelo livro.
Antoine: Para terminar com uma nota final, há algum conteúdo que gostaria de compartilhar ou inspirar?
Escrevi um blog sobre o Quality Conscious Software Delivery, com várias posts e conteúdos sobre os workshops e palestras. Eu ajudo as pessoas a entender os conceitos e compartilhar como implementar a estrutura em seu contexto.
Antoine: Muito obrigado Lalit, foi um prazer tê-lo nesta entrevista. Estamos ansiosos para a próxima edição trimestral da Team Time para Testers 🙂
As principais conclusões através do Framework do Quality Engineering, MAMOS:
- Os Methods começam pelo alinhamento da Qualidade do Produto, Pessoas e Projeto.
- A Architecture da Qualidade com a tecnologia não é necessariamente a prioridade
- A Organization de Qualidade e Testes é uma abordagem de equipe inteira
- O Management tem a responsabilidade de gerar valor escalonável entre as equipes.
- As Skills de abertura, liderança e mentalidade de crescimento são essenciais