Saturday, July 21, 2007

SOA: The Human Angle

Most discussions on SOAs assume an architectural model in which services are provided by software and these services are in turn consumed by clients (e.g. user interfaces) or are orchestrated by a process engine. A good example of this type of thinking has been recently published by a set of authors from IBM in IEEE IT Pro. In their article, “S3: A Service-Oriented Reference Architecture” they describe a metamodel which:
“ … captures architectural building blocks … as well as the relations among these blocks and among layers, interaction patterns, options, and architectural decisions.”.
However , although most of these SOA models talks about business processes they give scant attention to the role of humans within those process. For instance, at one stage in a credit process we might need someone to approve the loan. Effectively this means that the approver is providing a service – deciding on loans using their experience and intelligence. In the IT Pro article we come across this statement:

“An SOA ... would support that process by creating a composite service that choreographs the information flow among a set of services and human actors”
But that’s it. How the human actors are actually integrated into the SOA is not explained. This is fairly typically for most of the literature in this area which assumes an architectural model such as:

I was therefore interested to see that the BPEL4People draft specification has been recently published by a consortium of companies with the intent of getting this ratified by OASIS as a WS-* specification. BPEL4People is a set of extensions to the BPEL specification that address scenarios in which humans are involved in business processes. How it does this from an architectural point of view I’d like to explore in my next entry.

No comments: