Web services paradigm is allowing applications to electronically interact with one another over the Internet. The business process execution language (BPEL) takes this ion to a higher level of abstraction by enabling the development of aggregate Web services. However, the autonomous and distributed nature of the partner services in an aggregate Web service present unique challenges to the reliability of the composite services. In this paper, we present an approach where existing BPEL processes are automatically instrumented, so that when one or more of their partner services do not provide satisfactory service (e.g., because of a service being overwhelmed, crashed, or because of a network outage), the request for service is redirected to a proxy Web service, where the failed or slow services are replaced by substitute services.