SOA and the death of platforms
By
James Kobielus
,
Network World
, 09/06/2004
- Share/Email
- Tweet This
- Print
As high-tech buzz phrases go, service-oriented architecture is vaguer than most. SOA isn't a technology, product, service
or protocol. But it's been mentioned in many marketing pitches lately, promising greater developer productivity and standards-based
interoperability if you buy this vendor's application platform or that one's visual-modeling tool. Over the past three months,
Sun, Oracle, Microsoft and IBM all announced products or initiatives for implementing SOA in their respective environments.
SOA is a substantial and growing body of practical techniques for designing shareable, reusable, interoperable Web services. Just as important, the past few years have seen the emergence of a universal, standardized, SOA-enabling middleware fabric
built on the Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP) and Universal Description, Discovery and Integration.
SOA is a disruptive approach to building distributed services. Until now, we've developed new functionality on and within
concepts such as platform, application and language. Each of these concepts has traditionally had a well-defined sphere of
reference: The platform hosted the application, and the application was developed in a language. Now all that is changing,
thanks to the emergence of SOA.
The first of the old computing concepts to wither away will be the platform. This term originally applied to operating systems,
then included application servers that implement a particular development framework (Java 2 Platform Enterprise Edition or
.Net) over one or more operating systems. But the growth of standards-based, distributed Web services has made it clear that
fewer and fewer business processes will execute entirely within the confines of a J2EE 1.3 server or Windows Server 2003,
or Linux, but will execute across them all. When all platforms share a common environment for describing, publishing and invoking
services, the notion of self-contained platforms disintegrates in favor of SOA, which is essentially a platformless service
cosmos.
Another casualty of this evolution is the notion of applications as discrete, functional components that execute on particular
platforms. SOA is founded on the notion of virtualization. Under this paradigm, services describe abstract interfaces within
standard, platform-independent metadata vocabularies such as WSDL. The underlying service functionality may be provided from
components on any platform without needing to change the interface. Under SOA, the application dissolves into a service that
may have no fixed implementation but simply bids for on-demand networked software and hardware resources.
Comment