In its simplest form, Service-Oriented Architecture (SOA) is the process of building scalable distributed systems that treat all software components as services. SOA provides the framework for independent services to interact with each other across a network. This allows a complex distributed system to be assembled quickly and cost-effectively from individual services. SOA is most commonly implemented using Web service technologies.
A service is re-usable, easy-to-program, and independent of programming language or platform. It can be best thought of as a reusable application function, used as a component in a business process. A service is able to provide this function over and over again to various service requesters. It is this ability to reuse the service, and the practice of breaking down each business process into a series of services, that generates the efficiency benefits of a SOA.