Principals of Service oriented Architecture (SOA)

Service Oriented Architecture (SOA) is an information technology approach or strategy in which applications make use of services available in a network. It is a way of sharing functions in a widespread and flexible way. SOA is essentially a collection of services. These services communicate with each other. The communication can involve either simple data passing or it could involve two or more services coordinating some activity.

SOA is a “view” of architecture that focuses in on services as the action boundaries between the needs and capabilities in a manner conducive to service discovery and repurposing.





Service-oriented architecture can be implemented by using web services as one or both of the service provider and the requester. These architectures have a number of benefits, including quicker and more cost-effective responses to changing market conditions. SOAs can also simplify connections to legacy IT systems. SOAs also have a number of challenges in implementation, such as managing the large number of services and how they interact with each other. There are also concerns about lack of testing and security levels of services. Additionally, SOA vendors are eager to sell their products and clients may not fully understand what they're getting into.

Overall, service-oriented architecture is a widely-used technology that is changing the way large businesses function today.


1.    Explicit Boundaries

2.    Shared Contract and Schema, not Class

3.    Policy-driven

4.    Autonomous

5.    Wire formats, not Programming Language APIs

6.    Document-oriented

7.    Loosely coupled

8.    Standards-compliant

9.    Vendor independent

         10. Metadata-driven

Next Recommended Reading Create WCF Service In Visual Studio 2017