Tuesday, October 20, 2009

Bringing the consumer into SOA

Today, Vikas Jain from Oracle has a great blog post coining Consumer Oriented Service Architecture (COSA) . Vikas's assertion is that SOA should not be only focused on the services. Instead, the consumer should be taken into account. He makes a very good point - even the name "Service Oriented Architecture" means that it's easy to think only about services, and forget that often you wish to make policy decisions based on the consumer. For example - if a client has accessed a service via a particular social networking site, then factor this into the service response. Or, throttle service usage based on the consumer, or attributes of the consumer (account status, whether they are using a mobile device), rather than just basing the traffic management rules on the service itself.

In many ways, the consumer has always been missing from discussions of SOA. Products such as Vordel's XML Gateway can apply policies based on consumers, but the standards lag this. That is because many of the standards are focused only on the services, rather than the consumer. WS-Policy and WS-SecurityPolicy are about policies applied to services. WS-ReliableMessaging also focuses on services. Arguably, the only standard which explicitly incorporates aspects of the consumer, such as attributes, is XACML.

I'm looking forward to Vikas's talk at VordelWorld next month, where I'm sure he'll be expanding on these ideas.