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

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

1º SEMESTRE PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELETRÔNICA E COMPUTAÇÃO – PG/EEC-I – ITA 1º SEMESTRE 2013 CE - 229 Teste de Software - Aula 01-1 CE-229.

Apresentações semelhantes


Apresentação em tema: "1º SEMESTRE PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELETRÔNICA E COMPUTAÇÃO – PG/EEC-I – ITA 1º SEMESTRE 2013 CE - 229 Teste de Software - Aula 01-1 CE-229."— Transcrição da apresentação:

1 1º SEMESTRE PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELETRÔNICA E COMPUTAÇÃO – PG/EEC-I – ITA 1º SEMESTRE 2013 CE Teste de Software - Aula 01-1 CE Profs. Vieira Dias, Cunha e Lineu (c) Introdução ao Teste de Software Vieira Dias (ITA) Prof. Dr. Luiz Alberto Vieira Dias (ITA) Cunha (ITA) Prof. Dr. Adilson Marques da Cunha (ITA) Prof. Dr. Lineu Mialaret (ITA/IFSP) Colaboração: Renan Cavichi (Aluno MSc, ITA/IFSP) 1.1a.1/35

2 - בדיקות תוכנה - тестирование программного xобеспечения τη δοκιμή του λογισμικού CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.2/35 Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (defects) Source: Wikipedia, English, 2013

3 Teste de Software (1/2) 10 piores falhas devido a software , Feb – Outage of gmail – NORAD – US under attack (radar) – Soviet Union under attack (satellite) Ozone layer discovered only in – Therac-25 massive overdoses of radiation (3 deaths) – Chinook helicopter crash (29 deaths) CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.3/35

4 Teste de Software (2/2) 10 piores falhas devido a software – JAS 39 Grippen fighter (sweeden) – Mars climate orbiter (units problem) – Panama city overdose for radiation therapy (> 5 deaths) 10. Airbus A-320 exibition (>100 PAX; 3 deaths – see video) – Bug in Canadian software stolen by KGB for a Russian company for pipeline control (not fault, but intentionaly planted bug by CIA) CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.4/35

5 Falhas catastróficas em software não testados Ariane 5 – Falha de software – ver Relatório (1996)1996 Airbus A320 (1988)1988 Mars Global Surveyor, MGS (2007) 1.1a.5/35CE Profs. Vieira Dias, Cunha e Lineu (c)

6 1.1a.6/35CE Profs. Vieira Dias, Cunha e Lineu (c)

7 Perda da Sonda Espacial MGS Software failure may have caused loss of Mars probe 19/Jan/07– New Scientist Printed Edition If only NASA's Mars Global Surveyor, MGS, had an IT expert on board... The spacecraft, missing since last year, may have got lost because of faulty software. MGS was last heard from in November. In June, NASA's ground controllers had uploaded software to the spacecraft's computer memory - to the wrong location, it now seems. Basically, the computer got confused," says Doug McCuistion, NASA's Washington DC-based director of Mars exploration. The error could have caused the craft's solar array to move to the wrong spot in response to a NASA command on 2 November. The MGS then went into a "safe mode", possibly oriented in a way that left temperature-sensitive components in sunlight for too long, causing a battery to fail and so leaving the spacecraft without enough power to operate. 1.1a.7/35CE Profs. Vieira Dias, Cunha e Lineu (c)

8 Primeiro software bug CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.8/35

9 Literatura básica BEIZER, B. Software Testing Techniques. New York, NY, USA: Van Nostrand Reinhold, 1990 (Esgotado) COPELAND, L. A Practitioners Guide to Software Test Design. Norwood, MA, USA: Artech House Publishers, 2007 DELAMARO, M. E.; MALDONADO, J. C.; JINO, M. Introdução ao Teste de Software. Rio de Janeiro, RJ: Editora Campus, a.9/35CE Profs. Vieira Dias, Cunha e Lineu (c)

10 Tópicos a serem cobertos (1/4) O processo de teste Estudo de caso Técnicas de Caixa Preta Teste de Classe de Equivalência Teste de Valor Fronteira Teste de Tabela de Decisão Pairwise Testing ( continua ) 1.1a.10/35CE Profs. Vieira Dias, Cunha e Lineu (c)

11 Tópicos a serem cobertos (2/4) Teste de Mudança de Estado Teste de Análise de Domínio Caso de Teste Técnicas de Caixa Branca Teste de Controle de Fluxo Teste de Data Flow ( continua ) 1.1a.11/35CE Profs. Vieira Dias, Cunha e Lineu (c)

12 Tópicos a serem cobertos (3/4) Paradigmas de Teste (+ Mutação) Script de Teste (IEEE 829) Teste Exploratório Planejamento de Teste Tecnologias de Suporte Métodos Ágeis Taxonomia de Defeitos Quando terminar (conceito de done") ( continua) 1.1a.12/35CE Profs. Vieira Dias, Cunha e Lineu (c)

13 Tópicos a serem cobertos (4/4) Laboratório de Teste de Software, usando um Estudo de Caso Em 2013, o Estudo de Caso será o Projeto SCAF (Fraudes em Cartões de Crédito) O Estudo de Caso será executado em conjunto com os alunos das disciplinas CE-240 (Projeto de Sistemas de Banco de Dados) e CE-245 (Tecnologias da Informação) – Aguardem a próxima aula 1.1a.13/35CE Profs. Vieira Dias, Cunha e Lineu (c)

14 Dados e Informação Dados – valor sem referência à fenômeno Informação – valor com significado, dado agregado Conhecimento – Utilização da informação Decisão – Utilização do conhecimento 1.1a.14/35CE Profs. Vieira Dias, Cunha e Lineu (c)

15 Exemplos –35, 72, amarelo (dados) –35 C, 72 sapatos, carro amarelo (info) –Quente, número grande de sapatos, carro esporte (conhec) –Vou para o ar condicionado, não preciso comprar mais sapatos, vou comprar o carro (decisão) CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.15/35

16 Teste de Software - Conceitos Computador Hardware Software Programas Dados, Informação, Conhecimento e Decisão Necessidade de se testar o Software 1.1a.16/35CE Profs. Vieira Dias, Cunha e Lineu (c)

17 Computadores (www.webopedia.com) É uma máquina programável. As duas principais características de um computador são: Ele responde a um conjunto específico de instruções de uma maneira bem definida Ele pode executar uma lista de instruções pregravadas (um programa) Os computadores modernos são eletrônicos e digitais A máquina real – fios, transistores e circuitos – é chamada de hardware; as instruções (programas + documentação) e os dados são chamados de software 1.1a.17/35CE Profs. Vieira Dias, Cunha e Lineu (c)

18 Os computadores de propósito geral requerem os seguintes componentes de hardware: Memoria: guarda, pelo menos temporariamente, dados e programas Memória de Massa: permite ao computador guardar permanentemente grandes quantidades de dados Input device ou Entrada: é o canal pelo qual dados e instruções são introdizidos no computador Output device ou Saída: permite visualizar os resultados gerados pelo computador Central Processing Unit ou Unidade Central de Processamento)(CPU): é o coração do computador; é a unidade que realmente executa as instruções Bus: propicia a transmissão de dados de uma parte à outra do computador 1.1a.18/35CE Profs. Vieira Dias, Cunha e Lineu (c)

19 Promeiros Computadores Pascal Babbage (ver anexo)anexo Zuse ENIAC Von Neuman Apple II IBM PC Supercomputadores CE Profs. Vieira Dias, Cunha e Lineu (c)1.1a.19/35

20 CE Profs. Vieira Dias, Cunha e Lineu (c) Aula01.a.20

21 CE Profs. Vieira Dias, Cunha e Lineu (c) 21

22 CE Profs. Vieira Dias, Cunha e Lineu (c) 22

23 PROGRAMAÇÃO CE Profs. Vieira Dias, Cunha e Lineu (c)

24 Computadores Embarcados Computadores embarcados apareceram para aplicações espaciais O SPUTNIK, primeiro satélite artificial da Terra, lançado pela Russia (ex-URSS) em 1957, não tinha computador a bordo O Explorer I, primeiro satélite americano, lançado em 1958, também não tinha computador de bordo. Ele tinha umprogramador eletromecânico 1.1a.24/35CE Profs. Vieira Dias, Cunha e Lineu (c)

25 1.1a.25/35 Vista do primeiro satélite artificial da Terra – SPUTNIK-1 (Russia – ex-URSS): Cortesia Agência Espacial Russa 04 outubro de 1957 – 83,61 kg – 58 cm diâmetro CE Profs. Vieira Dias, Cunha e Lineu (c)

26 Explorer 1 - JPL Cortesia JPL CE Profs. Vieira Dias, Cunha e Lineu (c)

27 Projeto Vanguard (Explorer) - USA Início 1955 Naval Research Lab Projeto elegante/simples Falha no primeiro lançamento! Sucesso em 11 de 12 lançamentos (6 com sats) Modelo em plástico disponível até hoje para entusiastas montarem 52 cm diâmetro; 9,8 kg 1.1a.27/35CE Profs. Vieira Dias, Cunha e Lineu (c)

28 Aula01.a.28 Modulo Lunar Apollo XI Cortesia NASA CE Profs. Vieira Dias, Cunha e Lineu (c)

29 Cortesia NASA Cabine do Módulo Lunar CE Profs. Vieira Dias, Cunha e Lineu (c)

30 Sistemas Embarcados e de Tempo Real hoje Mercado de (Micro) Processadores Embarcados: Uso em grande número de aplicações Grande aplicação na indústria aeroespacial, automobilística e militar Baixo custo Processamento dirigido à aplicação Desempenho proporcional à necessidade da aplicação Muitas vezes exigem tempo real 1.1a.30/35CE Profs. Vieira Dias, Cunha e Lineu (c)

31 Software hoje Extremamente complexos Necessitam de grande qualidade, confiabilidade e segurança (safety e security) Precisam ser exaustivamente testados, em muitos casos por meios automatizados. Entretanto testes são muito caros e muitas empresas testam o mínimo possível (muitas vezes menos do que o mínimo!) Testes α e β 1.1a.31/35CE Profs. Vieira Dias, Cunha e Lineu (c)

32 1.1a.32/35

33 Cockpit do Space Shuttle – software embarcado – anos 2000s - NASA CE Profs. Vieira Dias, Cunha e Lineu (c)

34 É necessário testar? É possível testar exautivamente um SW? Quanto à primeira pergunta, a resposta é dada por exemplos de software não testados ou testados inadequadamente. Quanto à segunda pergunta, a resposta, em geral é NÃO, em função de que não é possível testar, em tempo finito, todas as possibilidades de entrada de dados e todos os caminhos (trajetos) possíveis que o processamento de big data ou programas colplexos exige. 1.1a.34/35CE Profs. Vieira Dias, Cunha e Lineu (c)

35 Necessidade de Teste em Software Se um software não desempenhar a função para a qual ele foi designado podem haver prejuízos materiais consideráveis e, pior ainda, perda de vidas humanas! Por isso o teste de software é essencial em praticamente todas as aplicações, principalmente: –Nuclear –Espaço –Aeronáutica –Finanças (Projeto SCAF) –Militar 1.1a.35/35CE Profs. Vieira Dias, Cunha e Lineu (c)


Carregar ppt "1º SEMESTRE PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELETRÔNICA E COMPUTAÇÃO – PG/EEC-I – ITA 1º SEMESTRE 2013 CE - 229 Teste de Software - Aula 01-1 CE-229."

Apresentações semelhantes


Anúncios Google