This refers to the process of uncovering errors in programs thus enabling them to be rectified.
Issues that are likely to cause system failure:
1. Poor test data
This may result in errors going undetected thus resulting in a system full of undetected errors.
2. Poor planning
Lack of a testing strategy could result in too little time being allocated to testing thus resulting in incomplete testing. A poorly tested system would thus be liable to failure.
3. Lack of cooperation from end users in producing test cases
This would result in poor test data and hence a poor system.
4. Bias towards certain system aspects and neglect of other system aspects
Neglect of system modules during testing could compromise the quality of the system thus making it liable to failure.