Service-Oriented Architecture (SOA) is an approach for abstracting enterprise software capabilities as reusable services in order to support more flexible business processes and ideally, more agile organizations. SOA was one of the hottest topics in information technology (IT) back offices and enterprise vendor marketing departments for a number of years back in the 2000s.
However, in retrospect the original promise of SOA was largely unrealized at that time. Vendors used the approach to sell middleware, which led to expensive and difficult implementations. The architectural focus on improving IT and organizational governance in order to achieve greater levels of business agility was largely subsumed into the technical minutiae of enterprise integration.