In this lecture we will be talking about the software testing, specially we will concentrate on the practical aspects of the software testing. Moreover we will also introduce something about the models.
The first issue that I would like to constate is the following. Do you trust an auto-pilot of a reactor control program that you have written? Or, you have crucial software written by your friend. You are not very confident of yourself. Do you trust that sort of a software? Or, let us say that you an expert system, which is going to diagnose and treat people, a medical expert system. Would you like to alterate for a critical illness, say something like cancer? If we could say "yes", I think we have some sort of a trust in the software we are just looking at. If our answer is "no", probably we are not very sure about the software. We would not be very clear about it. So this means, probably we may have to test it. If we do not really trust a software, that means we have to really test it, or we are not very confident of the software. So the normal answer for this is "no".