Software Fault Tolerance Techniques And Implementation by