Tuesday, July 05, 2005

Clarifying SOA

In this post on SOA, I am of course referring to the term "SOA" - the acronym. It has become, sadly, meaningless through lack of industry consensus.

This is not to say that what I consider to be an SOA is DOA. Far from it :-) However, I do find myself searching for an alternative term for it these days because the SOA term has become diluted to be point of content-freeness.

I've written about the bits that I believe are criical to make the term SOA mean anything in the past. In ultra summary form:

  • Services are business processes that exchange documents to get their work done

  • The document exchange is temporally decoupled.

  • The documents have shared semantics expresed in a combination of human (narrative) and machine readable (XML) form.

  • Documents express business level intent. For example, "Here is a purchase order" rather than "add_purchase_order(...)".

  • Services are "connected" via protocols for asynchronous document exchange, not for synchronous functionality invocation.

No comments: