A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Teste de Software Geórgenes Zapalaglio Seminário da disciplina de Confiabilidade de Sistemas 10/11/2008.

Apresentações semelhantes


Apresentação em tema: "Teste de Software Geórgenes Zapalaglio Seminário da disciplina de Confiabilidade de Sistemas 10/11/2008."— Transcrição da apresentação:

1 Teste de Software Geórgenes Zapalaglio Seminário da disciplina de Confiabilidade de Sistemas 10/11/2008

2 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Motivação Errar é inerente a natureza humana. Precaver-se contra os erros é uma atitude inteligente. O processo de desenvolvimento de software é sujeito a defeitos. Sendo assim, a atividade de teste é fundamental para se obter produtos de software com garantia de qualidade.

3 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Defeitos, Erros e Falhas Antes de iniciarmos uma discussão sobre teste de software precisamos esclarecer alguns conceitos relacionados a essa atividade. Inicialmente, precisamos conhecer a diferença entre Defeitos, Erros e Falhas.

4 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Introdução Teste de software é o processo de execução de um produto para determinar se ele atingiu suas especificações e funcionou corretamente no ambiente para o qual foi projetado. O seu objetivo é revelar falhas em um produto, para que as causas dessas falhas sejam identificadas e possam ser corrigidas pela equipe de desenvolvimento antes da entrega final. Testes devem começar o mais cedo possível Custo para se Corrigir um problema $

5 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Objetivos Objetivos da atividade de teste: Revelar a existência de falhas. Avaliar a qualidade do produto. Teste de software é a atividade de executar um programa com o objetivo de revelar a existência de falhas e avaliar sua qualidade Não é possível eliminar todos os problemas de um sistema apenas com testes, mas pode-se reduzir significativamente sua ocorrência. Um bom caso de teste é aquele que tem uma elevada probabilidade de revelar um problema. O teste bem sucedido é o que revela a existência de uma falha ainda não descoberta.

6 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Desenvolvimento de Software Modelo de desenvolvimento de software tradicional.

7 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Defeitos no Desenvolvimento de Software Os defeitos normalmente são introduzidos na transformação de informações entre as diferentes fases do ciclo de desenvolvimento de um software, por exemplo: Essa série de transformações mostrou a necessidade de realizar testes em diferentes níveis, visando avaliar o software em diferentes perspectivas de acordo com o produto gerado em cada fase do ciclo de vida de desenvolvimento de um software.

8 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Níveis de Teste de Software O planejamento dos testes deve ocorrer em diferentes níveis e em paralelo ao desenvolvimento do software, os principais níveis de teste de software são: Teste de Unidade: também conhecido como Teste Unitário. o objetivo é o de encontrar falhas de funcionamento dentro de uma pequena parte do sistema funcionando independentemente do todo. Teste de Integração: o objetivo é encontrar falhas provenientes da integração interna dos componentes de um sistema. Teste de Sistema: avalia o software em busca de falhas por meio da utilização do mesmo, como se fosse um usuário final. Teste de Aceitação: são realizados geralmente por um restrito grupo de usuários finais do sistema. Teste de Regressão: consiste em se aplicar, a cada nova versão do software ou a cada ciclo, todos os testes que já foram aplicados nas versões ou ciclos de teste anteriores do sistema.

9 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Níveis de Teste de Software

10 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Técnicas de Teste de Software Atualmente existem muitas maneiras de se testar um software. O objetivo principal destas técnicas continua a ser o mesmo: encontrar falhas no software. Abaixo estão descritas as três técnicas mais conhecidas. Técnica Estrutural (Caixa-Branca) : Técnica de teste que avalia o com- portamento interno do componente de software. Essa técnica trabalha diretamente sobre o código fonte do componente de software para avaliar aspectos tais como: teste de condição, teste de fluxo de dados, teste de ciclos e teste de caminhos lógicos.

11 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Técnicas de Teste de Software Técnica Funcional (Caixa-Preta) : Técnica de teste em que o componente de software a ser testado é abordado como se fosse uma caixa-preta, ou seja, não se considera o comportamento interno do mesmo. Dados de entrada são fornecidos, o teste é executado e o resultado obtido é comparado a um resultado esperado previamente conhecido. Haverá sucesso no teste se o resultado obtido for igual ao resultado esperado.

12 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Técnicas de Teste de Software

13 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Testando Software Embarcado O que separa o software embarcado de software comum: Software embarcado deve executar de maneira confiável por longos períodos de tempo; Software embarcado é utilizado com freqüência em aplicações onde a vida humana está em risco; Software embarcado são muitas vezes tão sensíveis ao custo que não há margem para ineficiências; Software embarcado deve com freqüência compensar falhas no hardware embarcado; Eventos no mundo real são normalmente assíncronos e não determinísticos, fazendo com que testes de simulação sejam difíceis e não confiáveis; Sua empresa pode ser processada se o seu código falhar.

14 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Acidentes e Erros Ariane 5 O Ariane 5 era um foguete espacial utilizado para levar satélites até suas órbitas, além de transportar outros tipos de cargas. Em Junho de 1996, a aeronave se auto destruiu um minuto após seu lançamento. O prejuízo foi de U$$ 7.5 bilhões de dólares. Limitação na representação numérica (64 bits/ 16 bits) Erro de trajetória 36,7 s após o lançamento

15 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Acidentes e Erros Intel Em 1994, ouve um erro de vírgula flutuante no Pentium. A correção custou à empresa 475 milhões de dólares. O erro teria um custo insignificante se descoberto na fase de especificação.

16 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Acidentes e Erros Míssil Patriot O Patriot é um sistema de defesa Terra-Ar que pretende interceptar e destruir objetos voadores inimigos. Limitação na representação numérica (24 bits) Erro de 0,34 s no cálculo do tempo de lançamento

17 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Conclusão O teste de software é uma das atividades mais custosas do processo de desenvolvimento de software. O rigor e o custo associado a esta atividade dependem principalmente da criticalidade da aplicação a ser desenvolvida. Porém, quanto mais eficazes forem os testes e o quanto antes as falhas forem descobertas, maior será a confiabilidade do sistema e menor será o seu custo.

18 13/4/2005Seminário da disciplina de PPD – PPGCC - PUCRS Referências CRAIG, R.D., JASKIEL, S. P., Systematic Software Testing, Artech House Publishers, Boston, IEEE Standard : IEEE Standard Glossary of Software Engineering Terminology, IEEE Press. PFLEEGER, S. L., Engenharia de Software: Teoria e Prática, Prentice Hall- Cap. 08, ROCHA, A. R. C., MALDONADO, J. C., WEBER, K. C. et al., Qualidade de software – Teoria e prática, Prentice Hall, São Paulo, Software Bugs - bugse.htmlhttp://www5.informatik.tu-muenchen.de/~huckle/ bugse.html FIM!


Carregar ppt "Teste de Software Geórgenes Zapalaglio Seminário da disciplina de Confiabilidade de Sistemas 10/11/2008."

Apresentações semelhantes


Anúncios Google