Tuesday, December 11, 2007

From Blog to Book

I'd like to apologise for my lack of posts here over the past few months - here's the reason:


My co-author Carl and I have been beavering away on 'Lost In Translation' for the past eight months or so. Followers of this blog will notice that the core framework introduced in the 'LiT' book was first published on this blog

There'll be lot's of follow-on activities over the next 8-10 weeks – 'LiT' discussions and development will be reported on the LiT blogs.

Of course, I hope you'll read 'Lost In Translation' and and join in the discussion. As you can imagine, I'm pleased to see the thinking being taken forward. It just goes to show blogs can become books!

You can download a pdf of chapter one here.

Thanks goes to my fellow Services Fabric commentators, Sam and Adrian and to others from this blog community who provided practical examples for the book ( contributions are acknowledged in the book). - Thanks NG.

Sunday, July 22, 2007

Systems Thinking and the Web

This recent post on Sam Lowe's EA blog reminded me of some of the more significant books I've read over the past twenty years or so and how relevant much of the thinking is today. In particular, I've found a recurring resonance between the world of System Thinking, as described by Pirsig and Capra, with the world of the Web. Interestingly, I've found abstracting up to System Thinking (Chunking Up) has been extremely useful when assessing impact and potential of Web 2.0/3.0 technologies on the future direction of corporate IT and looking at both the softer interaction and harder transaction aspects of an overall information system.

When I reflect on it, however, the theme that I find most compelling, is the importance of human behaviour, social norms and planned and unplanned events to information systems. Moreover, how these aspects, if left unexplored, often become the barriers to adoption of IT-enabled change. What I find most interesting is the search for the sweet-spot between classical engineering approaches and the early examination of adoption barriers. It seems to me that some of the most successful Web-enabled businesses (the likes of Google, Amazon and eBay) have used an adoption-led approach to the development of products and services. Corporate IT, in contrast, often continues to take a more traditional approach to 'engineering' their way to a solution. Is this difference in approach where we might find the long-sought value within the enterprise from the world of the Web?

Here's a few of the most thought provoking 'Systems Thinking' books on my read list:

Lila: An Inquiry Into Morals by R.Pirsig

The Tao of Physics by F.Capra

The Web of Life: A New Scientific Understanding of Living Systems by F. Capra

The Labyrinths of Information: Challenging the Wisdom of Systems by C. Ciborra

Freakonomics: A Rogue Economist Explores the Hidden Side of Everything by S. Levitt and S. Dubner

Chaos by James Gleick

The Tipping Point: How Little Things Can Make a Big Difference by M. Gladwell

Digital Capital by D. Tapscott, D. Ticoll, and A. Lowry

The Self-Aware Universe by A. Goswami

Systems Methodology in Action by Peter Checkland

Systems: Concepts, Methodologies and Applications by Brian Wilson

Tuesday, February 06, 2007

Services Fabric and Data Management

Reflecting on the previous posts referring to events, content and semantics it's apparent to me that data management is ever more important in a world of services. Just because a database is buried deep behind a service interface doesn't mean we can ignore the basic principles of data management.

As we know semantics are critical at the service interface or the definition of an event, but how do we know that data passed through an interface is handled correctly? Given that we're moving to a service world in many cases by service enabling legacy applications we need to establish a framework for managing data across the service enabled landscape. We can not rely on a sea of services that are going to perform every validation for us - much of this will still be left embedded in applications. After all how would our services perform if every valdiation required a service invocation?

The framework needs to deal with:

Synchronisation (including translation) of content - ensuring that reference data or master data (not my favourite terms - see below) are up to date and distributed to where it's required when it's required. As above real time look up of content will not be performant in many situations. Therefore data needs to be 'cached' as part of the service implementation.

Synchronisation (including translation) of definition - as with any language, establishing a single dialect for the business and implementing it in its information systems is probably not a reality, especially when many system components are sourced from outside the enterprise and/or need to interoperate with customer and supplier services. Is Oracle's semantic model the same as SAP's?

Data (and service) ownership - as those that have tried will know, until this fundamental principle of data management is established many of the advertised benefits of service orientation will remain elusive. Unless ownership of data and associated rules are established multiple definitions and implementations will remain along with multiple service implementations performing similar functions.

As mentioned above these are the basic principles or needs of enterprise data management. However, apart from a few execution tools aimed at areas such as master data manaagement and canonicals I see very little discussion on this aspect of the services fabric. Of course this may be limited to whether SOA is treated as an IT or Business issue. The development and management of business ontologies has to be a cornerstone for establishing true SOA.

In this vein, what is the collective for the 'things' the business cares about (e.g. orders, customers, accounts)? Objects? Entities? Types?

(Note: Reference data or master data are not my favourite terms as these terms appear to lump in to one bucket what are probably a number of critical subject areas that define the enterprise. Indeed, MDM appears to be an IT persons response to the problem when of course managing information about the basic assets of the organisation is a business problem, requiring ownership and process.)