Gestão de Testes e Defeitos Malba Jacob Prudente
Objetivos do treinamento 1. Expor os conceitos sobre Gestão de Testes; 2. Gestão de Testes na prática; 3. Expor os conceitos sobre Gestão de Defeitos; 4. Gestão de Defeitos na prática; 5. Coletar métricas de testes.
Gestão de Teste (IEEE 829)
Motivação e Necessidade
Teste na Organização 1. A Organização e a Equipe de Teste. 1.1. Os próprios desenvolvedores testam; 1.2. Equipe independente, mas que pertence à própria organização; 1.3. Equipe de testes terceirizada.
Teste na Organização 2. Equipe de Teste independente (Prós). 2.1. Não possui vícios dos desenvolvedores; 2.2. Imparcialidade com resultados; 2.3. Ponto de vista diferente da concepção do sistema.
Teste na Organização 3. Equipe de Teste independente (Contras) 3.1. Isolamento da equipe de desenvolvimento; 3.2. Gargalo na entrega (demora na entrega para teste); 3.3. Perda do senso de responsabilidade pelo desenvolvimento (deixa que eles testam!).
Organização do Teste 4. Papéis da equipe de teste. 4.1. Depende de como cada organização funciona; 4.2. Exemplos Gerente de Teste; Líder de Teste; Analista de Teste; Arquiteto de Teste; Automatizador; Testador.
Organização do Teste 5. Planejamento dos Testes. 5.1. Pode ser organizado por um ou mais Planos de Teste (IEEE 829) 5.2. Atividades de planejamento: Identificar escopo; Identificar integrações; Mapear riscos; Definir documentação; Alocar recursos; Definir prazos e métricas; etc.
5.3. Critérios de Entrada Ambiente apropriado; Documentação; Dados para teste, etc. 5.4. Critérios de Saída % cobertura de código/erro Custos Cronograma, etc. Organização do Teste 5.5. Abordagem para Estimativas de Teste: 5.5. Abordagem para Estimativas de Teste: Baseado em métricas de projetos anteriores (PF) ou valores típicos; Baseado por experiência dos executor ou especialistas;
Organização do Teste 5.6. Fatores que afetam a Estimativas de Teste: Característica do produto (documentação, tamanho, complexidade, aspectos de segurança, etc.); Característica do Processo de Desenvolvimento (ferramentas, processo, pessoas, cronograma, cultura, etc.); Característica do Teste (Qtde de defeitos, retrabalho, etc.)
Controle e Monitoração do Teste 6. Monitoração do Progresso do Teste 6.1. Casos de teste planejados; 6.2. Preparação de ambiente de teste; 6.3. Execução de teste; 6.4. Defeitos (encontrados x resolvidos); 6.5. Cobertura de requisitos, risco ou código; 6.6. Cronograma; 6.7. Reteste; 6.8. Etc.
Controle e Monitoração do Teste 7. Relatório de Teste 7.1. Ocorrência durante os testes; 7.2. Quando parar os testes; 7.3. Eficiência dos testes; 7.4. Eficácia dos testes.
Controle e Monitoração do Teste 8. Controle de Teste 8.1. Priorizar testes (risco, complexidade, etc.); 8.2. Tomar decisões (informações do monitoramento); 8.3. Cronograma (recursos disponíveis); 8.4. Definir critérios para reteste (correção de defeitos).
Gerenciamento de Configuração 9. Aplicação ao Teste 9.1. Certificação da versão correta a ser testada; 9.2. Garantia de estar utilizando a documentação correta; 9.3. Versionamento de seus artefatos de testes a serem gerados.
10. Riscos no projeto Riscos e Testes 10.1. Fatores organizacionais Falta de conhecimento da equipe; Não ter treinamentos adequados; Atitudes impróprias; Fatores políticos; 10.2. Fatores técnicos Definições incorretas de requisitos; % mínimo de conformidade dos requisitos; Qualidade dos testes, código, etc. 10.3. Problemas com fornecedor. Problemas contratuais; Falhas de terceiros.
11. Riscos do produto Riscos e Testes 11.1. Instabilidade; 11.2. Características pobres Funcionalidades; Modelagem de dados; Performance; Segurança; Usabilidade. 11.3. Constante evolução; 11.4. Necessidades conflitantes (diferentes tipos de clientes) 11.5. Migração de dados; 11.6. Conversão de dados; 11.7. Alta complexidade.
12. Minimizar o Risco Riscos e Testes 12.1. Identificar técnica adequada para o teste; 12.2. Definir o nível de detalhamento do testes; 12.3. Identificar e priorizar os testes mais críticos; 12.4. Mapear atividades extra teste que ajudem a reduzir riscos (treinamentos). 12.5. Avaliação periódica dos pontos de maior risco; 12.6. Identificar e negociar sobre os riscos mais importantes.
Necessidades 13. Necessidades para os testes 13.1. Ambiente propício para os testes; 13.2. Ferramentas adequadas; 13.3. Equipe especializada e devidamente treinada; 13.4. Processo de testes definido; 13.5. Definição de escopo; 13.6. Comunicação eficiente; 12.7. Apoio da alta gerência.
Gestão de Teste na prática (Testlink)
TestLink 1. Organização por projetos; 2. Controle de acessos de usuários; 3. Criação de suítes de testes; 4. Elaboração de casos de testes (cenários); 5. Procedimentos de teste (roteiros); 6. Vincular CT com requisitos; 7. Planejamento de Testes (seleção de CT); 8. Estipular execuções de testes (releases/builds); 9. Personalização de campos; 10.Acompanhamento da execução dos testes; 11.Integração com bugtrackers; 12.Extrair métricas de testes.
Gestão de Defeitos (IEEE 829 e 1044)
Objetivos 1. Auxiliar a equipe de desenvolvimento: 1.1. Identificação e isolamento dos defeitos; 1.2. Localização de áreas mais críticas do software; 1.3. Evitar a reincidência do defeito; 1.4. Indicação de necessidade de refatoração ou reconstrução; 1.5. Potencializa a atenção na hora de codificar.
Objetivos 2. Auxiliar aos líderes e gerentes: 2.1. Acompanhamento do progresso dos testes; 2.2. Indicadores de eficiência e eficácia das equipes de desenvolvimento e teste; 2.3. Identificar pontos que necessitam de maior investimento (treinamento, contratações, etc.) 2.4. Auxiliar em tomadas de decisões estratégicas.
Estruturar a Gestão dos Defeitos 3. Identificar as necessidades; 3.1. Definir informações a serem reportadas para os defeitos (IEEE 829); Data abertura, Data fechamento, Autor, Histórico; Status (aberto, resolvido, fechado, etc.) Descrição; Procedimentos; SO, Browser, Versão testada, Versão de correção; Causa; Impacto; Sugestão de solução *; Evidência; Solução adotada; Classificação do defeito (Efeito, Tipo, Origem e Fase).
Estruturar a Gestão dos Defeitos 3.2. Definir as áreas que serão envolvidas (papéis, atividades, responsabilidades, artefatos (i-o), etc.);
Estruturar a Gestão dos Defeitos 3.3. Definir a forma de classificação dos defeitos;
Estruturar a Gestão dos Defeitos 3.3. Definir a forma de classificação dos defeitos;
Estruturar a Gestão dos Defeitos 3.3. Definir a forma de classificação dos defeitos;
Estruturar a Gestão dos Defeitos 3.3. Definir a forma de classificação dos defeitos;
Estruturar a Gestão dos Defeitos 3.4. Definir fluxo de status dos defeitos durante o seu atendimento; Atribuir responsabilidade Atribuir responsabilidade (área ou profissional);
Estruturar a Gestão dos Defeitos 3.5. Definir o SLA (Service Level Assurance) para atendimento dos defeitos, conforme: Criticidade; Impacto; Força maior; etc.
Métricas de Defeito 4. Métricas (periodicidade definida conforme necessidade da empresa): Defeitos x Defeitos corrigidos; Defeitos por módulo; Defeitos por funcionalidade; Defeitos abertos: Cliente x Empresa; Tempo médio de correção de defeitos (por SLA); Defeitos por Tipo de Erro; Defeitos por Origem do Erro; Defeitos por Fase; Defeitos por Manifestação; Etc.
Ferramenta Gestão de Defeito 5. Ferramentas (opensource): Redmine; Mantis; Bugzilla; Track; Etc.
Gestão de Defeito na Prática (Redmine)
Aliando a Gestão de Teste e Defeito (Testlink x Redmine)
Redmine 1. Não é específicamente um bugtracker; 2. Controle por projeto; 3. Gerenciar versões do projeto; 4. Gerenciar acesso por usuário/projeto; 5. Definir tipos de tarefas; 6. Estabelecer fluxo de trabalho; 7. Personalizar informações para tarefas; 8. Extrair métricas diversas; 9. Medição de esforço: estimado x realizado; 10.Diversidade de plugins disponíveis; 11.Integração IDE (eclipse) e Testlink; 12.Gant, wiki, repositório, etc.
Dúvidas? Perguntas?
Obrigado! E-mail: malbajp@gmail.com.br malba@qualiis.com.br Celular: (62) 9181-2157