Participação do Time de Teste em Projetos Scrum

7,648 views

Published on

Published in: Technology, Business
2 Comments
6 Likes
Statistics
Notes
No Downloads
Views
Total views
7,648
On SlideShare
0
From Embeds
0
Number of Embeds
3,760
Actions
Shares
0
Downloads
236
Comments
2
Likes
6
Embeds 0
No embeds

No notes for slide

Participação do Time de Teste em Projetos Scrum

  1. 1. Papel do “Time de Teste” em Projetos SCRUM Gustavo Quezada
  2. 2. AGENDA <ul><li>Introdução e Visão Geral </li></ul><ul><li>SCRUM – Definição de Pronto </li></ul><ul><li>SCRUM – Visão do Produto </li></ul><ul><li>SCRUM – Product Backlog </li></ul><ul><li>SCRUM – Product Backlog Pre-Game </li></ul><ul><li>SCRUM – Estimativa do Product Backlog </li></ul><ul><li>SCRUM – Planning Meeting I e II </li></ul><ul><li>SCRUM – Execução da Sprint </li></ul><ul><li>SCRUM – Reunião Diária </li></ul><ul><li>SCRUM – Reunião de Revisão </li></ul><ul><li>SCRUM – Reunião de Retrospectiva </li></ul><ul><li>SCRUM – Não é a Bala de Prata </li></ul>
  3. 3. Liderança “Não Ágil” “ Yes, agile is about micromanagment, but it’s about the team micromanaging themselves and for their own benefit.” – Mike Cohn
  4. 4. Desenvolvimento Ágil - SCRUM Processos: Reunião de Planejamento, Retrospectiva, Reunião Diária, Planejamento de Release e Sprints, etc. Ferramentas: Quadro Kanban, Post-it, User Stories, BurnDown, etc. Pessoas: Product Owner, Scrum Master, Time, etc. Cultura: Time multi-disciplinar, Auto-gerenciamento, Valores, Envolvimento do cliente, Entrega freqüente, Liderança-colaboração, Respeito, etc. Vale lembrar que o Rational Unified Process na versão 7.5 está ainda mais Ágil e de forma ainda mais clara. O fundamento do RUP nessa versão se chama “ Agile Core ”
  5. 5. Papéis no Desenvolvimento Não Ágil x SCRUM Quem faz a diferença é o Time O Analista de Teste faz parte do Time Scrum, nunca se esqueça disso T ogether E veryone A chieves M ore Surpresa!!!! O Analista de Teste é o “ Time de Teste ” Agora é só trocar “Time de Teste” por “Analista de Teste” Papel do Analista de Teste em Projetos SCRUM
  6. 6. SCRUM – Visão Geral
  7. 7. SCRUM – Definição de Pronto <ul><ul><li>O Time sabe dizer se um determinado Item está Pronto ? </li></ul></ul><ul><ul><ul><li>Pronto = Codificação concluída? </li></ul></ul></ul><ul><ul><ul><li>Pronto = Codificação + Teste concluído? </li></ul></ul></ul><ul><ul><ul><li>Pronto = Codificação + Teste + Integração concluída? </li></ul></ul></ul><ul><ul><ul><li>Pronto = Codificação + Teste + Integração + Regressão concluída? </li></ul></ul></ul><ul><ul><ul><li>Pronto = Codificação + Teste + Integração + Regressão + Instalação concluída? </li></ul></ul></ul><ul><ul><li>O importante é evoluir o conceito de Pronto </li></ul></ul>
  8. 8. SCRUM – Definição de Pronto <ul><ul><li>Todas as estórias devem ser tratadas da mesma forma? </li></ul></ul><ul><ul><ul><li>Formulário de Cadastro de Cliente </li></ul></ul></ul><ul><ul><ul><ul><li>Neste caso o conceito de pronto pode ser Codificação + Teste concluído </li></ul></ul></ul></ul><ul><ul><ul><li>Manual de Operações </li></ul></ul></ul><ul><ul><ul><ul><li>Neste caso o conceito de pronto pode ser o aceite do documento pela equipe de operações </li></ul></ul></ul></ul>
  9. 9. SCRUM – Definição de Pronto <ul><li>Você se confunde freqüentemente quanto à definição de “pronto”? </li></ul><ul><ul><li>Não seria bom para o time ter uma definição de “pronto” para cada estória? </li></ul></ul><ul><li>Desenvolvimento está pronto! Suporte, Operação e Produção estão prontos? </li></ul>
  10. 10. SCRUM – Visão do Produto Processo de Levantamento de Requisitos e Formalização do Escopo
  11. 11. SCRUM – Visão do Produto <ul><li>Analista de Teste participa nesta fase (Chapéu de Líder de Teste) </li></ul><ul><ul><li>Colabora nas reuniões com o cliente para levantamento dos requisitos </li></ul></ul><ul><ul><li>Participa de sessões de Brainstorm </li></ul></ul><ul><ul><li>Foca na visão da qualidade do produto </li></ul></ul><ul><ul><li>Revisa a abordagem de teste </li></ul></ul><ul><ul><li>Identifica as habilidades de teste necessárias para o projeto </li></ul></ul><ul><li>Analista de Teste assume vários papéis, por exemplo: Líder, Arquiteto e Automatizador de Teste </li></ul><ul><li>O bom Analista de Teste é aquele que tem várias habilidades , incluindo conhecimento de programação </li></ul><ul><li>Não devemos separar desenvolvimento de teste </li></ul>
  12. 12. SCRUM – Product BackLog Processo de Elaboração das User Stories
  13. 13. SCRUM – Product BackLog <ul><li>Analista de Teste participa nesta fase (Chapéu de Líder de Teste) </li></ul><ul><ul><li>User Stories devem ser INVEST </li></ul></ul><ul><ul><ul><li>I ndependente: devem ser independentes, sempre que possível </li></ul></ul></ul><ul><ul><ul><li>N egociável: devem ser negociáveis </li></ul></ul></ul><ul><ul><ul><li>V aliosa: devem ser valiosas para o cliente e usuário agregando valor ao negócio </li></ul></ul></ul><ul><ul><ul><li>E stimável: devem ser passíveis de serem estimadas </li></ul></ul></ul><ul><ul><ul><li>S mall (pequena): não devem ser pequenas demais, nem grande demais </li></ul></ul></ul><ul><ul><ul><li>T estável: devem ser claras o suficiente para serem testadas </li></ul></ul></ul>
  14. 14. SCRUM – Product BackLog – Pré-Game Processo de Pré Game Não seria uma boa prática fazer um Pré Game antes de estimar o Product Backlog?
  15. 15. SCRUM – Product BackLog – Pré-Game <ul><li>Analsita de Teste participa nesta fase (Chapéu de Líder ou Arquiteto de Teste) </li></ul><ul><ul><li>Participa de discussões de arquitetura </li></ul></ul><ul><ul><li>Participa das definições de tecnologias utilizadas </li></ul></ul><ul><ul><li>Identifica as necessidades do ambiente de teste </li></ul></ul><ul><ul><li>Identifica restrições tecnológicas </li></ul></ul><ul><ul><li>Identifica ferramentas de teste necessárias para auxiliar na execução do projeto </li></ul></ul><ul><ul><li>Utiliza mapa mental (Mind Map) para auxiliar no entendimento das funcionalidades/requisitos </li></ul></ul><ul><ul><li>Identifica os “melhores” analistas de teste para o projeto em questão </li></ul></ul><ul><ul><li>Identifica a necessidade de suporte do time de suporte/operações </li></ul></ul>
  16. 16. SCRUM – Estimativa do Product BackLog <ul><li>Estimar é uma atividade do Time. Isso inclui o Analista de Teste, afinal, ele faz parte do Time. </li></ul><ul><li>O Scrum Master deve mediar o processo </li></ul><ul><li>O Product Owner deve estar disponível para esclarecer eventuais dúvidas </li></ul>
  17. 17. SCRUM – Estimativa do Product BackLog Processo de Estimativa de Itens do Product Backlog
  18. 18. SCRUM – Estimativa do Product BackLog <ul><li>Analista de Teste participa nesta fase (Chapéu de Líder ou Arquiteto de Teste) </li></ul><ul><ul><li>Utiliza mapa mental (Mind Map) </li></ul></ul><ul><ul><li>Utiliza matriz de teste por funcionalidade </li></ul></ul>
  19. 19. SCRUM – Estimativa do Product BackLog <ul><li>Mapa Mental </li></ul>
  20. 20. SCRUM – Estimativa do Product BackLog <ul><li>Matriz de Teste por Funcionalidade </li></ul>
  21. 21. SCRUM – Planning Meeting – Parte 1 Processo de Planejamento I
  22. 22. SCRUM – Planning Meeting – Parte 1 <ul><li>Analista de Teste participa nesta fase </li></ul><ul><ul><li>Ajuda a garantir que os itens selecionados estão de acordo com a meta do projeto e teste </li></ul></ul><ul><ul><li>Analisa indicadores de desempenho </li></ul></ul><ul><ul><li>Revisa a estimativa, caso necessário </li></ul></ul><ul><ul><li>Gerencia os riscos encontrados </li></ul></ul><ul><ul><li>Tira dúvidas com o Product Owner </li></ul></ul><ul><ul><li>Define quais serão os tipos de teste (Sistema, Aceitação, Regressão, Etc.) necessários </li></ul></ul>
  23. 23. SCRUM – Planning Meeting – Parte 2 Processo de Planejamento II
  24. 24. SCRUM – Planning Meeting – Parte 2 <ul><li>Analista de Teste participa nesta fase </li></ul><ul><ul><li>Define o nível de regressão de teste de acordo com a priorização dos itens/tarefas do Sprint Backlog </li></ul></ul><ul><ul><li>Atualiza a matriz de teste por funcionalidade </li></ul></ul><ul><ul><li>Atualiza o mapa mental </li></ul></ul>
  25. 25. SCRUM – Planning Meeting – Parte 2 <ul><li>Tendo as atividades da Sprint Backlog planejadas, prepara-se o quadro de acompanhamento </li></ul>
  26. 26. SCRUM – Planning Meeting – Parte 2 <ul><li>Altere o quadro com o planejamento da Sprint de acordo com a sua realidade e necessidade </li></ul>
  27. 27. SCRUM – Execução da Sprint
  28. 28. SCRUM – Execução da Sprint <ul><li>Q1 – São os testes que focam na arquitetura. A responsabilidade é dos desenvolvedores e os analistas de teste auxiliam na elaboração dos testes unitários automáticos </li></ul><ul><li>Q2 – São os testes que focam no negócio. A responsabilidade é dos analistas de teste em conjunto com outros envolvidos no projeto(clientes, usuários, etc.). Ajuda no entendimento das funcionalidades </li></ul><ul><li>Q3 – São os testes que focam no negócio e encontrar defeitos. A responsabilidade é dos analistas de teste </li></ul><ul><li>Q4 – São os testes que focam na arquitetura, estrutura do software. A responsabilidade é dos analistas de teste </li></ul>
  29. 29. SCRUM – Execução da Sprint <ul><li>Analista de Teste </li></ul><ul><ul><li>Monta e configura o ambiente e infra-estrutura de teste </li></ul></ul><ul><ul><li>Executa testes </li></ul></ul><ul><ul><li>Automatiza casos e tarefas de teste </li></ul></ul><ul><ul><li>Auxilia os desenvolvedores na elaboração dos testes unitários automáticos </li></ul></ul><ul><ul><li>Evidencia os resultados </li></ul></ul><ul><ul><li>Acompanha os defeitos encontrados </li></ul></ul><ul><ul><li>Desenvolve novas habilidades </li></ul></ul><ul><ul><li>O que o Analista de Teste faz quando não há nada para testar? </li></ul></ul><ul><ul><ul><li>Antes de fazer essa pergunta, pense se realmente o Analista de Teste fez tudo que ele precisa fazer. Algumas vezes, pensamos que está tudo “pronto” para iniciar a execução e na realidade não está. </li></ul></ul></ul><ul><ul><li>O Analista de Teste é “o cara que aprova”. Nada é considerado “pronto” em um Sprint até que ele diga que está </li></ul></ul><ul><ul><li>De olho na META da Sprint </li></ul></ul>
  30. 30. SCRUM – Execução da Sprint <ul><li>Gráfico Burndown: acompanhar o progresso da Sprint </li></ul><ul><li>Gráfico S-Curve: acompanhar o progresso da execução de teste da Sprint </li></ul>
  31. 31. SCRUM – Execução da Sprint Uma ferramenta de testes automatizados é a solução de todos os problemas de qualidade. Testabili-oquê? Você quer dizer que para criar testes automatizados será necessário modificar o sistema? Testes automatizados é moleza. Basta gravar a digitação e os cliques do mouse e depois executar o script. GERENTE SEM-NOÇÃO DESENVOLVEDOR ALOPRADO ANALISTA DE TESTE FORA DO CONTEXTO
  32. 32. SCRUM – Execução da Sprint Resultado do Teste <ul><li>Lembrete 1: Automação de testes não exclui o fator humano </li></ul><ul><li>Lembrete 2: Automação de testes não se limita apenas a testes automatizados </li></ul><ul><li>Geração da evidências de teste, pode ser automatizada? </li></ul>
  33. 33. SCRUM – Execução da Sprint Idealmente, no mundo perfeito do Scrum, você NÃO precisa de testes de aceitação , uma vez que as releases geradas ao final de cada Sprint já estão prontas para a produção Inicie a implementação de novas funcionalidades, mas priorize a resolução dos defeitos antigos em produção Não inicie a construção de coisas novas antes das coisas antigas estarem em produção. Será que isso funciona?
  34. 34. SCRUM – Reunião Diária
  35. 35. SCRUM – Reunião Diária <ul><li>Analista de Teste </li></ul><ul><ul><li>Relatório de teste atualizado </li></ul></ul><ul><ul><li>Evidência de teste atualizada </li></ul></ul><ul><ul><li>Gráfico S-Curve atualizado </li></ul></ul><ul><ul><li>Lista de defeitos atualizada </li></ul></ul><ul><ul><li>Lista de impedimentos atualizada </li></ul></ul><ul><ul><li>Quadro Kanban atualizado </li></ul></ul><ul><li>Reunião diária que dura mais do que 15 minutos vira Festa Rave </li></ul>
  36. 36. SCRUM – Reunião de Revisão
  37. 37. SCRUM – Reunião de Revisão <ul><li>Analista de Teste </li></ul><ul><ul><li>Será que o Analista de Teste não poderia organizar a apresentação do Sprint? </li></ul></ul><ul><ul><li>Será que o Analista de Teste não poderia mostrar as funcionalidades do sistema? </li></ul></ul>
  38. 38. SCRUM – Reunião de Retrospectiva
  39. 39. SCRUM – Reunião de Retrospectiva <ul><li>E o Analista de Teste continua lá... Você percebeu que o Analista de Teste pode, ou melhor, deve participar de todas as fases? Isso é válido para o TIME do Scrum. O Time deve participar. Não existe time de teste ou desenvolvimento no Scrum, existe Time do Scrum. </li></ul>
  40. 40. SCRUM – Reunião de Retrospectiva <ul><li>Alguns exemplos... </li></ul><ul><li>O que foi bom? </li></ul><ul><ul><li>Integração do time ; </li></ul></ul><ul><ul><li>Apoio de quem está desenvolvendo código durante a execução dos testes; </li></ul></ul><ul><ul><li>Apoio de quem está testando código durante a codificação; </li></ul></ul><ul><ul><li>Participação mais direta e ativa do profissional que está testando o software; </li></ul></ul><ul><ul><li>Profissionais que estão desenvolvendo código interessados em aprender sobre teste; </li></ul></ul><ul><ul><li>Profissionais que estão testando código interessados em aprender sobre programação; </li></ul></ul><ul><ul><li>Agilidade, interação com testes; </li></ul></ul><ul><ul><li>Acompanhamento de defeitos pelo profissional que está testando o software; </li></ul></ul><ul><ul><li>Analistas de Teste deixaram de ser reativos para serem pró-ativos </li></ul></ul><ul><ul><li>Pizza Marcante; </li></ul></ul><ul><ul><li>Lanche de Picanha (sabor &quot;novo&quot;). </li></ul></ul><ul><li>O que pode ser melhorado? </li></ul><ul><ul><li>Servidor de testes ter mais performance (CPU , Memória); </li></ul></ul><ul><ul><li>Padronizar o ambiente de desenvolvimento para estar alinhado com o ambiente de teste. Interessante isso, não? Geralmente é o contrário que acontece; </li></ul></ul><ul><ul><li>Conflitos entre bugs/correções e desenvolvimento de novas funcionalidades; </li></ul></ul><ul><ul><li>Despriorização de correção de bugs </li></ul></ul><ul><ul><li>Geração de evidências de teste muito trabalhosa (Atividade que pode ser automatizada). </li></ul></ul>
  41. 41. SCRUM – Não é a bala de prata Não olhe somente para os número, tente analisar e entendê-los Aprenda e melhore com os erros. Aprender com os acertos é fácil Automatize e reduza o envolvimento humano em atividades manuais repetitivas Entregue valor para o cliente, não entregue sonhos FAÇA A RODA GIRAR Utilize ferramentas existentes e tente adaptá-las a sua realidade Idéias! Sempre bem-vidas Priorize e corrija o que for necessário
  42. 42. MUITO OBRIGADO ! Gustavo Quezada E-mail: [email_address] Blog: http://gustavoquezada.blogspot.com/

×