I was pleased to see Sam's kind word ("excellent") regarding Web-Oriented Architecture (WOA), despite the caveat ("as far as [it] goes"). While I greatly appreciate Dion's evangelization of WOA (see my comments), I coined WOA (for better or worse--since I loath coining unnecessary acronyms) as part of my research agenda. Accordingly, I think it appropriate to reassure Sam that his caveat ("There is a term that you won’t see in the body of Dion’s post"--hyperlink) is unnecessary. His observation that WOA does not highlight hyperlinking is incorrect. In fact, the primary architectural constraint espoused by WOA is that all resources be "globally linked". Here is the definition (or description if you prefer) of WOA:
Web Oriented Architecture:
* Long version: WOA is an architectural style that is a substyle of SOA based on the architecture of the WWW with the following additional constraints: globally linked, decentralized, and uniform intermediary processing of application state via self-describing messages.
* Short version: WOA = SOA + WWW + REST
And for the sake of completeness, here is the definition of SOA:
Service-Oriented Architecture:
* Long version: An architectural style in which certain discrete functions are packaged into modular, shareable, distributable elements ("services"), which can be invoked by consumers in a loosely coupled manner.
* Shorthand version: SOA = modular + distributable + sharable + loosely coupled
You'll note that my three constraints defining WOA are simply my attempt to boil down REST. I thought long and hard about coining WOA rather than just adopting REST or "Web Architecture" (as in the Architecture of the World Wide Web Volume One). I felt REST was too caught up in religious debates, and Web Architecture would confuse people, since it was originally oriented toward user-to-system interaction, not system-to-system interaction.
Bottom line: I agree with the thrust of Sam's comment about hyperlinking ("The link is the glue that holds the web together"). While everybody agrees that XML is the best way to format information for SOA or WOA or whatever, it is dismaying to see how often designers fill that XML with "legacy" identifiers. I spend most of my time trying to convince SOA architects that XML formats should be filled primarily with URIs!
Recent Comments