Prévia do material em texto
INSTITUTO FEDERAL DA BAHIA - CAMPUS SAJ CURSO SUPERIOR EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ENGENHARIA DE SOFTWARE II PROFESSOR: FLÁVIO PEREIRA ALUNO: ALBERT SILVA DE JESUS LISTA DE EXERCÍCIO 1. Explique por que um programa não precisa, necessariamente, ser completamente livre defeitos antes de ser entregue a seus clientes. R: Os testes não podem demonstrar se o software é livre de defeitos ou se ele se comportará conforme especificado em qualquer situação. É sempre possível que um teste que você tenha esquecido seja aquele que poderia descobrir mais problemas no sistema. 2. Explique por que os testes podem detectar apenas a presença de erros, e não sua ausência. R: O teste é destinado a mostrar que um programa faz o que é proposto a fazer e para descobrir os defeitos do programa antes do uso. Os resultados do teste são verificados à procura de erros, anomalias ou informações sobre os atributos não funcionais do programa. O teste é parte de um amplo processo de verificação e validação (V&V). 3. Algumas pessoas argumentam que os desenvolvedores não devem ser envolvidos nos testes de seu próprio código, mas que todos os testes devem ser de responsabilidade de uma equipe independente. Dê argumentos a favor e contra a realização de testes pelos próprios desenvolvedores. R: Os desenvolvedores vão testando os módulos ao decorrer do desenvolvimento, teoricamente eles acreditam que está funcionando. Ao testar partes mais avançadas da fase de testes, podem acabar passando por módulos ou itens que poderiam ser importantes para detectar bugs ou erros, porém eles já possuem um conhecimento profundo do software, facilitando os testes e otimizando o trabalho dos desenvolvedores. 4. Explique como o uso universal da Internet pode ter auxiliado nos testes de sistemas de software. R: Com o avanço da internet, os desenvolvedores conseguem testar o software de forma rápida, reduzindo o risco e o custo corrigindo defeitos com antecedência. Exemplo: A Selenium é a ferramenta mais popular e usada do mercado. Esta ferramenta é usada principalmente para aplicações Web, ela permite criar scripts de automação de testes mais complexos e avançados, gravar e reproduzir. O testador pode usar estas funcionalidades até mesmo se estiver aprendendo a usar o Selenium.