What Technologies Makes Up an SOA?

My boss’s boss asked if our architecture team could put together a list of what technologies and concepts typically comprise a service oriented architecture, so I compiled a collection of items and organized them by category.  I then evaluated whether we had such a technology in house, and if so, did we actively use it.  While you don’t care about those latter criteria, I thought I’d share (and ask your opinion of) my technology list.

Is this fairly complete?  Is anything missing or mischaracterized?

Category Technology Description Toolset Examples
Standards XML Markup language for defining the encoding of structured data sets Application platforms, database platforms, COTS packages
SOAP Protocol specification for exchanging XML data over networks Application platforms, COTS packages
WSDL XML language for describing web service contracts Application platforms, COTS packages that expose WSDL, IDE tools such as XmlSpy for hand-crafting WSDL documents
WS* Set of web service standards of varying maturity that address message routing, security, attachment encoding, transactions and more. COTS packages such as SAP, application platforms such as Microsoft WCF
RESTful Services Architectural style with a focus on resource orientation and interacting with the state of that resource through traditional HTTP verbs .NET Framework 3.5+
Design Service Modeler Graphical tools for modeling SOA solutions WebSphere Business Modeler, Mashup Tools
Data Enterprise Entity Definitions Computable representations of shared entities that may span multiple source systems XSD, DDL
Reference Data Architecture Three components made up of: (a) Operation Data Stores for logical entity definitions that act as “real time data warehouse” consisting of both real-time and batch updated data (b) Data marts for data subset analysis, and (c ) Data Warehouse for enterprise data storage and analysis Oracle, Teradata, SQL Server
Enterprise Information Integration (EII) Virtual integration of disparate data sources Composite
Data Service Interface Generation Application for generating interfaces (SOAP/batch) on existing data repositories BizTalk Server 09, .NET Framework, Composite
Enterprise Service Bus Reliable message routing, transformation, queuing and delivery across disparate technologies BizTalk Server 09, Tibco, Sonic
Application Adapters Connectivity to cross-platform systems via configuration and/or abstract interfaces BizTalk Server 09, BizTalk Adapter Pack (Siebel, SAP, Oracle)
ETL Application Bulk data extraction, cleansing and migration between repositories.  Frequently needed for consolidating data in the ODS Informatica, SSIS
Infrastructure Application Platforms Libraries for building SOA solutions .NET Framework, Java EE
XML Gateway (Accelerators) Focuses on SOA security and performance issues; typically a hardware appliance WebSphere DataPower; Layer 7
Complex Event Processing Engine Concept where distinct application or system events are correlated with the goal of discovering critical business information in real time Microsoft StreamInsight, Tibco, Oracle CEP
Single Sign On Single set of authenticated credentials can be converted to system-specific credentials without user intervention Siteminder
Data Quality Services Used to cleanse data and validate data quality DataFlux
Load Balancing Hardware or software solution which sits in front of physical web servers and is responsible for distributing load F5; SOA Service Manager
Web Hosting Platforms Environment to making web services available to consumers Microsoft IIS, Oracle WebLogic
Process Integration BPM Server Tooling that supports the modeling, simulation, execution, monitoring and optimizations of business processes BizTalk Server 09Lombardi
Business Rules Engine Software system for maintaining business rules outside of compiled code Microsoft BRE,           Oracle
Orchestration Services Arrangement of services into an executable business process often designed through a graphical model BizTalk Server 09
Business Activity Monitoring Aggregation of activities, events and data that provides insight into organization and its business processes BizTalk Server 09
Service Management XML Service Management (XSM) A platform independent system for administering, mediating and monitoring services SOA Service Manager
Repository Metadata repository for service definitions SOA Service Manager
UDDI-compliant Registry Interface for runtime infrastructure to discover and bind to service endpoints SOA Service Manager
Runtime Policies Attach attributes to service (or operation) that dictates how the service request is secured and processed SOA Service Manager
SLA Enforcement Define acceptable web service availability with customizable rules consisting of alert code, metric to monitor and an interval SOA Service Manager
Access Control Contracts Limit usage of service based on distinct number of allowable attempts, time of day window, or based on caller identity SOA Service Manager
Service Lifecycle Management Stage, status, approvals, dependency tracking, audit trail

SOA Service Manager

Security Authorization Verify user identity through LDAP integration, SAML tokens, x.509 certificates Active Directory, Sun ONE LDAP, SOA Service Manager
Authentication User/group/role at service or operation level SOA Service Manager
Identity Management Central storage of user profile

Any feedback is appreciated!

Technorati Tags:

Author: Richard Seroter

Richard Seroter is Director of Developer Relations and Outbound Product Management at Google Cloud. He’s also an instructor at Pluralsight, a frequent public speaker, the author of multiple books on software design and development, and a former InfoQ.com editor plus former 12-time Microsoft MVP for cloud. As Director of Developer Relations and Outbound Product Management, Richard leads an organization of Google Cloud developer advocates, engineers, platform builders, and outbound product managers that help customers find success in their cloud journey. Richard maintains a regularly updated blog on topics of architecture and solution design and can be found on Twitter as @rseroter.

4 thoughts

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.