Service-oriented architecture (SOA) is a software development model that allows services to communicate across different platforms and languages to form applications. In SOA, a service is a self-contained unit of software designed to complete a specific task. Service-oriented architecture allows various services to communicate using a loose coupling system to either pass data or coordinate an activity.
Loose coupling refers to a client of a service remaining independent of the service it requires. In addition, the client — which can also be a service — can communicate with other services, even when they are not related.
SOA benefits organizations by creating interoperability between apps and services. SOA will also ensure existing applications can be easily scaled, while simultaneously reducing costs related to the development of business service solutions.