Software testing is sometimes described as “verification and validation”—according to Wikipedia “the process of checking that a software system meets specifications and that it fulfills its intended purpose”. Yet, if we examine the concept and logic of verification, we quickly recognize that there are serious limitations to what can and cannot be checked and verified. This is not to say that checking is a bad thing—on the contrary; checking can be very valuable. Still, it’s important for testers and their clients to recognize the fundamental limitations of checking, and to address those limitations in our testing strategies.
In this talk, Michael Bolton will outline the logic of verification and ways in which we might be vulnerable to false premises and misleading conclusions about it. He’ll also identify ways that we can address those problems by embedding verification in a larger system of testing, experimentation and critical thinking.