I've been asked to present to a major financial institution which has bought into Service Oriented Architecture in a big way. They have a number of projects underway based around web services, Service Orientation and Orchestration. They clearly have a lot of expertise in these areas but want to discuss what the infrastructure that supports these SOA projects looks like. This is a request that I have heard a number of times recently from large organizations who understand the advantages of SOA, are building Service based systems but don't have a clear vision of plan for what those SOA systems should be built on.
It seems to me that what these organizations is looking for is a Service Oriented Infrastructure (SOI) to support their Service Oriented Architecture. This includes areas such as the base platform, networking, SANS, clustering, virtualization, security, identity and access control, SO middleware, deployment, auditing, metering, instrumentation, monitoring and management. These are the same areas that are covered by the definition of Infrastructure Architecture I blogged about yesterday, but with the goal of supporting an SOA implementation.
I group the elements of a SOI into three areas: Platform (networking, OS, Data, virtualization, middleware), Access control (security, identity management) and Management (deployment, provisioning, instrumentation, metering, monitoring, auditing and management).
So a definition of Service Oriented Infrastructure would be:
A Service Oriented Infrastructure (SOI) is the set of basic computing elements which are common across an organization and configured in such a manner to support a Service Oriented Architecture.
Does this seem reasonable? Again after a period for cogitation and feedback I will post to wikipedia.