Objectives and approaches
The first objective of any set of tests must be to show that the system does what it was designed to do. This means
does it perform the necessary functions correctly?
does it perform its function within the required time specification?
are there any circumstances, normal or unusual, under which it can get into a forbidden state from which it can only recover by drastic action (e.g. system reset)?
The above presumes that any fault or group of faults which could possibly occur would affect the operation of the system. If a fault or faults do not affect the operation then there must be some logic which is redundant. It will be assumed that none of the logic is redundant.
On the further assumption that the design is good, a second objective is to be capable of detecting any fault or group of faults within that system. However, there is some debate as to the level of detail into which it is necessary to go and this will be the subject of further discussion. The distinction between simulation testing and testing the manufactured hardware was made in Section 3.1.2.
Faults in the design, as opposed to those which occur in production, cannot be ‘modelled’ in the usual sense of the word. A network description is entered into the simulator and this is a model of the network. If, as a result of simulation, outputs are obtained which are different from those expected from considering the specification, then the network as described to the simulator is fault.