Teste de Software. Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br



Documentos relacionados
Software é um produto conceitual e lógico. Software é mais complexo do que qualquer outro produto construídos por seres humanos

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

A Disciplina Gerência de Projetos

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

F.1 Gerenciamento da integração do projeto

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Metodologia de Gerenciamento de Projetos da Justiça Federal

MASTER IN PROJECT MANAGEMENT

Fundamentos em Teste de Software. Vinicius V. Pessoni

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

Universidade Paulista

AVALIAÇÃO QUALITATIVA E QUANTITATIVA DO QUADRO DE SERVIDORES DA COTEC

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Análise de Pontos por Função

ENGENHARIA DE SOFTWARE I

PLANOS DE CONTINGÊNCIAS

TRIBUNAL REGIONAL FEDERAL DA 2ª REGIÃO Secretaria de Tecnologia da Informação

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

DESENVOLVER SISTEMAS 1 OBJETIVO

Sistemas de Informação I

CHECK - LIST - ISO 9001:2000

Gerenciamento de Riscos do Projeto Eventos Adversos

Abordagens. Ao redor do computador. Ao redor do computador. Auditoria de Sistemas de Informação. Everson Santos Araujo

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

GOVERNO DO ESTADO DO PARÁ MINISTÉRIO PÚBLICO DE CONTAS DOS MUNICÍPIOS DO ESTADO DO PARÁ MPCM CONCURSO PÚBLICO N.º 01/2015

ERP Enterprise Resource Planning

Roteiro SENAC. Análise de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos

Gerenciamento de Projetos Modulo III Grupo de Processos

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

Basic Exchange System

PROJETO DE FÁBRICA DE SOFTWARE

Gerenciamento de Problemas

MUDANÇAS NA ISO 9001: A VERSÃO 2015

Gerenciamento de software como ativo de automação industrial

Políticas de Qualidade em TI

CHECK LIST DE AVALIAÇÃO DE FORNECEDORES Divisão:

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

ATENÇÃO: A cópia impressa a partir da intranet é cópia não controlada.

Fundamentos de Teste de Software

Importância do GED. Implantação de um Sistema de GED

ADMINISTRAÇÃO DE SISTEMAS DE INFORMAÇÃO (AULA 03)

Termo de Abertura Sistema de Vendas de Pizzas Online (PizzaWeb) - Versão 1.0

Gerenciamento de Incidentes

IMPLANTAÇÃO DE PROJETOS

PROCEDIMENTO DA QUALIDADE

PMBOK e Cobit - Uma Experiência na Reformulação de Sistemas em Angola Marcelo Etcheverry Torres,PMP,Cobit)

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Proposta Técnica. Desenvolvimento de software QUICKSITE

VIRNA. Virtualizador Nacional

Gerenciamento de Projeto: Monitorando e Controlando o Projeto II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Lista de verificação (Check list) para planejamento e execução de Projetos

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

GARANTIA DA QUALIDADE DE SOFTWARE

Gestão de defeito: Descreva! Sumário. Introdução. Problema. Justificativa. Metodologia. Referencial teórico. Demonstração do Mantis.

IV PLANO DE GERENCIAMENTO DE TEMPO

ATO Nº 233/2013. A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA 7ª REGIÃO, no uso de suas atribuições legais e regimentais,

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE CONFIGURAÇÃO

Sistema de Gestão da Qualidade

MDMS-ANAC. Metodologia de Desenvolvimento e Manutenção de Sistemas da ANAC. Superintendência de Tecnologia da Informação - STI

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

PROJETO NOVAS FRONTEIRAS. Descrição dos processos de gerenciamento da qualidade

Atividade da gerência da qualidade

Gerenciamento de Projetos

SLA - Service Level Agreement (Acordo de Nível de Serviço) Gerenciamento de Estoque

Política de Gerenciamento do Risco Operacional Banco Opportunity e Opportunity DTVM Março/2015

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

UNIP Ciência da Computação / Sistemas de Informação TED I - Orientações Gerais para Elaboração dos Documentos

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9

Metodologia e Gerenciamento do Projeto na Fábrica de Software

Tipos de teste de software

Sistemas Distribuídos

CONCEPCIONISTAS MISSIONÁRIAS DO ENSINO SETOR: TECNOLOGIA MANUAL DE PROCESSOS

Gerenciamento de Serviços de TI com base na ITIL

II. FASE DE PLANEJAMENTO define a maturidade do entendimento do escopo e, o desenvolvimento do Plano do Projeto PP.

Gerenciamento de Projetos Modulo VIII Riscos

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Metodologia de Desenvolvimento de Sistemas

Plano de Trabalho Docente Ensino Técnico

PLANO DE GERANCIAMENTO DO RELEASE Release:

O padrão de gerenciamento de projetos

A ESCOLHA DE SISTEMA PARA AUTOMAÇÃO DE BIBLIOTECAS. A decisão de automatizar

ITIL - Information Technology Infraestructure Library

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

PÁGINA 4 ITIL V.2 & ITIL V.3

Módulo 8 Gerenciamento de Nível de Serviço

Transcrição:

Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br Engenharia de Software Conceitos Básicos: Evolução Os primeiros anos (1950 a início dos 60) Aplicações científicas e de engenharia A segunda era (1960 a meados de 80) Aplicações comerciais em grande-porte (sistemas de informação BD) A terceira era (meados de 70 e década de 80) Aplicativos pessoais em microcomputadores A quarta era (meados de 80 a meados de 90) Aplicativos com Interfaces Gráficas Redes e Arquitetura Cliente-Servidor A quinta era (de meados de 90 a???) Software Distribuídos,Internet, Groupwares e Intranets Sexta era?? Computação em Nuvens, Móvel e Ubíqua 1

Engenharia de Software Conceitos Básicos: Evolução Desafios para a Indústria de Software Sistemas legados Sistemas antigos, mas de extrema importância para uma organização e que funcionam bem. Linguagens antigas Falta de pessoal Específico de plataformas obsoletas Heterogeneidade Os sistemas são distribuídos e incluem diversidade de hardware e plataforma operacional Entrega Existe sempre uma pressão forte para diminuir o tempo de entrega. Engenharia de Software Conceitos Básicos Falhas de Software Ariane 5, 1996: O foguete explodiu 40 segundos após a sua primeira decolagem. Prejuízo de U$ 500 milhões Foi aproveitado um pacote de software de navegação do Ariane 4 que não tinha erros. No módulo Sistema de Referencia Inercial (SRI ) uma conversão de valores de 64-bits para 16-bits causou um operando inválido que o interrompeu A falha no SRI levou o computador de bordo a modificar a trajetória do foguete levando à ruptura de juntas e isto causou a ativação da autodestruição. No Ariane 5, o módulo SRI só deveria ter sido utilizado antes do lançamento. 2

Engenharia de Software Conceitos Básicos Falhas de Software London Ambulance System - despacho de ambulâncias em Londres, 1992. Morte de pessoas que não foram socorridas em tempo. Problema de Gerência de Software: Responsáveis contrataram uma empresa desconhecida cujo valor cobrado era menor que os cobrados pelas empresas de renome. Colocaram o sistema no ar sem os devidos testes. Não foi feita uma migração correta do sistema antigo para o novo. Engenharia de Software Conceitos Básicos Falhas de Software Máquina de radioterapia com software controlador (1985-87). O controle de segurança feito pelo hardware em máquinas anteriores foi removido e passou a ser feito pelo software. O software falhou na tarefa de, ao mesmo tempo, manter invariantes essenciais: o feixe de elétrons e o dispositivo que controla a concentração do feixe em níveis seguros. Diversas mortes em decorrência de queimaduras. O programador não tinha experiência em programação concorrente. 3

Quanto mais cedo defeitos forem encontrados antes da implementação do sistema o custo de correção é menor em relação ao encontrado na fase de produção. (Regra de Myers) Terminologia Padrão IEEE número 610.12-1990. defeito (fault) passo, processo ou definição de dados incorreto, como por exemplo, uma instrução ou comando incorreto; engano (mistake) ação humana que produz um resultado incorreto, com por exemplo, uma ação incorreta tomada pelo programador; erro (error) diferença entre o valor obtido e o valor esperado, ou seja, qualquer estado intermediário incorreto ou resultado inesperado na execução do programa constitui um erro; 4

Terminologia Padrão IEEE número 610.12-1990. Falha (failure) produção de uma saída incorreta com relação à especificação. Engano Defeito Erro Falha Causa Consequência Os erros são classificados em: Erros Computacionais o erro provoca uma computação incorreta mas o caminho executado (sequências de comandos) é igual ao caminho esperado; Erros de Domínio o caminho efetivamente executado é diferente do caminho esperado, ou seja, um caminho errado é selecionado. 5

Introdução Teste de unidade É aplicado aos menores componentes de código, testa as unidades individuais: Funções, objetos e componentes. Introdução Teste de integração (ou iteração) É o feito ao término de cada iteração para validar a execução das funções referentes aos casos de uso. 6

Introdução Teste de sistema Executa o sistema como um todo para validar a execução das funções acompanhando cenários elaborados (casos de teste) por um analista de testes em um ambiente de testes. Introdução Teste de aceitação É feito antes da implementação do software, o cliente é quem executa esse tipo de teste no ambiente de homologação. Tem como objetivo verificar se o software está pronto para ser utilizado pelos usuários finais. 7

Introdução Um teste é uma atividade na qual um produto, sistema ou componente é executado sob condições específicas, com observação e registro dos resultados e avaliação de um ou mais aspectos. Introdução Quanto maior o número de defeitos detectados em um software, provavelmente maior também será o número de defeitos não detectados. Este caso, geralmente indica necessidade de redesenho do projeto. 8

Exemplo DATASUS Representa uma estruturação de etapas, atividades, artefatos, papéis e responsabilidades que buscam a padronização dos trabalhos e ampliar a organização e controle dos projetos de testes. O Processo de Teste, como qualquer outro processo deve ser revisto continuamente, de forma a ampliar sua atuação e possibilitar aos profissionais uma maior visibilidade e organização dos seus trabalhos, o que resulta numa maior agilidade e controle operacional dos projetos de testes. 9

Etapa 1: Planejamento dos Testes Esta etapa caracteriza-se pela definição de uma proposta de testes baseada nas expectativas do Cliente em relação à prazos, custos e qualidade esperada, possibilitando dimensionar a equipe e estabelecer um esforço de acordo com as necessidades apontadas pelo Cliente. 10

Etapa 1: Planejamento dos Testes Conjunto de atividades que deverão ser executadas para que cada macro atividade seja considerada finalizada, funcionando como um "check-list" de execução da etapa de "Planejamento dos Testes". Etapa 1: Planejamento dos Testes Estudo do Projeto: Estudar as modificações solicitadas pelo Cliente (novos requisitos); Estudar as modificações de arquiteturas dos aplicativos; Estudar as lições aprendidas dos Projetos Anteriores; Avaliar expectativas de custos, prazos e qualidade exigidas pelo Cliente; Avaliar os riscos envolvidos nos Projetos e seus impactos neste processo; 11

Etapa 1: Planejamento dos Testes Avaliação de Impacto: Avaliar se o projeto exige a criação de casos de testes "progressivos"; Avaliar se o projeto exige modificações em casos de testes "regressivos Avaliar se o projeto exige adequações na automação dos testes; Avaliar se o projeto exige adequação nas atuais ferramentas empregadas; Avaliar se o projeto exige a aquisição/construção de novas ferramentas; Avaliar se o projeto exige modificações na estruturação do ambiente; Etapa 1: Planejamento dos Testes Análise Interna de Esforço Levantar métricas históricas para auxiliar na elaboração das estimativas de esforço; Estimar esforço interno para absorção dos impactos da Arquitetura dos Testes; Demonstrar esforço externo para absorção dos impactos da Arquitetura dos Testes; 12

Etapa 1: Planejamento dos Testes Análise Externa de Esforço: Avaliar disponibilidade de espaço físico e infra estrutura para os Terceiros; Especificar as necessidades de adequações que serão repassadas a Terceiros; Especificar métricas de qualidade e produtividades esperadas; Especificar SLA's de serviço e multas contratuais; Estabelecer concorrência e obter a melhor proposta (opcional); Receber Proposta de Trabalho (Cronograma, Prazos e Custos da Terceirização); Etapa 1: Planejamento dos Testes Definição de Cenários Possíveis (Duração, Esforço, Custo e Qualidade): Levantar Lista de Projetos em Andamento e a serem Iniciados; Avaliar a disponibilidade de recursos internos para alocação no Projeto; Identificar Cenários Diversos (Terceirização, Redução de Escopo, Repriorização de Projetos); Definir Cronograma-Macro para cada cenário identificado; Definir Riscos para cada cenário identificado e Planos de Ação Esperados; Estabelecer Propostas e Aguardar aprovação da Diretoria; 13

Etapa 1: Planejamento dos Testes Aprovação do Planejamento: Obter o Aceite das Propostas de Cenários Aprovados pela Diretoria; Obter o Aceite de uma das Propostas pelo Cliente; Divulgar do Cenário Aprovado do Projeto aos colaboradores e terceiros; Obter a Assinatura do CONTRATO-MESTE e elaborar os ANEXOS; (no caso de terceirização) Alocar Espaço Físico dos Terceiros; (no caso de terceirização) Comunicar a Finalização da Etapa de Planejamento dos Testes; (externo) Definição das Responsabilidades 14

Mapeamento dos Artefatos "artefatos de entrada" exigidos como premissa para que cada macro atividade possa ser realizada. "artefatos de saída" produzidos como resultado da atividade. Mapeamento dos Artefatos 15

Etapa 2: Especificação dos Testes Esta etapa é caracterizada pela identificação dos casos de testes que deverão ser construídos e modificados em função das mudanças solicitadas pelo Cliente, bem como pelo próprio aperfeiçoamento do processo de testes (ampliação da cobertura). Etapa 2: Especificação dos Testes Estudo dos Requisitos Identificação dos casos de teste Refinamento dos casos de teste Especificação de adaptações na arquitetura Ajuste dos casos de teste Refinamento do Projeto de Testes 16

Etapa 2: Especificação dos Testes Estudo dos Requisitos: Estudar os requisitos funcionais e não funcionais solicitadas pelo Cliente (novos requisitos); Estudar as modificações de requisitos solicitados pelo Cliente (mudanças de requisitos); Revisar os artefatos e identificar "inconsistências" dos requisitos; Estabelecer o Aceite dos Documentos fornecidos e "feedback" da qualidade dos mesmos; Estudar as lições aprendidas da Etapa "Especificação de Testes"; Etapa 2: Especificação dos Testes Especificar as Adaptações da Arquitetura dos Testes: Especificar as adequações nas atuais ferramentas empregadas; Especificar as novas ferramentas exigidas pelo projeto; Especificar as modificações estruturais na organização do ambiente; Especificar as adequações na automação da preparação do ambiente (script de teste); Especificar as adequações na automação da execução dos testes (script de teste); Especificar as adequações na automação da análise dos resultados (script de teste); 17

Etapa 2: Especificação dos Testes Identificação dos Casos de Testes Identificar cada solicitação de mudança requisitada pelo Cliente; Identificar todos os Casos de Uso envolvidos em cada solicitação; Identificar Casos de Uso não cobertos adequadamente por Casos de Testes; (legado) Identificar todos o Fluxos do Caso de Uso (Básico, Alternativo e Exceção); Identificar os casos de testes que garantam cada Fluxo do Caso de Uso; Etapa 2: Especificação dos Testes Refinamento dos Casos detestes: Estabelecer dinâmica com os Analistas de Testes que possuem conhecimento horizontal; Apresentação de um quadro-geral do impacto das mudanças nos respectivos aplicativos; Cada Analista de Testes apresenta seus casos de testes por aplicativo; O grupo de Analistas de Testes criticam e sugerem melhorias nos casos de testes; O grupo de Analista de Testes avaliam o nível de cobertura alcançado; Novas reuniões serão realizadas até que seja alcançado o patamar ideal de casos de testes; 18

Etapa 2: Especificação dos Testes Aceite dos Casos de Testes: Identificar Áreas-Chaves para apresentação dos casos de testes (Clientes Internos e Externos) Apresentar os casos de testes "progressivos" que serão aplicados nos testes; Apresentar os casos de testes "regressivos" que serão aplicados nos testes; Realizar refinamento dos casos de testes apresentados ("regressivos e progressivos"); Estabelecer o acordo Mútuo de Responsabilidade sobre o Nível de Qualidade do Software; Etapa 2: Especificação dos Testes Refinamento do Projeto de Testes: Reavaliar as estimativas de esforço e duração do Processo de Teste; (se necessário) Estabelecer um Cronograma-Detalhado, baseado no Cronograma-Macro já elaborado; Reavaliar riscos do Projeto em função de uma maior detalhamento sobre os requisitos; Negociar eventuais modificações em relação à duração, prazo e custo do projeto de testes; Comunicar a Finalização da Etapa de "Especificação dos Testes"; (externo) 19

Etapa 2: Especificação dos Testes Definição de Responsabilidades Etapa 2: Especificação dos Testes Mapeamento dos Artefatos 20

Etapa 3: Modelagem de Testes Esta etapa é caracterizada pela identificação de todos os elementos necessários para a implementação de cada caso de testes especificado. Fazem parte desta etapa a modelagem das massas de testes e a definição dos critérios de tratamento de arquivos (envelhecimento, descaracterização e comparação de resultados). Etapa 3: Modelagem de Testes 21

Etapa 3: Modelagem de Testes Etapa 3: Modelagem de Testes Criação dos Roteiros detestes: Identificar os roteiros de testes que atenderão os novos casos de testes; Especificar os procedimentos para iniciar um caso de teste (setup); Especificar os procedimentos de execução do caso de teste (execute); Especificar os procedimentos de validação do caso de teste (check); Especificar os procedimentos de limpeza após a execução de um caso de teste (cleanup); Realizar a organização dos roteiros de forma a facilitar a localização dos mesmos; Revisar os Roteiros de Testes com os Executores de Testes; (teste manual) 22

Etapa 3: Modelagem de Testes Detalhamento da Massa de Entrada: Identificar os novos pontos de simulação (entradas simuladas); Estruturar e atualizar os "layouts" da Massa de Entrada, de acordo as mudanças aplicadas; Para cada caso de teste, realizar o detalhamento da massa de entrada de dados; Identificar campos que serão parametrizados para gerar "variações de casos de testes"; Garantir a rastreabilidade entre o caso de teste e a massa de entrada; Etapa 3: Modelagem de Testes Detalhamento da Massa de Saída: Identificar os novos pontos de validação (saídas esperadas ou "baseline"); Estruturar e atualizar os "layouts" da Massa de Saída, de acordo as mudanças aplicadas; Para cada caso de teste, realizar o detalhamento da massa de saída de dados esperada; Identificar campos que serão parametrizados para atender "variações de casos de testes"; Garantir a rastreabilidade entre o caso de teste e a massa de saída; 23

Etapa 3: Modelagem de Testes Critérios de Tratamento da Massa de Testes: Identificar os critérios de descaracterização da massa de testes; (campos protegidos) Identificar os critérios de envelhecimento da massa de testes; (campos datas) Identificar os critérios de substituição da massa de testes; (variáveis do ambiente) Identificar os critérios de variação da massa de testes; (cenários de testes) Etapa 3: Modelagem de Testes Implementar as Adaptações da Arquitetura dos Testes: Implementar as adequações nas atuais ferramentas empregadas; Implementar as novas ferramentas exigidas pelo projeto; Implementar as modificações estruturais na organização do ambiente; Implementar as adequações na automação da preparação do ambiente (script de teste); Implementar as adequações na automação da execução dos testes (script de teste); Implementar as adequações na automação da análise dos resultados (script de teste); 24

Etapa 3: Modelagem de Testes Elaboração do Plano de Execução dos Testes: Identificação dos diversos "sites" (estações de trabalho) para a execução dos testes; Identificação dos diversos equipamentos que serão necessários para a execução dos testes; Identificação das diversas configurações que serão exigidas para cada "site" e equipamento; Identificação das licenças de uso para os softwares que deverão ser empregados; Distribuir os casos de testes pelas suas características (horários, condições especiais, categorias); Priorizar a execução dos testes por importância (progressivos, severidade, categorias, duração); Identificar as responsabilidades de monitorar a execução dos testes de cada distribuição; Etapa 3: Modelagem de Testes Definição de Responsabilidades 25

Etapa 3: Modelagem de Testes Mapeamento de Artefatos Etapa 4: Preparação do Ambiente Esta etapa é caracterizada por um conjunto de atividades que visa a disponibilização física de um ambiente de testes "segregado" que esteja pronto para sofrer a bateria de testes planejadas nas etapas anteriores, sem que existam "intervenções humanas" que interrompam o processo "contínuo" dos testes. 26

Etapa 4: Preparação do Ambiente Etapa 4: Preparação do Ambiente Instalação do Aplicativo a ser Testado: Identificar a versão do aplicativo que deverá sofrer a execução dos testes; Baixar a versão do aplicativo e de seus componentes; Baixar a versão do Banco de Dados e arquivos de configuração correspondentes; Aplicar os procedimentos de instalação, objetivando disponibilizar o aplicativo para uso; 27

Etapa 4: Preparação do Ambiente Instalação da Arquitetura de Testes: Identificar a versão da arquitetura de testes compatível com a versão do aplicativo a ser testada; Baixar a versão da automação e seus respectivos Bancos de Dados; Baixar a versão dos simuladores e componentes da arquitetura; (automatizada ou não) Baixar a versão dos scripts (batchs); Baixar as ferramentas de produtividade para acelerar o processo de testes de software; Aplicar os procedimentos de instalação, objetivando disponibilizar a arquitetura de testes; Etapa 4: Preparação do Ambiente Homologação da Nova Arquitetura: Selecionar um pequeno conjunto de testes para avaliar a instalação da arquitetura de testes; Gerar a Massa de Testes (Entrada e Saída) para realizarmos a simulação; Realizar os procedimentos de Execução e Conferência dos Testes nos diversos "sites"; Avaliar se os resultados obtidos estão "coerentes" com as mudanças da arquitetura e ambiente; Obter o Aceite dos Analistas de Testes; 28

Etapa 4: Preparação do Ambiente Geração da Massa detestes: Identificar a versão da massa de testes compatível com a versão do aplicativo a ser testada; Gerar a Massa de Entrada nos respectivos diretórios (Pontos de Simulação); Gerar a Massa de Saída nos respectivos diretórios (Pontos devalidação); Avaliar se as informações foram tratadas adequadamente; Etapa 4: Preparação do Ambiente Definição das Responsabilidades 29

Etapa 4: Preparação do Ambiente Mapeamento dos Artefatos Etapa 5: Execução dos Testes Esta etapa é caracterizada pela execução e conferência dos testes planejados, de forma a garantir que o comportamento do aplicativo permanece em "conformidade" com os requisitos contratados pelo Cliente. 30

Etapa 5: Execução dos Testes Etapa 5: Execução dos Testes 31

Etapa 5: Execução dos Testes Disponibilização do Ambiente dos Testes: Parametrização da distribuição da carga dos testes nos diversos "sites" de execução; Limpeza de Diretórios que serão manipulados durante a execução e conferência dos testes; Avaliação da disponibilidade da Infra-Estrutura (Servidores, Redes, Comunicação, Disco); Acionar ferramentas de monitoramento de interrupção "anormal" de processamento; Etapa 5: Execução dos Testes Execução dos Casos de Testes Progressivos: Executar os casos de testes "progressivos" selecionados, respeitando a priorização estabelecida; Coletar as evidências dos casos de testes executados (armazenamento padronizado); Comparar as evidências que possuem "resultado esperado" (possui baseline); Analisar as evidências que não possuem "resultado esperado" (ausência baseline); Identificar os casos de testes em "conformidade" com os requisitos; Identificar os casos de testes em SUSPEITA de "não-conformidade" com os requisitos; 32

Etapa 5: Execução dos Testes Confirmação dos Resultados Progressivos: Re-Executar os casos de testes progressivos em SUSPEITA de "não-conformidade"; Analisar as evidências e compará-las com o baseline (se existir) e resultados anteriores; Identificar os FALSOS-POSITIVOS e apontar imprecisão do processo de comparação; Identificar os DUPLO-POSITIVOS e atestar a "não-conformidade" com os requisitos; Etapa 5: Execução dos Testes Execução dos Casos de Testes Regressivos: Executar os casos de testes "regressivos" selecionados, respeitando a priorização estabelecida; Coletar as evidências dos casos de testes executados (armazenamento padronizado); Comparar as evidências com o "resultado esperado" (possui baseline); Identificar os casos de testes em "conformidade" com os requisitos; Identificar os casos de testes em SUSPEITA de "não-conformidade" com os requisitos; 33

Etapa 5: Execução dos Testes Confirmação dos Resultados Regressivos: Re-Executar os casos de testes regressivos em SUSPEITA de "não-conformidade"; Analisar as evidências e compará-las com o baseline existente (sempre deverá existir); Identificar os FALSOS-POSITIVOS e apontar imprecisão do processo de comparação ou baseline; Identificar os DUPLO-POSITIVOS e atestar a "não-conformidade" com os requisitos; Comunicar a Finalização da Etapa de "Execução dos Testes"; (interna) Etapa 5: Execução dos Testes Definição de Responsabilidades 34

Etapa 5: Execução dos Testes Mapeamento de Artefatos Etapa 6:Análise dos Resultados Esta etapa é caracterizada pela análise e confirmação dos resultados relatados durante a fase de execução dos testes. Os resultados em "não-conformidade" deverão ser "confirmados" e "detalhados" para que a Fábrica de Software realize as correções necessárias. Já os casos de testes progressivos em "conformidade" deverão ter seu resultado "POSITIVO" reconfirmado e seu "baseline" atualizado. 35

Etapa 6:Análise dos Resultados Etapa 6:Análise dos Resultados 36

Etapa 6:Análise dos Resultados Revisão dos Resultados em "Não-Conformidade": Identificar os casos de testes que obtiverem "não-conformidades"; Avaliar as evidências dos testes e realizar a confirmação da "não-conformidade"; Identificar os FALSOS-POSITIVOS e apontar imprecisão do processo de comparação; Revisão da Análise dos Casos de Testes Progressivos em "Conformidade": Identificar os casos de testes progressivos que estão em "conformidade" com os requisitos; Revisar as evidências e atestar a "conformidade" dos casos de testes; Identificar os FALSOS-NEGATIVOS e apontar imprecisão do processo de análise dos resultados; Etapa 6:Análise dos Resultados Atualização do Baseline: Identificar os casos de testes progressivos em "conformidade" e atualizar seu "baseline"; Identificar os casos de testes em "não-conformidade" e atualizar o "baseline" esperado; Guardar o baseline (backup) para a ser empregado na próxima execução dos testes; 37

Etapa 6:Análise dos Resultados Formalização dos Defeitos Detectados: Isolar cada caso de testes que resultou numa "não-conformidade"; Coletar todas as evidências que provam a não conformidade; Detalhar as condições em que foram estabelecidas cada caso de teste em "nãoconformidade"; Realizar a classificação de cada defeito identificado ("aplicativo", "natureza", "severidade"); Reunir todas as informações e formalizar os defeitos detectados; Comunicar a Finalização da Etapa de "Análise dos Resultados"; (externa) Etapa 6:Análise dos Resultados Negociação de um Novo Ciclo de Testes (se necessário): Avaliar a necessidade de um novo ciclo de testes diante da quantidade e severidade dos defeitos; Reavaliar os impactos de outros projetos diante da necessidade de um novo ciclo de testes; Avaliar o nível de cobertura dos testes a ser considerado (ciclo completo ou reduzido); Avaliar a possibilidade de aplicar os testes em paralelo ao processo de homologação/implantação; 38

Etapa 6:Análise dos Resultados Definição de Responsabilidades Etapa 6:Análise dos Resultados Mapeamento de Artefatos 39

Etapa 7: Encerramento do Processo Esta etapa é caracterizada pela avaliação de todo o Processo de, comparando os resultados alcançados em relação ao que foi inicialmente planejado. Neste momento, diversos indicadores são extraídos, visando avaliar qualitativamente e quantitativamente o desempenho do trabalho, através de comparações históricas de projetos anteriores. Etapa 7: Encerramento do Processo 40

Etapa 7: Encerramento do Processo Etapa 7: Encerramento do Processo Extração dos Indicadores (Individuais / Projeto): Extrair os indicadores quantitativos; (critérios objetivos) Extrair os indicadores de produtividade; (critérios objetivos) Extrair os indicadores de confiabilidade; (critérios objetivos) Extrair os indicadores financeiros; (critérios objetivos) Extrair os indicadores de nível de satisfação; (critérios subjetivos) 41

Etapa 7: Encerramento do Processo Resumo do Processo de Testes: Registrar um Resumo do Processo de Testes; Registrar a Lista de Defeitos Detectados; Registrar Níveis de Serviço Alcançado X Planejado; Registrar Nível de Cobertura de Alcançado (Requisitos Garantidos); Registrar Indicadores Obtidos do Processo; Registrar Lições Aprendidas; Registrar Detalhamento dos Ciclos de Testes Realizados (Caminho Crítico); Anexar e-mail's sobre o processo; Divulgação Corporativa do Resultado do Projeto de Testes; Etapa 7: Encerramento do Processo Análise dos Indicadores do Processo Comparar indicadores quantitativos com históricos; Comparar indicadores de produtividades com históricos; Comparar indicadores de confiabilidade com históricos; Comparar indicadores financeiros com históricos; Comparar indicadores de nível de satisfação com históricos; Analisar indicadores e avaliar tendências dos indicadores; Sugerir ações para promover melhorias ou reverter tendências negativas; Divulgação Corporativa dos Níveis de Serviço alcançados pelo Processo de Testes; 42

Etapa 7: Encerramento do Processo Versionamento do Processo deteste Versionar todos os artefatos produzidos durante o processo de testes; Versionar todos os fontes empregados na automação dos testes; Versionar todos os fontes empregados nos simuladores; Versionar todas as ferramentas de produtividade empregadas nos testes; Versionar todos os instrumentos de limpeza e instalação do ambiente de testes; Versionar todos os elementos necessários para aplicar os casos de testes gerenciados; Garantir uma única configuração que garanta a recuperação de todos os artefatos de testes; Garantir uma rápida e precisa recuperação dos testes, no caso de "testes emergenciais"; Etapa 7: Encerramento do Processo Avaliação Final e Melhoria do Processo: Avaliar os riscos planejados e os que foram concretizados; Avaliar a performance do projeto em relação aos históricos existentes; Atualizar Plano de Melhoria Contínua; Comunicar a Finalização da Etapa de "Encerramento do Processo"; (interna) 43

Etapa 7: Encerramento do Processo Definição de Responsabilidades Etapa 7: Encerramento do Processo Mapeamento de Artefatos 44

Fontes de Consulta http://imasters.com.br/artigo/6102/des_de_software/processo_de_teste_de_soft ware_parte_01/ http://imasters.com.br/artigo/6117/software/processo-de-teste-de-softwareparte-2 http://imasters.com.br/artigo/6118/software/processo-de-teste-de-softwareparte-03 http://pts.datasus.gov.br/pts/default.php?area=04 http://pts.datasus.gov.br/pts/default.php?area=07 http://sgq.datasus.gov.br/sgq/default.php?area=0401 45