SOA frameworks are provided by all of the large software applications companies, including IBM, Oracle, SAP, Microsoft, BEA, etc., and have been integrated into most recent application suites.
A related term is “Software-as-a-Service” (Saa S), in which the service, such as part catalog management, has been packaged for use through resources within your organization such as web browsers, but is physically located remotely.
The evolution is typically carried out on a per-application, per-module, or per-service basis.
Organizations should create a roadmap of services, modules, and applications that they have and intend to move to an SOA model, typically selecting them on a basis of scalability and flexibility, and then carry it out over time, by implementing new portions of the enterprise.
The W3C members include software firms such as IBM and Microsoft, as well as university and government representatives (remember that the Internet came from university and government).
A similar example is that the SQL database standards are now managed by an ANSI committee.
Distributed computing is a model in which the processing of the application is split over a number of computer systems.
Typically the shift to the SOA model is done by the software application providers, rather than on a one-off basis by custom development.
For instance, you might bring in a new order management or demand management application that has a SOA approach (as indicated below, the major enterprise suites already incorporate SOA aspects), or integrate a new procurement or performance management application as a remote Saa S application.
There is also a restructuring or partitioning of applications required for SOA, which in many cases is built around a description of the business processes within and across the applications.
Many organizations have not thought through the business processes clearly enough to enable such partitioning.