SOA

SOA (service oriented architecture) is not a product, although several vendors offer products which can form the basis of a SOA. Rather, SOA is an architecture for building software whose goal is to achieve loose coupling among interacting software agents. In less technical terms, your DVD player is an example of SOA. If you want to play it, you put your DVD into the DVD player and the player plays it for you. The DVD player offers a DVD playing service. This is good, because you can replace one DVD player with another. You can also play the same DVD in a portable player or even in friend's DVD player. All of these players offer the same DVD playing service, but the quality of service is different. That's SOA. The interface definition encapsulates (hides) the vendor and language-specific implementation. A SOA is independent of development technology (such as Java and .NET). The software components become very reusable because the interface is defined in a standards-compliant manner. So, for example, a C# (C Sharp) service could be used by a Java application. The promise of SOA is that it should help businesses respond more quickly and cost-effectively to changing market conditions through the use of existing IT assets rather than more time consuming and costly new development.