As diferenças do crowdsourced testing | Base2
Monday, 27 de March de 2017 Thursday, 7 de June de 2018 Contentools
Quando os fundadores do pioneiro serviço de crowdsourced testing Applause iniciaram a nova empresa, eles não queriam simplesmente fornecer uma forma mais barata ou mais rápida de realizar testes. Se a intenção era investir o tempo e energia para este empreendimento, eles queriam fornecer algo fundamentalmente diferente, algo que não existia. Algo único.
Existem dois problemas básicos com os testes tradicionais. Primeiro, o teste é baseado no que você espera que o usuário final faça com seu produto. Cada plano de teste já é escrito com base no caso de uso criado previamente. Mas se há uma coisa que a adoção de aplicativos móveis mostrou, é que os clientes quase nunca fazem o que você pensa.
Em segundo lugar, quando você realiza testes em laboratório, é praticamente impossível recriar todos os cenários e condições que seus usuários encontrarão em produção. Basta tentar construir um laboratório com uma quantidade pequena de diferentes telefones, dispositivos móveis e navegadores web existentes no mercado e ver que pode ser extremamente caro. Mas isso sequer mostra as complexidades das redes de telefonia, interações com sinal, sinais intermitentes ou condições geográficas e internacionais.
Nos últimos anos, empresas como o Google e o Facebook têm adotado ciclos rápidos para a liberação de novas versões e se tornando pioneiras ao deixar seus clientes realizar os seus testes. Ao liberar rapidamente novas versões e escutar ativamente seus usuários fanaticamente fiéis, elas se beneficiam de um feedback real e são capazes de entregar produtos que encantam seus usuários.
Mas esta abordagem não é inteiramente viável para empresas em setores como bancos, seguros e saúde. Esses aplicativos precisam ser cada vez mais "trabalhados" antes de serem lançados. Balanços errados, logins defeituosos e conselhos médicos imprecisos têm conseqüências sérias e responsabilidades reais.
Apresentando o crowdsourced testing
A idéia básica por trás do crowdsourced testing é unir uma comunidade diversificada de testadores freelancers para executar testes sob demanda. Assim como outros modelos de crowdsourced, isso permite que as organizações façam uso de uma força de trabalho potencialmente ociosa, ao mesmo tempo que oferecem aos trabalhadores flexibilidade para trabalhar onde e quando é conveniente.
Vários modelos de demanda e compensações surgiram com a adoção do crowdsourced testing. Alguns são completamente self-service, permitindo publicar oportunidades em um portal onde os participantes individuais busqum as oportunidades. Outros processos são mais detalhados, gerenciados por um recrutador com experiência em testes, ocorrendo uma verificação, ranqueamento, capacitação dos testadores e uma triagem com base nos bugs encontrados.
Outro benefício do crowdsourced testing é que eles vêm com uma variedade de dispositivos do mundo real. Simuladores e nuvens de dispositivos são bem-vindos, mas não podem efetivamente antecipar as complexidades introduzidas pela diminuição da duração da bateria, conflitos de software, sinais Wi-Fi deficientes e outros problemas encontrados em um ambiente real.
Esse formato é ideal se você precisa de testadores profissionais que sabem como seguir instruções, sabem onde procurar bugs relevantes e como documentar corretamente seus resultados.
O que procurar em um fornecedor de crowdsourced testing
Com uma variedade de soluções disponíveis, aqui estão algumas coisas que você deve considerar ao pensar em adotar crowdsourced testing:
Serviços gerenciados – seja para execução de testes ou outros serviços, são oferecidas soluções com uma variedade de métodos de acesso. Sistemas como Amazon's Mechanical Turk são extremamente auto-gerenciáveis. Ele fornece ferramentas para ofertas de tarefas. Para usar estes serviços aplicado aos testes, você precisa montar uma equipe, avaliar os testadores, verificar suas credenciais, etc
Outros serviços gerenciam tudo isso para você, fornecem líderes de equipe como parte da oferta e são gerenciados por um gerente de projeto profissional. Certamente, esses serviços adicionais apresentam um preço maior, mas se você estiver buscando algo realmente independente, vale a pena dar uma olhada neste tipo de serviço.
Equipe multidisciplinar – muitas vezes a estratégia de testes vai além dos testes funcionais e de regressão. O fornecedor oferece testes exploratórios? E quanto à usabilidade? Acessibilidade? Localização? Segurança? Eles podem ajudá-lo a criar casos de teste? Será que eles fazem uma triagem dos bugs antes de chegar até você? São apontados bugs duplicados?
Testadores experientes – os testadores possuem técnica ou fazem de qualquer maneira? Eles possuem condições de seguir as instruções? Eles são confiáveis? Há quanto tempo eles trabalham com o mesmo fornecedor do serviço? Posso interagir diretamente com eles? Posso pedir para que eles fiquem disponíveis para os próximos testes?
Acesso ilimitado – quando as pessoas têm acesso a ofertas de serviços de testes, eles associam um custo com a realização da atividade e conscientemente ou inconscientemente perguntam se "vale a pena". Modelos de serviço que oferecem acesso ilimitado à plataforma de testes promovem um ambiente livre de culpa. Mais testes são feitos e levam a melhores produtos.
Ser capaz de voltar a executar um teste, realizar ajustes nas condições de teste quando necessário, permite planos de teste mais informais. Não precisa ser perfeito na primeira vez. Isso evita atrasos na fase de definição dos testes.
Finalmente, iteração livre de culpa é uma ótima maneira de melhorar seu processo e fazer progressos consistentes.
Demanda flexível – o uso desse modelo de serviço deve permitir flexibilidade com altos e baixos imprevisíveis para a execução das diversas atividades de testes.
Resposta rápida – você deve ser capaz de iniciar um teste dentro de poucas horas depois do pedido, não dias ou semanas.
Grande comunidade – A escala global é o que faz o trabalho de crowdsourced testing funcionar. Você precisa de acesso a uma grande quantidade de testadores engajados. Eles precisam ser mantidos ocupados, compartilhando conhecimentos e também policiando uns aos outros.
Pode não se aplicar à minha empresa
Na empresa, inicialmente há grande preocupações em torno da idéia de usar crowdsourced testing. Normalmente, as preocupações giram em torno dos controles de segurança e de acesso, mas muitas vezes riscos, responsabilidade e preocupações com violação de IP também são mencionados. Empresas como MasterCard, Citibank, MLB e Johnson & Johnson têm utilizado crowdsourced testing em alguns casos; é claro que esses obstáculos podem ser superados.
Controles de acesso – cada empresa precisa avaliar seu controle de acesso individual e tolerância ao risco, mas o crowdsourced testing não precisa introduzir nada de novo nesta área. Tecnologias como VPNs, listas de controle de acesso, sensores biométricos existem para fornecer acesso controlado a sistemas e dados.
Dados confidenciais – certifique-se de que você tem um acordo válido de confidencialidade com seu fornecedor e que eles também tenham com seus testadores. Para projetos especiais, verifique se o fornecedor facilita um NDA direto entre você e os testadores. Ao limitar o time de testadores disponíveis, é possível verificar as referências pessoais. Se você tem preocupações sobre dados altamente sensíveis, certifique-se de que o fornecedor está disposto a ir além do necessário.
Equipe desconhecida – a equipe de testes não precisa ser anônima. Certifique-se de que seu fornecedor possui controle local para verificar a identidade dos testadores. Além disso, certifique-se de que existe um código de conduta para o time com padrões de comportamento bem estabelecidos. O ideal é que a própria comunidade mantenha os padrões, aproveitando a influência do grupo para proteger a própria reputação.
Massa de dados – se existe uma grande comunidade, é possível utilizá-la como fonte de dados para realizar os testes. Isso elimina a necessidade de utilizar massas de dados desconhecidas e evita o uso de informações fictícias. Essa massa de dados pode ser utilizada por todos que fazem parte do time.
Responsabilidade – se algo der errado, você não quer ir atrás dos testadores individualmente nos tribunais. Certifique-se de que seu fornecedor tem seguro e estrutura suficientes para responsabilidades jurídicas.
Aplicativos complexos – os clientes frequentemente comentam que seus aplicativos são complexos, com uma pequena base de clientes e com perfil específico. Mas quando você tem uma comunidade grande de testadores, é fácil encontrar profissionais com o perfil necessário.
Você também deve ser capaz de segmentar a comunidade em equipes treinadas para determinados aplicativos. A vantagem em ter um grande time de especialistas em determinadas áreas é que eles se apoiam. Se você perder uma ou duas pessoas de uma equipe de 30, os membros restantes podem treinar as novas pessoas. Se você perder uma ou duas pessoas de uma equipe de quatro, você está devastado.
Aversão ao risco – Neste momento, é um pouco tarde para esta preocupação. A Gartner reconhece que o crowdsourced testing tem um mercado viável e praticamente todas as grandes marcas de todos os segmentos da indústria estão usando este serviço.
Quando devo usar o crowdsourced testing
Nem todos os projetos podem se beneficiar do crowdsourced testing. Se você tem um aplicativo que é executado em um único ou em um pequeno número de plataformas e pode ser efetivamente testado em um laboratório remoto, crowdsourced testing não é apto para competir com recursos tradicionais de terceirização. Se seu aplicativo exige que você fique fisicamente instalado em uma localização corporativa, a fim de ser testado, então não é um bom candidato para o crowdsourced testing. Neste caso, você pode ter um ótimo candidato para automação. O fornecedor oferece serviços de automação com uso da nuvem?
Mas esse tipo de aplicação está se tornando cada vez mais raro. Portanto, se seu aplicativo precisa trabalhar em diversas plataformas, precisa ser executado em lojas, no metrô de Nova York ou nas montanhas do Tibete, você pode considerar o crowdsourced testing.