How it works: SOA

Service-oriented architecture (SOA) is a term you may have heard talked about a lot lately. Chances are you’re more familiar with it than you might think. In fact, if you’re frequent visitor to w3 or like to shop online, you’ve already reaped the benefits of SOA.

SOA is an architectural style that allows Web services applications to interoperate dynamically with one another -- even when any given combination of services was not necessarily written with one another in mind. Rather than trying the impossible task of anticipating every conceivable collection of services and hand-tailoring each combination for interoperability, applications in a SOA are “loosely coupled,” that is linked not to one another specifically, but through standard Internet protocols (like XML, HTTP, SOAP, WSDL and UDDI).

Service-oriented architecture helps hide the IT complexity inherent in even seemingly simple interactions. Let’s say you order a book online and a few days later it’s delivered to your doorstep. While it sounds simple, it’s anything but.

Here are but some of the operations that come into play: Once you place the order, your identity must be authenticated, your charge card validated, your order acknowledged by e-mail, the order sent to a distributor, the book located and boxed for shipping, e-mail notification that your order has shipped, hand-off to the shipper (at which point the shipper’s supply chain management system tracks the movement of the purchase) and finally delivery and acknowledgement of receipt. Each of the many applications used in this “simple” transaction performs a service that is orchestrated increasingly by SOA.
SOA isn’t really new, but the availability of more and improved Web services applications is making SOA much more powerful and easier to implement.