When implemented via Web services, the primitive (basic) SOA model provides little in the way of standardized mechanisms for reliability, security, and transaction management. Second-generation specifications and frameworks, such as WS-ReliableMessaging, WS-Security, and WS-Coordination (in association with WS-AtomicTransaction and WS-BusinessActivity) attempt to address these deficiencies in an industry-standard manner. In doing so, they intend to enable a Web services-based SOA to provide a level of QoS comparable to what traditional RPC-based distributed systems have been providing for years.
However, the support and adoption of these key specifications is not yet industry-wide. That is why providing an increased level of QoS is a characteristic of what I call "contemporary SOA", as opposed to the baseline primitive model that is widely supported. In the immediate future, the extent to which you can achieve an acceptable level of QoS with a Web services-based SOA will vary depending on which vendor platform you are building on. Watch out, though, for proprietary extensions that may limit your ability to transition toward future industry standards.
This was first published in December 2005