This document discusses service-oriented architecture (SOA) and related concepts. It defines SOA as a software design pattern based on discrete software modules called services that collectively provide application functionality. SOA allows services to easily cooperate over a network through standardized communication. The document outlines the evolution of SOA from earlier paradigms like object-orientation, different types of SOA, and key SOA concepts like loose coupling and interoperability. It also discusses merits and limitations of the SOA approach.