? Validação e verificação ( V & V) é o processo usado para garantir que um projeto de engenharia de software atinja os seus objetivos de projeto. A verificação é usado para testar se ou não de um software de trabalho em andamento em uma determinada fase do desenvolvimento atinja os seus objetivos , e de validação é usado para testar se ou não um projeto de software concluída atinja os seus objetivos . Existem dois processos de validação e verificação : verificação e teste. O teste é Aprender
teste pode ser descrito como explorar as características de uma peça de software. Os engenheiros de teste criar experiências para ver o que o software pode e não pode fazer. Isso , muitas vezes, revelam um comportamento inesperado em cenários de uso do mundo real , permitindo que os engenheiros de teste para relatar de volta para os engenheiros de projeto . Os engenheiros de projeto pode, então, estudar o código fonte e tentar entender o que causou o comportamento inesperado, e como corrigi-lo .
Verificação é Confirmação
verificação é usado para confirmar que o software executa uma tarefa específica corretamente. O cheque pode ser tão simples como uma instrução Assert , que tanto passa ou falha quando uma condição é verificada . Se um desenvolvedor de software acredita que algo seja verdade ( que x é igual a 5 , por exemplo) , ele pode criar uma verificação para validar a veracidade dessa crença . Se a verificação falhar , então algo está causando o software a se comportar de forma inesperada.
Verificação pode ser automatizado
Verificação pode ser automatizado. A linguagem de programação C tem a frase " fazer valer " embutida nela . Se você está projetando um pedaço de software e esperar que uma determinada condição em um determinado estágio na execução do programa , você deve incluir uma instrução Assert . Se a declaração falhar , o programa trava . Isto diz-lhe que suas suposições são defeituosos , e que não é um bug em seu código.
O teste não pode ser automatizado
Teste deve ser feito por seres humanos. Não há construções de programação que podem testar um software da mesma forma um ser humano pode. Teste envolve experiências com software e registro dos resultados. Trata-se de colocar o software através do uso do mundo real , o que exige um ser humano. Teste permite que a equipe V & V para descobrir os erros que a verificação teria perdido .