This article will show you how the two concepts of Component Architecture and Service Oriented Architectures (SOA) might fit together within an environment without having to decommission all the work done using the principles of component architecture. The premise of SOA is to not have developers adopt a rip and replace philosophy to upgrade mission critical systems but to make those systems more accessible to business users and make them easier to maintain.
The Tenets of Component Architecture
First, here is a brief recap of the tenets of component architecture that are still applicable to the SOA paradigm. These include constructs such as the separation of the top-level interface from the implementation, use of standardized protocols to transmit messages from the component, having access to robust plumbing and integration utilities available in standardized application server containers, and so forth. All of these made the component architecture programming model more efficient and less error-prone.
However, a major limitation of the component-based distributed architecture implementation was that components were syntactically bound to specific implementation languages. This language dependence forced the providers and consumers to come to a design-time agreement on the message formats/parameters being shared and the component interface code fragment being called to make the "remote call," thus forcing component-based interactions to become tightly coupled.
SOA Enters the Picture
Read the Rest of this Article at Developer.com