Resources & Links
Foundational SOA reference material and academic resources
Articles, News & Weblogs
Analysis, commentary, and ongoing coverage of SOA trends
SOA Load Testing
Testing methodologies, tools, and best practices for SOA services
Products, Tools & Services
Enterprise SOA platforms, implementation guides, and tooling
Frequently Asked Questions
What is service-oriented architecture (SOA)?
SOA is an architectural style in which business capabilities are exposed as reusable, loosely coupled services with well-defined contracts, typically communicating over standard protocols such as SOAP and REST and often mediated by an enterprise service bus.
Is SOA still relevant today?
Yes, in many enterprises. Existing SOA estates, web services and ESBs still run core systems, and SOA ideas such as service contracts, governance and reuse carry into microservices, API management and event-driven integration. New systems often favour microservices or event-driven designs.
How do I decide between SOA and microservices?
Use SOA-style shared, governed services when many applications must reuse enterprise capabilities and a central integration layer is acceptable. Use microservices when small teams need independent deployment and scaling. See the Microservices Architecture and Software Architecture Patterns pages on this site.
What is the difference between SOA and microservices?
SOA usually shares coarse-grained services across the enterprise, with central governance and an ESB. Microservices favor small, independently deployable services with decentralized data and governance. Many organizations evolve from SOA toward microservices.
What is an enterprise service bus (ESB)?
An ESB is middleware that routes, transforms and mediates messages between services and applications. It was central to classic SOA, and today's integration platforms, API gateways and event brokers often take over its role.
What is the difference between orchestration and choreography?
Orchestration uses a central coordinator that controls the sequence of service calls. Choreography has each service react to events and interact with peers without a central controller.
How do you test an SOA application?
SOA testing covers service contracts (WSDL/OpenAPI), functional, integration, security and performance testing, often using service virtualization to simulate unavailable dependencies. See the SOA Load Testing section for guides.