Service-Oriented Architecture Components
All of the elements of service-oriented architecture (SOA) are arranged to connect through business processes to deliver a precise level of service. SOA develops a basic arrangement of components that can collectively administer an intricate business service.
To understand the layout of SOA, take a look at this flowchart of service-oriented architecture components:
To help keep things in the chart straight:
Adapter: A software module added to an application or system that allows access to its capabilities via a standards-compliant services interface.
Business Process Modeling: A procedure for mapping out what the business process does both in terms of what various applications are expected to do and what the human participants in the business process are expected to do.
Enterprise Service Bus: The enterprise service bus is the communications nerve center for services in a service oriented architecture. It tends to be a jack-of all-trades, connecting to various types of middleware, repositories of metadata definitions (such as how you define a customer number), registries (how to locate information), and interfaces of every kind (for just about any application).
Service Broker: Software in a SOA framework that brings components together using the rules associated with each component.
SOA Governance: SOA governance is an element of overall IT governance and as such lays down the law when it comes to policy, process, and metadata management. (Metadata here simply means data that defines the source of the data, the owner of the data, and who can change the data.)
SOA Repository: A database for all SOA software and components, with an emphasis on revision control and configuration management, where they keep the good stuff, in other words.
SOA Service Manager: Software that orchestrates the SOA infrastructure — so that the business services can be supported and managed according to well-defined Service Level Agreements.
SOA Registry: A single source for all the metadata needed to utilize the Web service of a software component in a SOA environment.