FAULT DETECTION AND LOCALIZATION TECHNIQUES FOR CONCURRENT PROGRAMS