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