Within a computing system that includes a service implementation of a web service contract document, which defines how the service implementation is to communicate with a particular service, a method of automatically changing at least a portion of the service implementation in response to changes in the web service contract document, the method comprising: an act of receiving a web service implementation that has been constructed in accordance with a first web service contract document that describes how the web service implementation is to communicate with one or more services; an act of receiving a second web service contract document, which defines one or more changes to the first web service contract that affect the behavior of the web service implementation in such a way that the web service implementation cannot communicate with one or more endpoints that expect the second contract to be implemented; an act of identifying the one or more changes between the web service implementation and the second web service contract document, by comparing, for each operation of the second service contract document, a name of the operation with names of methods of the web service implementation and determining if the name of the operation matches a method name in the web service implementation; and based on the one or more changes identified, a step for automatically modifying at least a portion of the web service implementation to conform at least partially with the second web service contract document, including, for each operation of the second service contract document: when the operation name in the second contract matches a method name in the web service implementation, then determining if the method is exposed as a web service operation; and when the method is not exposed as a web service operation, then exposing the method by adding a web method attribute to the unexposed method. an act of receiving a web service implementation that has been constructed in accordance with a first web service contract document that describes how the web service implementation is to communicate with one or more services; an act of receiving a second web service contract document, which defines one or more changes to the first web service contract that affect the behavior of the web service implementation in such a way that the web service implementation cannot communicate with one or more endpoints that expect the second contract to be implemented; an act of identifying the one or more changes between the web service implementation and the second web service contract document, by comparing, for each operation of the second service contract document, a name of the operation with names of methods of the web service implementation and determining if the name of the operation matches a method name in the web service implementation; and based on the one or more changes identified, a step for automatically modifying at least a portion of the web service implementation to conform at least partially with the second web service contract document, including, for each operation of the second service contract document: when the operation name in the second contract matches a method name in the web service implementation, then determining if the method is exposed as a web service operation; and when the method is not exposed as a web service operation, then exposing the method by adding a web method attribute to the unexposed method. when the operation name in the second contract matches a method name in the web service implementation, then determining if the method is exposed as a web service operation; and when the method is not exposed as a web service operation, then exposing the method by adding a web method attribute to the unexposed method.