Information vs Behaviour
I read a couple of chapters of two different books recently:
- Ch.5 of O’Reilly’s “Beautiful Architecture“: Resource-Oriented Architectures: Being ‘In The Web’ by Brian Sletten
- Ch.1 of Manning’s “SOA Patterns“: Solving SOA Pains With Patterns by Arnon Rotem-Gal-Oz, Eric Bruno, and Udi Dahan (from a free online Early Access Program)
In these chapters, there were points made that stood out for me and underlined the fact that the two approaches of Resource Oriented Architecture (ROA) and Service Oriented Architecture (SOA) are mostly diametrically opposed, along the axes of information and behaviour.
I’ve been saying for a while, and indeed recently, that the data in an enterprise is a key asset of any corporation, and should be treated as such. Information should be secure, available, and above all addressable. As Brian says:
“We like giving names to things because we are fundamentally name-oriented beings”
Information elements should be first class citizens on the web, not relegated to anonymous lumps of data only accessible indirectly through opaque service endpoints. Those IT departments that enable uniform, transparent, controlled and consistent access to a corporation’s data, especially across a complex system landscape, are the ones that are in line to give their business the greatest benefit.
So it was with great delight (and fervent agreement) that I read, in “Beautiful Architecture”, Brian’s eloquent description of how the IT industry uses
“the wrong abstractions internally, overemphasising our software and services and underemphasising our data”
and proceeds to describe how an information centric approach is more appropriate.
Then, only a day later, I read, in “SOA Patterns”, about the challenges of SOA — in particular:
“how do you solve the BI / SOA impedance mismatch of getting a centralised view of the data in an architectural style that encourages encapsulation and privacy?”
Impedance mismatch! Yes, my point entirely!
The behaviour-focused approach of SOA, diametrically opposed to the information-focused approach of ROA, is a natural barrier to leveraging an enterprise’s key asset — information, and in this case Business Intelligence.
Excellent points here. I’m battling this myself with an IA for a MOSS system, internally with myself and with peers.
Which comes first, The information or the architecture? I have been focusing on designing from the Task up. People use a system to achieve something, not find out something. A task oriented architecture, if you will.
Gerry McGovern says it quite well here – http://giraffeforum.com/wordpress/2009/06/14/information-is-a-task/
I’ll be subscribing. Keep posting.
Regards,
Tomas
Tomas, thanks for the comment. Interesting reading on “Information is a task”. I’m not sure I entirely agree with what is said in that article; I think there’s some conflation of levels (task, information, technology), which is part of the confusion, IMHO.
Information orientation doesn’t just solve “finding out”. To put it another way, there’s more to manipulating resources than GET
Regards
DJ
[...] via @qmacro http://www.pipetree.com/qmacro/blog/2009/06/information-vs-behaviour/ – you have been saying it for a long time [...]
Nice distinction here DJ
Though I’d like to think that the BI challenges of SOA can be solved (see for example an article I wrote for InfoQ on that http://www.infoq.com/articles/BI-and-SOA )
Arnon
[...] and data as resources in a uniform and controlled way. Each piece of data worth talking about is a first class citizen on the web; that is, each piece of data is a resource, and has a [...]