Muchas personas se preguntan si el análisis estático de código es una verificación o validación, pero muchas más personas no saben la diferencia entre las dos y por eso no saben cuando una técnica o herramienta es de un tipo u otro.
Pues para resumir, verificar es un proceso de calidad en el cual revisamos si el producto final y sus artefactos intermedios cumplen con los estándares ó póliticas de la organización; por el contrario validación es revisar si el producto y sus artefactos intermedios cumplen con las necesidades del cliente.
Todo se resume mejor en la siguiente imagen:
Pregunta:   ¿Un producto puede ser verificado satisfactoriamente pero no validado?
Respuesta: Si. De hecho es uno de los casos más comunes en desarrollo de software, en el cual se ejecuta un proceso correctamente cuyo resultado técnico no cumple los requerimientos o no satisface al cliente.
Estos conceptos son usados por muchos como un término umbrella, de ahí la célebre pero confusa pregunta:
Verification: “Are we making the product properly?”
Validation – “Are we making a proper product?”
Finalmente podemos concluir que el análisis estático es una verificación
Saludos,
Javier Andrés Cáceres Alvis