Preparing for Service-Oriented Computing: an abstract design for truly stubless Web service invocation The ability to dynamically bind to Web services at runtime is becoming increasingly important as the era of Service-Oriented Computing (SOC) emerges. With SOC selection and invocation of Web service partners will occur in software at run-time, as opposed to by software developers at design and compile time. Unfortunately, the marketplace has yet to yield a predominate applications programming interface for the invocation of Web services. This results in software that is deeply ingrained with vendor-specific calls. This is problematic because Web service technology is changing at a rapid pace. In order to leverage the latest developments, code often needs to be heavily refactored to account for changing invocation interfaces. This paper explores the mitigation of this problem through the application of software design patterns. Specifically, it details how our design approach, based upon the composition of software design patterns, provides for implementations that insulate the application code from the peculiarities of any specific vendor's interface.