Doug Kaye writes: “Services are rapidly gaining ground in the IT world as well. Services are a new way of building distributed applications. We have five decades of experience with traditional applications, but just a few years with those built from services.” He considers an example: the calculation of sales tax or VAT.
In traditional applications, the shipping-rate information is obtained via electronic transfer in batch mode, perhaps using FTP. Suppose, instead, that the tax- and shipping-rate data were available over the Internet in real time. And suppose that through the use of web services, the algorithms that computed the tax and shipping rates ran at the sites of their respective vendors rather than at the application’s site.
As compared to the traditional architecture, one based on services has two distinct characteristics. First, the algorithms and data are no longer parts of the application’s local infrastructure, but are located off-site instead. The second and subtler distinction is that integration of changes to the tax- and shipping-rate portion of the application have been deferred until runtime the last possible stage.
In fact, this e-commerce application is now immune to even ignorant of any changes in the rate algorithms or data. There will never be any new code modules or database updates to worry about. The service-oriented architecture has future-proofed the application.
Loose coupling is the way of the future.