Everything about Service-oriented architecture
Architectural pattern in software design
In software engineering, service-oriented architecture (SOA) is an architectural style that focuses on discrete services instead of a monolithic design. SOA is a good choice for system integration. By consequence, it is also applied in the field of software design where services are provided to the other components by application components, through a communication protocol over a network. A service is a discrete unit of functionality that can be accessed remotely and acted upon and updated independently, such as retrieving a credit card statement online. SOA is also intended to be independent of vendors, products and technologies. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Service-oriented architectureA 5-minute orientation
- Skim a recent paper: A Service Oriented Architecture for the Digitalization and Automation of Distribution GridsInfluential work since 2022
- Pick up a classic book: PatternsThe most-reprinted book on the subject
- Read the landmark paper: The Enterprise Service Bus: Making service-oriented architecture realCited 187 times
- Go sideways: MicroservicesA closely related topic
- Go sideways: Service-oriented communicationsA closely related topic
📖 Definitions
Noun A software architectural concept that defines the use of services to support the requirements of software users.
🏆 Landmark papers (most cited)
The Enterprise Service Bus: Making service-oriented architecture real
SODA: Service Oriented Device Architecture
S3: A Service-Oriented Reference Architecture
Service oriented architecture
Web Services, Service-Oriented Computing, and Service-Oriented Architecture
Commitment-Based Service-Oriented Architecture
Implementing Service-Oriented Architecture in Organizations
Service-oriented architecture: Programming model and product architecture
🆕 Influential since 2022
A Service Oriented Architecture for the Digitalization and Automation of Distribution Grids
Blockchain-Based Service-Oriented Architecture for Consent Management, Access Control, and Auditing
A Framework for Service-Oriented Architecture (SOA)-Based IoT Application Development
Service-oriented architecture for Internet of Things: A semantic approach
Decision as a Service (DaaS): A Service-Oriented Architecture Approach for Decisions in Processes
📚 Books worth reading
PatternsIBM Redbooks · 2002- 📕Process-driven SOACarsten Hentrich · 2010
Executing SOANorbert Bieberstein, Robert G. Laird · 2008
Service delivery platformsSyed A. Ahson, Mohammad Ilyas · 2011
Cloud enterprise architecturePethuru Raj · 2012- 📕Power systems and SOA synergyBudi Darmawan · 2008
- 📕Enterprise master data managementAllen Dreibelbis, Eberhard Hechler · 2008
Event-driven architectureAngela Yochem, Les Phillips · 2008
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Microservices In software engineering, a microservice architecture is an architectural pattern that organizes an application into a collection of loosely coupled, fine-graine…
- Service-oriented communications Service-oriented communications (SOC) technologies are designed to be easily used in the context of service-oriented architectures. These technologies…
- Web service A web service (WS) is either: a service offered by an electronic device to another electronic device, communicating with each other via the Internet, or…
- Service granularity principle In software engineering and software architecture, service granularity is a design concern in service-based systems, including service-oriented architecture…
- Web Services Discovery Web Services Discovery provides access to software systems over the Internet using standard protocols. In the most basic scenario there is a Web Service…
- Mashup (web application hybrid) A mashup (computer industry jargon), in web development, is a web page or web application that uses content from more than one source to create a single…
- XML appliance An XML appliance is a special-purpose network device used to secure, manage and mediate XML traffic. They are most popularly implemented in service-oriented…
- Loose coupling In computing and systems design, a loosely coupled system is one in which components are weakly associated (have breakable relationships) with each other…