Testes (verificação e validação) Engenharia de Software Docente: Isabel Brito 3964 – César Melro 4383 – Nuno Varela Âmbito do trabalho Introdução Em que consiste a verificação e a validação Descrição Técnicas associadas à verificação e validação Vantagens e desvantagens Exemplo Conclusão 3964 – César Melro 4383 – Nuno Varela Introdução Um produto com zero defeitos tem um índice elevado de qualidade? Vai ao encontro da expectativa e requisitos do cliente? Funciona correctamente no ambiente de exploração? Integra correctamente todos os componentes? Serão as respostas a estas perguntas, conceitos de Qualidade de Software? 3964 – César Melro 4383 – Nuno Varela Em que consiste Verificação – conjunto de acções em que o objectivo é certificar se o modelo conceptual foi transcrito adequadamente quando do uso da linguagem de simulação ou programação. Validação – procedimentos para certificar se os valores gerados pelo modelo apresenta coerência com os gerados pelo sistema real. 3964 – César Melro 4383 – Nuno Varela Verificação O principal objectivo da verificação, é demonstrar que o produto está correctamente construído, executando as seguintes tarefas: Verificar se o produto está completo; Verificar se o produto está consistente; Verificar se o produto é preciso; Verificar se o produto é conforme face aos standards adequados. 3964 – César Melro 4383 – Nuno Varela Verificação Também se pode executar a verificação de produtos através das seguintes práticas: Revisões e/ou inspecções; Protótipos; Simulações; Testes (funcionais, segurança, etc.…). 3964 – César Melro 4383 – Nuno Varela Validação A validação tem como objectivo demonstrar que o produto irá cumprir com a utilização pretendida no ambiente de exploração, considerando os seguintes aspectos: Analisar se o produto era necessário; Analisar a qualidade do produto; Analisar se está conforme os standards; Analisar se está de acordo com a especificação; Analisar se atinge o objectivos quando colocado no ambiente de exploração. 3964 – César Melro 4383 – Nuno Varela Validação A validação de produtos também pode ser executada através das seguintes práticas: Revisões e/ou inspecções; Testes (aceitação). 3964 – César Melro 4383 – Nuno Varela Técnicas associadas As técnicas de análise envolvem três grandes classes: análise estática; análise dinâmica; análise formal. 3964 – César Melro 4383 – Nuno Varela Técnicas associadas Análise estática – analisam a forma e a estrutura do produto com base nos peer reviews, auditorias e análise de fluxo de dados. Análise dinâmica – execução ou simulação do produto para detectar problemas na introdução de dados. Análise formal – é mais complexa, menos usada e dispendiosa, por recorrer a técnicas matemáticas de análise de algoritmos. 3964 – César Melro 4383 – Nuno Varela Técnicas associadas As técnicas mais usadas na verificação e validação são: Peer Reviews Testes de Sistema Análise de produtos recorrendo à realização de inspecções e revisões. Monitorizam e controlam a qualidade funcional do produto. Testes de Aceitação Validar o produto em relação ao cumprimento do funcionamento 3964 – César Melro 4383 – Nuno Varela Técnicas associadas Peer Reviews Verificar se satisfazem as especificações estabelecidas; Identificar desvios dos standards; Sugerir melhorias ao autor; Partilhar técnicas e experiências. 3964 – César Melro 4383 – Nuno Varela Técnicas associadas Testes de Sistema Correcto funcionamento do sistema; Comunicação entre os diversos componentes; Funciona de acordo com os requisitos estabelecidos; As mudanças num dos componentes não pode afectar outro componente. 3964 – César Melro 4383 – Nuno Varela Técnicas associadas Testes de Aceitação Vocacionados para verificar o cumprimento dos requisitos de funcionamento; Podem ser feitos pela equipa de projecto ou, caso assim queira, pelo cliente num ambiente de testes; A equipa de projecto pode decidir a entrega do produto ao cliente, mediante a aceitação do mesmo. 3964 – César Melro 4383 – Nuno Varela Vantagens e desvantagens Vantagens Desvantagens Exemplo Execução da execução das actividades de verificação e de validação durante as principais fases do ciclo de vida do desenvolvimento do produto 3964 – César Melro 4383 – Nuno Varela Conclusão A verificação e a validação, como parte integrante dos testes, são duas disciplinas complementares, devendo ser executadas continuamente durante as diversas fases do ciclo de vida do desenvolvimento do produto. Sendo feitas em simultâneo, aumentam a probabilidade de satisfazer os requisitos estabelecidos, contribuindo para o sucesso e satisfação das expectativas do cliente. 3964 – César Melro 4383 – Nuno Varela Referências http://www.sinfic.pt/SinficNewsletter/sinfic/Newsletter86/index86.html http://www.inf.fesurv.br/~bruno/disciplinaES/arquivos/aulas/aula05.pdf http://www.inf.pucrs.br/~respindola/4620A-168/ver_e_val.pdf 3964 – César Melro 4383 – Nuno Varela Testes (validação e verificação) FIM