This started with my preparing a plenary keynote for the World Congress of IT, or WCIT, that I am delivering tomorrow. The theme calls for a new partnership between government and business in terms of the provisioning and use of technology in the creation of the emerging society we see today. It’s long been a theme of mine at government, or EU, events that what we need to focus on is not eGovernment, but eCitizens. It’s not about delivering the IT processes of government today over the Web with citizen access, but rethinking how a citizen will want to run their relationship with their elected government. In short this is ‘government for the people’, though not as the saying continues, ‘by the people’, that seems a step too far currently!
Another way of putting this is ‘user driven services’ which makes it recognisable as the old cry for alignment between business and IT. However the contrast between eCitizens and eGovernment is a particularly easy one to see as a use case for the complexity and scale of the change we are approaching. An eCitizen is going to expect a unique and individual outcome to their requirement that combines any number of government departments and services (meaning business capabilities) together as a delivery. I.e. a severe illness in the family requiring care cumulating in death with all the complex issues of registration, tax, inheritance, etc. By contrast a government will be driven by auditable processes each separate in administration and consequences, which, if mixed might produce wholly unforeseen tax or social payment outcomes to say nothing of muddled responsibilities.
Obviously society is complex and therefore will have complex systems, a topic that has, and continues to occupy a great deal of academic research time. The most famous quote about complex systems comes from Aristotle who said that “the whole is more than the sum of its parts”. Complex systems are systems where the collective behaviour of their parts entails the emergence of properties that can hardly, if not at all, be inferred from properties of the parts. Well that’s probably what a politician would like to think that they can create with eGovernment, or a CEO wants to get out of their business through leveraging core competencies. So in both cases the requirement top down is the same, and the expectation is that technology is going to provide the answer via the IT department.
Enterprise architecture, and EAI middleware, is not likely to be the answer to this, instead we should be looking at provisioning through using the granularity of ‘services’ as opposed to the monolithic approach of applications. Actually it’s not one or the other, it’s both used together. The goal is to introduce an abstraction layer between the core processes represented by applications connected together through closed coupled middleware in defined relationship, and the loose coupled environment of services with the flexibility of orchestrations. At least in part the ability of drag and drop tools to produce orchestrations ‘on-demand’ starts the change towards user-driven views on ‘outcomes’ that suit them rather than the computer’s database.
In reality we are talking about being driven by solutions and that in turn means solution architecture, but what does that mean in this new environment? For me this introduces complicated models, and principles, which are wholly different to complex models. The Cynefin Framework offers a method of understanding and analysing complicated issues. Created in 1999 as a way of relating knowledge management to business use, it has been extensively developed over the years by both business schools and leading technology providers including IBM, Microsoft, and Oracle. (I recommend architects who want to start to think about this new area to read it). It states that complicated systems are defined as those in which the relationship between cause and effect requires analysis, and/or the application of expert knowledge with an approach of sense, analyse, and respond to create good practice. In contrast the complex systems definition says that the relationship between cause and effect can only be perceived in retrospect, and not in advance, requiring probe, sense, respond to recognise emergent practice. (Think of it as the approach to a public beta release of software).
To get a good picture on this whole topic then I recommend Harold Jarche’s blog on ‘the collapse of complicated business models’, which is itself a reply to a Clay Shirky blog entitled ‘the collapse of complex business models’. If all of this seems too much to be bothered with then can I remind you of the similar situation in the mid nineties and the calls for an approach that we now know of as enterprise architecture? At the time this was scoffed at as unnecessary and the founding father of modern enterprise architectural principles was perceived to be making complex theories that weren’t needed!