Você está na página 1de 34

Prof.

Agnaldo Volpe Lovato

Verificar se estamos construindo o produto correto (Validao). Referese ao conjunto de atividades que garantam que o software construdo corresponde aos requisitos do cliente Estamos construindo o produto certo? Verificar se estamos construindo o produto corretamente (Verificao). Emprego de atividades que garantam que o software implementa corretamente uma funo especfica. Estamos construindo o produto corretamente?

Abrange atividades referentes a garantia de qualidade de software Abrangem atividades como:


Revises tcnicas formais Auditoria de qualidade e configurao Monitoramento de desempenho Simulao Reviso da documentao Reviso da base de dados Anlise de algoritmos Teste de desenvolvimento Teste de qualificao Teste de instalao

Verificao

Validao

Especificaes Requisitos Funcionais Requisitos No-Funcionais

Expectativas do Cliente

Confiana de que o software est adequado a seu propsito

Funo do Software
Softwares Crticos Vs. Software Demonstrativos

Expectativas do Usurio
Aceitam falhas quando benefcios ultrapassam as desvantagens Tolerncia tem crescido desde 1990 Est menos aceitvel entregar sistemas no confiveis.

Ambiente do Mercado
Falta de concorrncia proporciona a liberao sem testes Clientes dispostos a tolerar falhas por preo mais barato

Inspees de software
Analisam e verificam representaes do sistema:
Documento de Requisitos Diagramas de Projeto Cdigo Fonte do Programa

Podem ser usadas em todos os estgios do processo So tcnicas de V&V estticas voc no precisa executar o software

Testes de Software
Envolve executar uma implementao do software com dados de teste Examina as sadas do software e seu comportamento operacional para verificar o desempenho uma tcnica dinmica de verificao e validao

Inspees (Esttica)

Teste (Dinmica)

Verificao

Validao

Verificao

Validao

Inspees de software

Especificao de Requisitos

Projeto de alto nvel

Especificao formal

Projeto detalhado

Programa

Prottipo

Teste de Programa

Desenvolvimento incremental traz vantagens

Inspees so amplamente utilizadas Teste de programa ser sempre a tcnica principal de V&V Testar envolve:
Exercitar o programa Descobrir erros por meio de anomalias

Existem duas abordagens distintas de teste:


Teste de Validao
Mostrar que o software o que o cliente deseja

Teste de Defeitos
Encontrar inconsistncias entre um programa e sua especificao

Embora sejam abordagens distintas, elas se complementam Processo de V&V so dedicados a estabelecer a existncia de defeitos em um sistema de software Debugging um processo que localiza e corrige os defeitos Deve haver rastreabilidade
Resultados dos testes Casos de testes

Especificao

Localizar erros

Projetar reparo de erros

Reparar erros

Testar programa novamente

um processo dispendioso Mais da metade do oramento pode ser gasto em V&V


Especificao de Requisitos Especificao de sistema Projeto de Sistema Projeto detalhado

Plano de teste de aceitao

Plano de teste de integrao do sistema

Plano de teste de integrao de subsistemas Teste de integrao de sistemas

Cdigo unitrio, e de mdulo e teste Teste de integrao de subsistemas

Servio

Teste de aceitao

Decidir sobre o equilbrio entre a abordagem esttica e dinmica Especificar padres Procedimentos de Inspees e Testes de Software Estabelecer checklists Definir plano de testes Quanto mais crtico o sistema, mais esforo deve ser dedicado a V&V

Para alguns processos geis (XP), o teste inseparvel do desenvolvimento No XP o cliente fundamentalmente o responsvel pelo esforo dedicado ao teste Planos de teste no so documentos estticos

Processo de V&V esttico Busca-se encontrar


Erros Omisses Anomalias

Vantagens
Erros podem mascarar outros erros Verses incompletas podem ser inspecionadas sem custos adicionais Podem analisar conformidade com padres, portabilidade e facilidade de manuteno.

So mais eficientes para descobrir defeitos do que teste de programas Mais de 60% de erros podem ser detectados usando inspees formais Em alguns casos utilizando com uma abordagem mais formal pode-se chegar a 90% Alguns engenheiros relutam que inspees podem ser mais eficientes para detectar defeitos do que os testes Gerentes ficam intrigados com os custos difcil convenc-lo quando o mesmo pressionado Inspees levam tempo para serem organizadas Parecem diminuir a velocidade do processo

Visam a deteco de defeitos de programa Defeitos podem ser provenientes de:


Erros de Lgica Anomalias no Cdigo

um mtodo de verificao de programa Reviso cuidadosa, linha por linha do cdigo fonte do programa Antes do incio do processo essencial que:
Tenha uma especificao precisa do cdigo que ser inspecionado Todos estejam familiarizados com os padres organizacionais Uma verso atualizada e compilvel do cdigo tenha sido distribuda a todos os membros da equipe

Planejamento

Viso Geral

Acompanhamento

Preparao Individual

Retrabalho

Reunio de Inspeo

CheckList Prprios da Linguagem Classes de Defeitos (dados, controle, entrada/sada, excees, etc.

Inspees so uma forma de anlise esttica Voc examina o programa sem execut-lo Em alguns casos possvel automatizar
Variveis usadas sem serem iniciadas Variveis no usadas Dados cujo valores poderiam ficar fora de sua extenso

Estgios envolvidos na anlise esttica:


Anlise de fluxo de controle Anlise de uso de dados Anlise de interface Anlise de fluxo de informaes Anlise de caminho

Muitos defeitos diferentes podem ser descobertos em uma nica inspeo, sendo que no teste mais fcil de um defeito mascarar outros, assim vrias execues so necessrias A reutilizao do conhecimento do domnio benfica, uma vez que revisores provavelmente j viram outros tipos de erros que ocorrem com frequncia

So tcnicas complementares Ambas devem ser utilizadas no processo de V&V Inspees podem verificar a conformidade com uma especificao mas no com a conformidade com os requisitos reais do usurio Inspees no podem verificar as caractersticas no funcionais tais como desempenho, usabilidade,etc.

Plano de Iterao: Fase de Iniciao

Finalidades: Identificar o foco adequado do esforo de teste para a iterao; Estabelecer consenso com os envolvidos sobre as metas correspondentes que conduziro o esforo de teste

Plano de Iterao: Fase de Elaborao

Finalidades: Demonstrar a usabilidade das tcnicas para os testes exigidos; Compreender as limitaes e restries de cada tcnicas; Encontrar solues, tcnicas alternativas; Ajuda a diminuir os riscos.

Finalidades: Envolver o trabalho ttico central do esforo de teste a avaliao: Implementao; Execuo Avaliao dos testes; Relatrios dos incidentes encontrados.

Finalidades: Ajudar a equipe do projeto a atingir os objetivos do Plano de Interao aplicvel ao ciclo de teste atual; Defender a qualidade dos testes; Avaliar o processo de testes.

Finalidades: Manter e melhorar as vantagens do teste; Importante para reutilizar as vantagens desenvolvidas em ciclos de testes subsequentes; Explorar a reutilizao.

Finalidades: Tomar a deciso de aceitar o Build como adequado para uso com base na misso de avaliao.